3 déc. 2011

Escape from OpenGL

En voici un jeu de labyrinthe 3D bien avec un code bien documenté. L'objectif comme le nom du jeu l'indique c'est de s'échapper du labyrinthe pendant un temps limité à l'aide d'une vue radar. La sortie du labyrinthe est indiquée par un point vert sur la carte.
Techniquement les librairies utilisées sont OpenGL/Glut pour le moteur 3D, Irrklang pour le moteur audio. Les modèles 3D ont été créés avec l'outil Google Sketchup.

Téléchargements

12 juin 2011

Importer un modèle 3D avec GLM

Dans le développement 3D on se doit d’avoir un moyen simple pour créer des modèles. Actuellement l’application Google Sketchup est une solution gratuite vous permettant de créer rapidement des modèles 3D. Mais il est aussi important de pouvoir charger votre modèle dans un programme OpenGL sans se préoccuper de la forme de chaque objet et des caractéristiques matérielles.
J’ai passé des jours et des nuits à Googler sur Internet pour des éclaircissements sur l’utilisation de GLM mais rien ne répondait complètement à tous les problèmes de compilation.
Dans ce tutoriel, je vais vous montrer la démarche à suivre pour charger votre modèle créé sur Sketchup dans OpenGL en utilisant VC++ Visual Studio 2010.

GLM est une bibliothèque qui a été fourni dans le dossier des exemples de la distribution source de GLUT. Fondamentalement, il lit un modèle OBJ et sait comment le dessiner sur l'écran exactement comme elle est vue dans 3D Studio Max, ou Sketchup. Il est actuellement à la version 0.3.1.

Pour pouvoir naviguer dans le modèle, j’ai ajouté une structure camera qui va paramétrer la fonction glLookAt à chaque mouvement de la souris.

Ainsi nous manipulons la position de la caméra avec les touches Z, S, Q, D puis sa direction avec le mouvement de la souris tout en gardant le curseur au centre de la fenêtre.

19 févr. 2011

Utilité d'un moteur de jeu

Pour être efficace en développement de jeu, on doit se concentrer sur un aspect à la fois. D’où la naissance de divers moteurs de jeux qui encapsulent plusieurs traitement et laisse le développeur se concentrer uniquement sur la logique du jeu ou sur l’interface graphique. 

Les moteurs de jeu les plus connus sont Ogre, Irrlicht, Panda3D, Blender, Cafu engine, LWJGL, JMonkeyEngine, Crystal Space. Mais la plupart ne sont que des moteurs graphiques.

Description d'un moteur de jeu 
Un moteur de jeu est un ensemble de composants logiciels qui effectuent des calculs de géométrie et de physique utilisés dans les jeux vidéo. L'ensemble forme un simulateur en temps réel souple qui reproduit les caractéristiques des mondes imaginaires dans lesquels se déroulent les jeux. Le but visé par un moteur de jeu est de permettre à une équipe de développement de se concentrer sur le contenu et le déroulement du jeu plutôt que la résolution de problèmes informatiques.
Le moteur de jeu produit donc les technologies bas niveau pour 
-        L’interface graphique
-        Le moteur physique
-        L’audio
-        Le Scripting
-        Les animations
-        L’intelligence artificielle
-        Le réseau
Le moteur de jeu simplifie la procédure de développement et doit être adapté à plusieurs plateformes.

Pourquoi utiliser un moteur de jeu ?
L'utilisation d'un moteur peut être particulièrement utile si par exemple vous désirez développer vous-même certains aspects de votre jeu, mais ne souhaitez pas galérer dans les domaines que vous ne maîtrisez pas.
-        Moins de temps de développement
-        Moins de test de débogage
-        Plusieurs fonctionnalités directement disponibles
-        Concentration sur le design du jeu
Pourquoi ne pas utiliser un moteur de jeu ?
-        Aucun contrôle de l’implémentation des fonctionnalités
-        Addition difficile de fonctionnalités qui ne sont pas personnalisables
-        Dépendance d’autres librairies


L'architecture
Finalement l’architecture d’un jeu contiendra de plusieurs modules plus ou moins indépendants. L’objectif étant de rendre possibles l’exécution des différents modules en parallèle sans que cela n’entraine des effets de bords dans les autres modules.



12 févr. 2011

Jeux de dames 2

Voici un jeu de dames créé avec la bibliothèque Swing en Java.

L'algorithme utilisée pour la stratégie est bien évidemment Mini-max améliorée avec Apha-bêta.
L'intérête du jeu résite dans sa capacité à prévoir jusqu'au huits prochains coups de l'adversaire et qui devient par la suite la raison d'avoir sept niveaux de difficultés.
En termes de rapidité la fonction d'évaluation a été intégrée dans la classe Coeur afin de ne pas réévaluer à chaque situation à partir de zéro.
Téléchargements