2010-08-26 11 views
1

Je suis nouveau sur opengl-es sur android et j'ai du mal à comprendre le concept de la texturation.Texture de la bande triangulaire de l'atlas Opengl ES

Je cherche à produire un tilemap de différentes textures de différence. Je comprends qu'il est préférable d'utiliser un atlas de toutes les textures combinées, donc je ne le répète pas à plusieurs reprises. Cependant, je ne sais pas trop comment ensuite mapper ces textures sur mon tilemap.

Je comprends le processus de sommets specifiying et coordonnées puis où sur la carte de texture Je veux les prendre (i dessiné une image aussi!)

Click for image - curse newbies not allowed to post images :(

Mais ma question est ce que je peux tirer une bande triangulaire qui est, en effet, plus longue qu'une "tuile", mais mappe une zone différente de la texture sur cette "tuile". Donc, au lieu de dessiner une bande triangulaire prétendant être un quad, une à la fois pour chaque tuile, puis-je en quelque sorte dessiner une rangée entière de la tilemap (comme 1,2,3,4 et astucieusement déplacer autour de la texture coordonnées donc chaque "tuile" est maintenant à partir d'une zone différente de la texture? Ainsi, par exemple, je dessine une bande de triangle 4 longs carreaux, mais déplacez les coordonnées de texture de sorte que la première "tuile" est le jaune de ma texture ... troisième bleu ... etc

Si je ne l'ai pas moi-même expliqué trop d'excuses!

Il pourrait être simplement que ce n'est pas possible et je dois tirer chacun individuellement qui semble comme je l'ai sauvé effort avec un atlas, puis a dû dessiner tous dehors lentement malgré tout. Hmm.

Répondre

0

Bien sûr, il vous suffit d'ajuster les coordonnées de texture, c'est ainsi que fonctionnent les atlas de texture.

+0

Même si je dis dessiner une bande de disons 10 sommets faisant 4 carreaux où évidemment les carreaux qui touchent partagent des sommets? Pouvez-vous utiliser plusieurs coordonnées de texture pour le même sommet? De toute façon, je vais donner ce que je veux faire un essai et j'espère que cela va fonctionner, sinon je serai de retour! – iexus

+0

Non, mais vous pouvez dupliquer des sommets et utiliser des triangles dégénérés afin de ne pas avoir à redémarrer la bande. –

+0

Merci pour le conseil! J'étais désorienté par ce que tu voulais dire par là. J'ai été absent pendant quelques jours et je suis juste revenu, je me suis assis et j'ai * compris * Je pense avoir compris ce que vous vouliez dire. Il est temps de coder! – iexus

Questions connexes