2012-10-29 11 views
7

Sto tentando di creare un motore di tile utilizzando un pixel shader e due texture. Una texture terrà il tileset e una la mappa.Posso creare un motore di tile in un pixel shader?

È possibile leggere i dati di trama come dati effettivi (non campionati) in modo da poter estrarre gli indici dalla mappa?

Qual è il modo migliore per leggere i dati dei pixel?

Ho provato solo text2D ma ciò lascia a desiderare (sono un po 'nuovo per i pixel shader, ad essere onesti).

Fondamentalmente, ho bisogno di un modo per leggere i dati effettivi da un pixel specifico nella texture della mia mappa e usarli come indice intero nella trama delle tessere. Supponiamo di essere riuscito a creare e passare le trame appropriate allo shader.

Qualche idea?

(usando monogame per metro 9_1 livello in modo da dx)

risposta

0

Se si utilizza tex2D e passare in (x + 0.5)/width e (y + 0.5)/height, si dovrebbe ottenere il valore esatto del pixel a (x, y). Maggiori informazioni qui: Texture memory-tex2D basics

Problemi correlati