2010-11-25 4 views
2

J'essaie actuellement de montrer une série d'images qui diffèrent légèrement les unes des autres dans une vue 3D, et qui contiennent beaucoup de zones transparentes (par exemple, des points qui se déplacent dans le temps à l'intérieur d'un rectangle, et je fournirais une vue 3D avec toutes leurs positions au fil du temps). Ce que je fais maintenant est de générer une image avec les points dessinés, créer une boîte de 40x40x1 par image (ou une forme rectangulaire de 40x40), appliquer l'image comme une texture sur le côté FRONT de la boîte, et ajouter le cases à mes scènes aux positions (0, 0, z) où z est le numéro de la trame. Cela fonctionne plutôt bien, mais bien sûr, il y a des discontinuités (de 1 "mètre") entre les images.Comment extruder une forme en un volume

Je voudrais savoir si c'est un moyen de créer un objet "extrusion" basé sur cette image afin de remplir l'espace entre les plans. Cela équivaudrait à créer une boîte 1x1x1 pour chaque point, en les plaçant à (x, y, z) où x/y sont les coordonnées du point et z le numéro d'image. Le vrai problème est que j'ai beaucoup de points (plusieurs centaines, sinon des milliers dans certains cas), et ce qui était relativement facile à gérer et à restituer avec une image deviendrait, je pense, assez lourd à calculer si je devais créer des milliers des boites.

Merci d'avance pour votre aide,

Frederic.

Répondre

0

Vous pouvez utiliser du texte 3D avec vos données (40 x 40 x N) pixels, N = nombre de trames.

Mais vous devez toujours dessiner quelque chose avec cette texture activée.

Je ferais ce que vous faites actuellement - dessiner des quads, mais pas seulement le long de l'axe Z, mais aussi le long de X et Y. Chacun des N quadrilatères le long de l'axe Z aurait une taille de 40x40, chacun des 40 quadruples le long de l'axe X aurait une taille de 40xN, et chacun des 40 quadruples de l'axe Y aurait une taille de Nx40. Donc, pour le texte 2x2x2, nous dessinerons 2 + 2 + 2 = 6 quads, et cela ressemblera à du cube régulier, pour des points 3x3x3, nous dessinerons 3 + 3 + 3 quads, et cela ressemblera à 8 cubes empilés dans un gros cube (donc au lieu de 8 cubes 6 quads chacun nous ne faisons que 9 quads, mais l'effet est le même).

Pour 40x40x1000 ce serait 1080 quads (raisonnable de dessiner en temps réel imho) au lieu de 40 * 40 * 1000 * 6 quads.

Je ne sais pas, si l'effet graphique serait exactement ce que vous vouliez atteindre.

+0

Je n'ai pas regardé cette partie de mon programme depuis quelques mois, puisque je devais travailler sur des parties plus importantes. Je vais essayer dès que possible, mais je ne sais pas si ça va me suffire ... – Goulou

+0

Faites-moi savoir si ça va marcher, je suis curieux. Le meilleur serait la capture d'écran :) – ajuc

Questions connexes