Come posso creare un effetto "cielo notturno" in OpenGL?


10

Sto creando un gioco usando OpenGL e voglio rendere l'effetto di un cielo notturno con alcune stelle.

Voglio avere un effetto nero lucido nel cielo in modo che appaia bene. Qualcuno potrebbe aiutare a come procedere attraverso di esso o fornire un collegamento a un buon tutorial?

Risposte:


11

Approcci tipici sono skybox o skydomes . Entrambe le tecniche prevedono la creazione di una geometria semplice che viene sempre renderizzata in una posizione fissa rispetto alla vista e l'applicazione di una trama ad essa. La qualità dell'effetto risultante può dipendere fortemente dalla qualità delle texture, quindi se non hai grandi capacità artistiche potresti voler optare per qualcos'altro. Strumenti come Terragen possono aiutare a produrre arte decente, e questa domanda ha una serie di collegamenti ad altri strumenti di natura simile.

Un approccio meno evidentemente dipendente dall'arte è quello di fare tutto proceduralmente. Puoi creare uno skydome basato sul colore dei vertici ( link e informazioni qui ) che ti permetterà di regolare i colori secondo alcuni modelli empirici (o altri) per la colorazione del cielo - Il modello di Preetham e Shirley è particolarmente bello , se ricordo bene.

È quindi possibile applicare la generazione procedurale di campo stellare che si esegue il rendering vicino alla cupola del cielo (forse come un sistema a particelle fisse o tramite splatting delle trame o altro).

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.