Question

Dans openGL, j'ai un objet que j'échelle par -1 le long d'un axe ... ce résultat dans l'objet ne le rendu correctement parce que toutes les faces avant sont maintenant face arrière. Court de désactiver l'abattage, comment pourrais-je obtenir cet objet pour rendre droit? Est-il possible de le faire sans modifier les sommets normaux texture qui composent mon modèle?

Était-ce utile?

La solution

Vous pouvez simplement changer le mode d'abattage. Vous pouvez utiliser glCullFace(mode) pour décider quels triangles doivent être réformées. La fourniture d'un paramètre de moyens de GL_BACK qui sont rendus polygones uniquement orientés vers l'avant, tandis qu'un paramètre de moyens GL_FRONT qui sont rendus polygones uniquement face masquée. Donc, si vos moyens de transformation que la « face masquée » polygones sont en fait frontfacing, appelant glCullFace(GL_FRONT) devrait faire l'affaire.

Comme alternative, vous pouvez également contrôler les polygones sont considérés comme avant / face masquée à l'aide glFrontFace(dir), avec un paramètre de GL_CW (sens horaire) ou GL_CCW (à gauche) (valeur par défaut est anti-horaire, donc si vous réglez sur les polygones de clocksie face masquée originaly serait considérée comme frontfacing).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top