Post

Visualizzazione dei post con l'etichetta Draw

Hello world - Rimozione delle superfici nascoste - Appunti

Rasterization -  HSR descrivere il problema ed elencare le strategie e quindi gli algoritmi La computazione avviene in aritmetica intera, e le operazioni sono “per pixel” (pixel bound). Non tutti i poligoni sopravvissuti, però, devono essere disegnati. Alcuni possono non essere visibili dall’osservatore perché nascosti (totalmente o parzialmente) da altri poligoni. • Problema: dati un insieme di poligoni in 3D ed un punto di vista, si vogliono disegnare solo i poligoni visibili (o porzioni di essi). Ogni poligono si assume essere piatto ed opaco. • Vi sono essenzialmente due approcci: – object-precision: l’algoritmo lavora sui poligoni stabilendo relazioni di occlusione reciproca. Il costo `e quadratico nel numero dei poligoni. Però la precisione `e elevata (precisione macchina). – image-precision: l’algoritmo stabilisce occlusioni a livello del pixel. `E più veloce ma la precisione `e limitata. • La rimozione delle superfici nascoste (Hidden Surface Removal, HSR) vien...

Hello world - La struttura classica di un videogame

Senza addentrasi nello specifico di singoli progetti, per i quali potrebbero essere necessarie strutture alternative se non completamente personalizzate, vorrei descrivere in breve quelle che sono le componenti frequenti che si possono trovare in un videogame. Nota. I post successivi che tratteranno questo argomento avranno come parola chiave “Struttura”, detto ciò: Benvenuti in struttura! Supponiamo di avere una classe principale che gestisca la logica del gioco, chiamiamola MainGame. Questa avrà i metodi: Initialize() {         Crea, Carica, Istanzia e Configura tutti gli elementi del gioco (Personaggi, Grafica, Audio, Stato di Gioco)         Può essere strutturato come un insieme di chiamate a metodi Initialize() o Load() degli elementi detti sopra.         Quando tutto è pronto lo notifica o avvia direttamente il fase di gioco. } La fase di gioco si p...