Tesi Robotica Analisi, progettazione e implementazione... | Page 181

i i “LP_Tesi” — 2013/10/17 — 18:27 — page 181 — #181 i 8.2. IMPLEMENTAZIONE i 181 La mesh è costituita da una strip di triangoli (Fig:), ovvero una serie di triangoli messi uno di fianco l’altro per formare una superficie, in genere le strip vengono utilizzate per creare mesh lunghe ma sottili, in questo caso utilizzando un accrocco è stato possibile generare una superficie di qualsiasi proporzione. Come Figura 8.2.1: Triangle Strip è immaginabile non è possibile generare un superficie regolare con una strip di triangoli perché ogni volta che un nuovo vertice viene posizione i precedenti due debbono esservi collegati impedendo di fatto la formazione di griglie con angoli retti, per questo motivo si è deciso di utilizzare dei triangoli “lineari”, ovvero triangoli i cui vertici giacciono su di una sola linea. Questi triangoli posizionati nei punti limite permettono di creare angoli retti, per capire meglio lo schema formato si guardi in Fig:8.2.2 nella quale i triangoli “lineari” sono evidenziati di rosso. Una volta definiti i vertici è necessario definire i triangoli attraverso una serie di indici, ritornando all’esempio di Fig:8.2.2 è possibile notare come una serie di triangoli sia formata dai vertici: (0,4,1), (4,1,5), (1,5,2), (5,2,6), (2,6,3), (6,3,7), a questo punto si definisce (3,7,11) il primo triangolo lineare che consente di poter continuare il disegno della superficie alla riga successiva ma nel senso contrario con il triangolo (7,11,6). Utilizzando la codifica richiesta da OpenGL per la specifica degli indici dovrà essere quindi passato un vettore nella 0 1 2 3 4 5 6 7 8 9 11 12 13 14 15 16 Figura 8.2.2: Esempio 4x4 pixel i i i i