Je trouve que j'apprends mieux par exemple. Existe-t-il un bon site Web ou de la base de code qui montre comment la manipulation des événements, la détection de collision, la modélisation et le dessin de base 3D fonctionne? P>
Le jeu que j'essaie de commencer est un jeu de course simple où l'utilisateur contrôle un petit navire spatial et navigue à travers des canaux, des champs astéroïdes, des colonies spatiales et divers autres obstacles (je connais, d'origine réelle). Le mouvement est en 3 dimensions. Le jeu devrait savoir quand la navette frappe un obstacle. Voilà sont em> pistes définies car il y a dans la plupart des jeux de course (circuits et chemins linéaires). p>
Appuyez sur la touche fléchée pour faire pivoter le vecteur de direction de manière appropriée. En outre, le navire doit utiliser quelque chose comme un après-brûleur lorsque l'utilisateur appuie par exemple la barre d'espace, par exemple. Mouvement de haut en bas est également une option. P>
11 Réponses :
Ne pas connaître votre niveau de compétence initial, je vous suggère de jeter un coup d'œil à ogre3d . Il s'agit d'un moteur de rendu 3D complet qui possède une interface vraiment propre pour fonctionner, facile à prolonger et le meilleur de tous, c'est assez multiplateforme fonctionnant sur Windows, Linux et Mac OS X. Les exemples et les didacticiels fournis sont assez expliqués. < / p>
Si vous souhaitez écrire votre propre moteur OpenGL uniquement à partir de zéro, Ogre3D peut ne pas être le chemin de suivi ... P>
Si vous voulez apprendre OpenGL, je vous recommande de commencer par " OpenGL Red Book " , puis en regardant échantillons de Nehe . Le livre rouge est libre au moins dans le format HTML en ligne, il existe également des PDF téléchargeables autour.
Cependant, Red Book and Nehe vous apprendra principalement à utiliser OpenGL; Les jeux d'écriture sont de l'art, et il y a beaucoup trop à expliquer, beaucoup trop à apprendre, et beaucoup trop à lire à ce sujet. Voici juste une pointe. P>
Ceci est la structure de base de la plupart des jeux. Espérons que cela aide avec les bases. Bien sûr que ce n'est pas un jeu complet, ne fonctionnera pas et dépend fortement de la façon dont vous faites des choses, mais cela devrait vous donner une idée de base. p>
Je ne sais pas combien d'expérience de programmation de jeu que vous avez, mais je commencerais avec quelque chose d'un peu plus limité. P>
Commencez par un jeu de carreaux 2D (Sokoban, etc.) - ils sont relativement faciles à écrire - quelque chose où les objets sont toujours exactement sur une tuile, qui rend les choses assez triviales. P>
Une fois que vous avez les principes de cette, la boucle de jeu, la synchronisation, le traitement des entrées utilisateur, le modèle de données, le rendu, etc., vous pouvez faire quelque chose de plus impliqué. P>
Ensuite, vous pouvez essayer quelque chose comme des "astéroïdes" qui aura besoin de mathématiques de vecteur 2D, modèle d'intertia (c'est-à-dire intégration) éventuellement un peu de trigle. et un système de collision basé sur des carreaux. P>
Une fois que vous avez léché, vous pouvez essayer quelque chose 3D - ce qui rend les choses plus compliquées à nouveau, maths-sage. P>
Je regarderais autour de www.gamedev.net , il contient des excellents tutoriels Pour les débutants et dans les forums, vous trouverez une grande information sur tout sujet lié à la programmation des jeux. P>
Quelques notes, dont certaines ont déjà été déclarées: p>
Le développement du jeu est une énorme discipline multiforme. Il est difficile même si vous avez des compétences de mathématiques et de programmation très solides. P>
Deux conseils: P>
Oui, recherchez des tutoriels en ligne. Oui, traînez à gamedev.net. Oui, Nehe est confus et spécialisé. P>
Pour OpenGL, je combinerais le Capacité de OpenGL SuperBible à en faire un conscience du contexte et Possibilités de OpenGL avec une bonne recherche Google à l'ancienne. P>
Cela aide également à connaître quelqu'un qui peut vous aider de temps en temps. GameDev.net a des salles de discussion et les gens sont sympathiques. P>
Tout d'abord, vous devriez penser à la structure de votre code. Chaque match a déjà une variation des éléments suivants:
int main() { Screen::Init(); Game::Init(); while (Game::isrunning) { Game::Update(); Screen::Render(); } Game::Shutdown(); return 0; }
Si vous voulez OpenGL mais avec la simplicité de Python - qui pourrait être agréable de comprendre le principe de l'API au début - consultez les wrappers: http://pyopengl.sourceforge.net/ p>
Ils sont compatibles avec la dernière version de OpenGL et leur développement est assez actif. p>
Je dois faire un avertissement pour utiliser Nehe parce que beaucoup de gens l'ont recommandé. (Vous n'avez pas de compte pour faire des commentaires, désolé) p>
Principalement parce que cela ne montre que comment faire des choses avec le pipeline fixe au lieu des shaders. Les premiers couple de tutoriels pourraient être oks pour obtenir un kickstart de comment obtenir quelque chose à l'écran. Mais ne perdez pas votre temps avec, par exemple, apprenez à activer l'alpha mélange et à la configuration de l'éclairage pour le pipeline fixe, car si vous voulez faire quelque chose qui ne ressemble pas à un jeu de 1999, vous devrez releverner comment faire Tout ce genre de choses encore mais avec des shaders. Mieux vaut apprendre la nouvelle façon de l'imo de début. P>
Premièrement, je ne recommande pas d'utiliser OpenGL pour votre premier match, surtout si vous n'avez jamais programmé auparavant. Vous devez considérer vivement les méthodes plus récentes et plus faciles comme XNA avec C #. P>
Deuxièmement, comme OpenGL, XNA dispose également d'un grand nombre de tutoriels sur Internet, ce qui, je crois, vous trouverez très utile. P>
Si vous n'avez jamais fait de programmation auparavant, je vous recommande comme un projet de départ, vous devriez essayer de créer un jeu très simple comme Pong ou Tic Tac Toe. Je pense que vous aurez une bonne idée du développement de jeux en général. À partir de là, vous pouvez commencer votre projet réel de l'expérience que vous avez gagnée en créant des pong. P>
Enfin, le principal conseil que je peux vous donner comme vous l'aventure sur votre quête est de ne jamais abandonner quels sont les obstacles auxquels vous êtes confrontés à la création de votre jeu. P>
bonne chance! ^^ p>
Avez-vous déjà Google pour "OpenGL Tutorial"?
@Jesper il n'a probablement pas mais j'ai déjà Google pour "jeu facile à OpenGL" et est venu ici.