Ho una serie casuale di EdgeShapes, come mostrato qui:Come generare trame per adattarsi alle forme?
La mia domanda è: come posso riempire quell'area fondo con una texture in modo da far sembrare il terreno?
Ho una serie casuale di EdgeShapes, come mostrato qui:Come generare trame per adattarsi alle forme?
La mia domanda è: come posso riempire quell'area fondo con una texture in modo da far sembrare il terreno?
Come suggerito da qualcuno in IRC:
Creare un polyon utilizzando OpenGL e poi sulla mappa 1: 1 sulla forma e la consistenza Box2D il poligono.
Dalla memoria antica, e guardando il codice, questo non può essere fatto con le forme degli spigoli. Puoi incatenarli insieme, ma anche in questo caso non c'è autocollisione, che consentirebbe alla forma di sovrapporsi a se stessa e di essere. . . che cosa? Non ci sono normali creati, né centroide.
Questa è solo una supposizione: è passato un po 'di tempo da quando usavo box2d - ma puoi creare un poligono? Dovresti prima creare il numero N di punti in una matrice, e usare quella matrice come valori y nella parte superiore per simulare il terreno. Quindi si renderebbe il valore y di ciascun punto uguale al valore y del punto adiacente (a sinistra oa destra) nel tempo. Quando i punti raggiungono la fine, vengono spostati dall'array e un nuovo valore viene spostato sull'altra estremità dell'array.
Questo può essere fatto e influirebbe negativamente sui punti di contatto con altri oggetti?
Ciao! Voterò e condividerò se potessi fornire un esempio su questo. – Kimi
Non sono sicuro di come farlo da solo, ma creerei una forma OpenGL allo stesso tempo in cui crei la forma di box2D e le diamo le stesse variabili. – Derek