2012-08-31 2 views
2

Vous connaissez tous la valeur layerDepth de l'appel spriteBatch.draw(). J'utilise des vecteurs 3D pour mon jeu 2D. Est-il possible d'obtenir le layerDepth comme valeur z dans le vertex shader? Ou puis-je appeler la fonction draw avec des vecteurs 3d?XNA SpriteBatch.Draw 3D Vectors HLSL

J'ai besoin de la profondeur d'une image-objet pour le post-traitement.

Répondre

0

Oui, le layerDepth est passé comme la position Z de chaque sommet.

Normalement, il existe une limite de plage comprise entre 0 et 1 pour ce paramètre. Bien que je pense que cela est uniquement dû à la position des plans proches/éloignés de la matrice de projection par défaut SpriteBatch. Donc, cela pourrait ne pas s'appliquer à vous - je ne pense pas que les valeurs soient bloquées ou quoi que ce soit.