Uno ha bisogno di normali per un gioco rigorosamente 2d?


8

Sto iniziando a imparare OpenGL creando un gioco 2D puro.

Devo decidere il formato dei Vertici. Ho bisogno di un componente normale? O questo non è necessario per un componente 2d?

Il mio istinto dice che non ne avrò bisogno poiché tutto è piatto. Ma forse ne ho bisogno per qualche shader o altre cose che non vedo ancora.

opengl  2d  normals 

Risposte:


9

Uno ha bisogno di normali per un gioco 2D? No. Non hai nemmeno bisogno delle normali per un gioco 3D se non ti preoccuperai dell'illuminazione. Tuttavia, le normali e l'illuminazione possono essere applicate ai giochi 2D. Lo fai in un modo diverso. Invece di definire esplicitamente un vettore normale 3D che si allinea con il vertice, è possibile definire una mappa normale che si allinea con la grafica 2D. Ciò ti consente di avere un'illuminazione incredibilmente epica anche in un gioco 2D .


4

A rigor di termini, il componente normale verrà ignorato se hai spento l'illuminazione. Se sei in grado di scrivere i tuoi shader in qualsiasi lingua / toolkit stai usando, puoi essere assolutamente sicuro che non vengano utilizzati.


Se spengo l'illuminazione, posso ancora usare i colori sui miei vertici, giusto?

Dovresti essere in grado di farlo sì, purché tu abbia abilitato glEnableClientState (GL_COLOR_ARRAY) (ricordati di disabilitare GL_NORMAL_ARRAY)
Luther,

1

Non hai bisogno di normali a meno che tu non stia facendo simulazioni di illuminazione. Sono abbastanza banali da aggiungere quando ne hai bisogno, rispetto alla reale difficoltà di scrivere shader di illuminazione.


1

Se stai disegnando i tuoi triangoli in uno spazio 3D e poi visualizzi tutto dal lato per farlo sembrare 2D (che è quello che dovresti fare), allora avrai bisogno di normali per poter disegnare luci sopra i tuoi quadricipiti.

Se non accendi nulla, non avrai bisogno delle normali.

La mia raccomandazione da quando stai ponendo questa domanda, è di omettere le normali per ora, indipendentemente da quali siano i tuoi piani in seguito. Non sarà difficile aggiungerli in seguito se ne hai bisogno.


0

Solo tu sai se avrai bisogno di normali in un gioco 2d. Potrebbero avere senso: DOOM, ad esempio, aveva normali anche se era un gioco 2d (sì sì, sembrava piuttosto 3d, ma tecnicamente era ancora un gioco 2d).

Una buona ragione per avere normali in un gioco 2d sarebbe quella di essere in grado di controllare se sei dentro o fuori da una forma. Può anche accelerare la risposta alla collisione del muro (conoscendo la direzione per spingere gli oggetti fuori dal muro).

Non c'è motivo di dare le normali a OpenGL o qualunque pacchetto di rendering si usi se non ne ha bisogno per nulla (come l'illuminazione praticamente tutti gli altri hanno sottolineato).


-1

Che tipo di gioco è? Se hai una prospettiva dall'alto verso il basso, le normali potrebbero tornare utili per muovere i tuoi personaggi (sai, cambiando posizione lungo la normale direzione del personaggio)

Le normali sono utili anche per una vasta gamma di comportamenti di guida. Ma un link dice più di mille parole: http://www.red3d.com/cwr/steer


Abbastanza sicuro che l'OP stia specificamente chiedendo informazioni sui normali per i verts. Non parlando di vettori di velocità e quel genere di cose.
Tetrad

Abbastanza sicuro che l'OP stia specificamente chiedendo informazioni sui normali o (inizio citazione) altra cosa che non vedo ancora (fine citazione) ...
HumanCatfood
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.