2009-11-03 8 views
1

Je travaille sur un jeu 3D juste pour apprendre.Dessin d'un cercle de ciblage dans une application 3D

J'ai un monde 3D généré à partir d'une carte de hauteur et de divers objets à mailles superposés sur ce monde. Je veux que le joueur soit capable de cibler des objets dans le monde que je peux faire, mais je veux dessiner un cercle de ciblage sur le terrain ou l'objet sur lequel se tient la chose ciblée. Si vous avez joué à World of Warcraft, vous saurez ce que je veux dire, quand vous ciblez quelqu'un, il dessine un cercle rouge sur le sol en dessous d'eux.

Mais il est projeté sur tout ce qu'ils sont debout. Ce qui pourrait être le terrain - et pourrait donc avoir besoin de projection sur différents polygones de mailles avec des pentes différentes, une partie du cercle sur une partie et de l'autre sur l'autre. Ou peut-être besoin de projeter sur un objet. Ou peut-être part sur une et une partie de l'autre.

Des idées pour le faire efficacement? Cheats et approximations sont les bienvenus aussi, comme d'habitude dans les jeux que je cherche quelque chose semble efficace plutôt que 100% d'exactitude. En utilisant directx9 et shader model 2, si cela est important pour toutes les solutions, utilisez

Répondre

1

Une bonne approche consiste à utiliser une source lumineuse. De manière simpliste, mettez un contact sur l'objet que vous souhaitez mettre en évidence et laissez le reste à l'ombre.

Calculatrice coûteuse, mais en termes de programmation, il suffit d'utiliser les fonctions d'éclairage dans votre kit d'outils Direct3D de votre choix.

+0

J'ai vraiment besoin d'une texture à projeter mais c'est une bonne réponse – jcoder

Questions connexes