Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Technologies / Divers > Développement 2D, 3D et Jeux

Développement 2D, 3D et Jeux Forum développement 2D, 3D et Jeux. Avant de poster : Les FAQs Programmation 2D, 3D et Jeux

Réponse
 
Outils de la discussion
Vieux 31/10/2008, 14h57   #1 (permalink)
Membre éprouvé
 
Date d'inscription: avril 2004
Localisation: Marseille
Âge: 24
Messages: 412
Par défaut Comment importer une animation de Blender dans du code C++?

Bonjour,

Je me posais quelques questions avant de me lancer dans la programmation d'un petit jeu vidéo. J'ai vu qu'il est possible par exemple de modéliser un objet sous Blender et de l'exporter au format .obj. Ensuite, on peut l'importer dans un programme en C++ et utilisant de l'opengl/glut. Cependant, j'ai trois questions :
- Aura t-on tout d'importer ? Couleurs, mouvement et contrainte associée à l'objet...(Par exemple, comment il réagi lorsque l'on bouge avec) ?
- Peut on réaliser une animation, et importer cette animation dans le code ou alors...
- S'agit il de vidéo importer pour les cinématiques et est ce compliqué à ajouter dans la fenetre opengl/glut?

Peu être ai-je mal employé certains thème ? C'est juste que je me demande comment on passe de la modélisation d'un objet en précisant qu'il avance de telle manière etc, à son incorporation dans du code C++...
zuzuu est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 31/10/2008, 19h06   #2 (permalink)
Expert Confirmé Sénior
 
Date d'inscription: novembre 2006
Localisation: Laval,Canada ( expat français)
Messages: 2 356
Par défaut

Citation:
Envoyé par zuzuu Voir le message
Peu être ai-je mal employé certains thème ? C'est juste que je me demande comment on passe de la modélisation d'un objet en précisant qu'il avance de telle manière etc, à son incorporation dans du code C++...
Eh bien pour importer un objet .obj il faut tout bêtement un chargeur ou bien des routines de code qui assurent cette tache.
Un objet ou meshc'est un fichier qui décrit les facettes , sommets ( vertices en anglais) donc après avoir chargé toutes ces données il faut les conformer aux primitives Open GL et en faire l'affichage ou rendu..
Je suis persuadé qu'on puisse trouver des tutoriels qui explique comment charger un objet .3ds ou .obj de Blender

Citation:
Envoyé par zuzuu Voir le message
- Aura t-on tout d'importer ? Couleurs, mouvement et contrainte associée à l'objet...(Par exemple, comment il réagi lorsque l'on bouge avec) ?
Couleurs=> couleurs de base R G B avec ombrage de Gouraud par exemple ou bien textures dans le jargon 3d.
Les textures ce sont des images que l'on plaque sur les facettes d'un objet 3d.
Par exemple pour un mur on va appliquer une image qui représente des pierres et le rattacher à des coordonnées u , v.
Par contre pour le mouvement non parce que ce sont des objets 3d statiques.
C'est au concepteur du programme de donner un mouvement à l'objet.
Mais je sais que Blender peut exporter le modèle d'un jeu complet au format .blend pour le recharger sous Crystal Space

Jeter un coup d'oeil sur le projet Apricot : http://www.yofrankie.org/
L'équipe a travaillé sous Blender puis le modèle de jeu .blend est exporté et exploité avec le moteur Crystal Space

http://www.crystalspace3d.org/main/Features
Citation:
Custom model and scene file format with exporters for Blender and 3d studio max and model importers for common file formats such as 3ds and md2.

Dernière modification par Mat.M ; 31/10/2008 à 19h16
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 06/11/2008, 16h42   #3 (permalink)
Membre éprouvé
 
Date d'inscription: avril 2004
Localisation: Marseille
Âge: 24
Messages: 412
Par défaut

Merci c'est vrai j'y pensais plus...
Je vais aller regarder
zuzuu est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 29/11/2008, 13h26   #4 (permalink)
Candidat au titre de Membre du Club
 
Date d'inscription: novembre 2008
Localisation: gard
Messages: 25
Par défaut yop

tout dabord il faut exporter toute la geometrie de l objet, pour chaque faces des polygones il faut :
3points :

-leur position
-leur coordonnée de mapping (c est un "placage" du triangle dans un plan sur un texture,pour voir quel bout de texture il doit affiché dans ce triangle)
-accessoirement la normale

pour l animation:
en fait blender memorise ce qu'on apelle des "keyframes", c est a dire la position et l orientation de tes objet a un temps donné, et quand il les animes il fait des "interpolation" , en gros il crée plusieurs images entre la transformation A et la transformation B,
ou plus precisement il te calcule la position de l objet en un temps donné en fonction de la "keyframe" (clée d animation en francais) precedente et suivante ...


tu peut recuperé ces "keyframes" et cette geometrie grace a un script Python sous blender,
ou en exportant dans un format existant,


et ensuite il te faut faire un programme d animation qui est capable de te renvoyé la position d'un objet pour un temps donné et une animation donné en fonction des donnée que tu a recuperé dans ton fichier ^^


GLUT et opengl ne servent qu'a l' affichage , pour l animation c est des math,
(en gros tu interpole de la matrice de transformation)
ubenz est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 01/12/2008, 11h16   #5 (permalink)
Membre éprouvé
 
Date d'inscription: avril 2004
Localisation: Marseille
Âge: 24
Messages: 412
Par défaut

Merci tout cela me semble déjà une bonne base pour le travail
zuzuu est déconnecté   Envoyer un message privé Réponse avec citation
NEWS 2D - 3D - JEUXLES FAQsTUTORIELSOUTILSBIBLIOTHEQUESMEDIASLIVRESSOURCESTVBLOG

Réponse

Précédent   Forum des développeurs > Technologies / Divers > Développement 2D, 3D et Jeux



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide