Je commence à apprendre OpenGL en créant un jeu 2D pur.
Je dois décider du format des sommets. Ai-je besoin d'un composant normal? Ou est-ce pour un composant 2D non nécessaire?
Mon instinct me dit que je n'en aurai pas besoin car tout est plat. Mais peut-être que j'en ai besoin pour un shader ou autre chose que je ne vois pas encore.
Vous n'avez pas besoin de normales, sauf si vous faites des simulations d'éclairage. Ils sont assez simples à ajouter une fois que vous en avez besoin, par rapport à la difficulté réelle d'écrire des shaders d'éclairage.
la source
Si vous dessinez vos triangles dans un espace 3D, puis que vous visualisez tout de côté pour lui donner un aspect 2D (ce que vous devriez faire), vous aurez besoin de normales pour pouvoir dessiner des lumières par-dessus vos quads.
Si vous n'éclairez rien, vous n'aurez pas besoin de normales.
Ma recommandation puisque vous posez cette question, est d'omettre les normales pour l'instant, quels que soient vos plans plus tard. Il ne sera pas difficile de les ajouter plus tard si vous en avez besoin.
la source
Vous seul savez si vous aurez besoin de normales dans un jeu 2d. Ils peuvent avoir un sens - DOOM, par exemple, avait des normales même si c'était un jeu en 2d (oui oui, il avait l'air assez 3d, mais techniquement c'était toujours un jeu en 2d).
Une bonne raison d'avoir des normales dans un jeu 2d serait de pouvoir vérifier si vous êtes à l'intérieur ou à l'extérieur d'une forme. Il peut également accélérer la réponse aux collisions avec les murs (connaître la direction pour pousser les objets hors du mur).
Il n'y a aucune raison de donner les normales à OpenGL ou à tout autre package de rendu que vous utilisez s'il n'en a pas besoin pour rien (comme l'éclairage à peu près tout le monde l'a souligné).
la source
De quel genre de jeu s'agit-il? Si vous avez une perspective descendante, les normales peuvent être utiles pour le mouvement de mitraillage de vos personnages (vous savez, changer de position le long de la normale de la direction dans laquelle le personnage fait face)
Les normales sont également utiles pour toute une gamme de comportements de pilotage. Mais un lien dit plus de mille mots: http://www.red3d.com/cwr/steer
la source