PDA

Voir la version complète : Générer une clé par image



Licorna
11/07/2006, 23h22
Bonsoir à tous.

J'aurais voulu savoir si Cinema 4D intègre une fonction permettant de générer automatiquement une clé par image d'une animation préalablement enregistrée.
Ma question vous semblera bizarre, mais pourtant cela faciliterait grandement mon travail de création d'un exporteur vers un moteur 3D temps réel.

Merci de votre réponse.

shtl
12/07/2006, 01h39
oui
enfin il me semble, mais comment...? :mrgreen:

Licorna
12/07/2006, 08h38
C'est la question que je me pose aussi... :lol:

legloups
12/07/2006, 09h37
C'est pour travailler avec quel format de 3d temps réel????
Car il existe différentes techniques... Si tu pouvais dévellopper ta question, peut-être pourrons-nous t'aider!!!!

Licorna
12/07/2006, 10h06
Je m'explique. :)

Je souhaite réaliser un plugin exportant les modèles créés sous C4D dans un moteur 3D principalement utilisé pour la création de jeux vidéos et qui se nomme Ogre3D (http://www.ogre3d.org).
Le format dans lequel je dois exporter les animations est le suivant : pour chaque image, je dois connaître la position et l'angle de chaque bone intervenant dans l'animation (je ne m'occupe pour l'instant que de l'animation par bones).

Mon problème est que l'on ne peut accéder à ces valeurs qu'à condition qu'une clé soit enregistrée pour chaque image. Pour récupérer les valeurs de position et d'angle pour les images ne possédant pas de clé, il me faut soit contourner le problème en demandant à l'utilisateur de générer une clé par image lorsqu'il crée son animation (c'est pourquoi je demandais s'il existe un moyen simple de faire cela), le cas échéant, il me faut calculer moi-même les valeurs en récupérant le mode d'interpolation choisi pour la portion d'animation située entre 2 clés (cela se paramètre lorsqu'on crée une clé).

La seconde solution me pose également problème, car je ne connais pas les algorithmes que Maxon a caché derrière certains types d'interpolation (qui sont "légère", "accélération", "décélération" et "personnalisée").

Voilà, j'espère n'avoir pas été trop confus.
Je suis à l'écoute de toutes vos suggestions et astuces qui pourraient me permettre de franchir mes impasses. :poucehaut:

legloups
12/07/2006, 10h23
Re,
Pour contourner le problème des bones, en VRML / X3D, j'utilise ce plug :
http://www.frenchcinema4d.com/forum/index.php?topic=16233.0
Il est gratuit et fonctionne très bien... encore merci à Vincent...

Pour ce qui est de ton export, je pense que cela en intéressera plus d'un... car ogre est un super moteur 3d... et il est gratuit...

Licorna
12/07/2006, 10h43
Je peux me tromper, mais si j'ai bien compris, ce plugin convertit une animation de bones en une animation de points en générant autant de clés que l'on souhaite. Mais ça ne correspond pas vraiment à ce que je souhaite car je dois conserver une animation par bones (le rendu temps-réel des animations déduites de bones est beaucoup plus rapide et demande moins de mémoire).

Merci quand même Legloups, si tu as d'autres suggestions, n'hésites pas. :poucehaut:

legloups
12/07/2006, 10h47
Ben, dommage...
La seule fois où j'ai testé ogre, j'étais passé par blender et son export...

Le problème d'ogre, c'est qu'il n'accepte pas les .x .... Autrement, tu as essayé avec l'export .xml????

Edit : Si tu n'es pas fixé sur ogre, il y a hypérion qui marche très bien et qui accepte le .fbx ... enfin, si je me souviens bien...

Autrement, tu peux regarder là, je parle souvent de la 3d temps réel... quelques bonnes adresses... :wink:
http://www.frenchcinema4d.com/forum/index.php?topic=15634.0

Licorna
12/07/2006, 11h02
Je n'ai peut-être pas choisi la facilité, mais je suis fixé sur Ogre que j'utilise déjà depuis quelque temps. :lol:
Je sais que l'on peut passer par Blender pour exporter vers Ogre, cependant, je voudrais arriver à développer un plugin pour C4D car je trouve le fait de devoir passer par un autre logiciel plutôt contraignant, d'autant plus que l'on est jamais à l'abri de défauts introuduits dans le modèle ou les anims durant le passage C4D->Blender, et je pense que ce serait un plus pour la communauté d'Ogre qui a trop tendance à délaisser C4D...

Pour répondre à ta question, c'est justement un plugin d'export au format .xml d'Ogre que je tente de développer. :)

Au passage, le moteur 3D du projet Offset dont tu parles dans ton lien est spectaculaire, ils font vraiment du bon travail. :bave:

nergal
12/07/2006, 11h07
A partir d'une animation, le seul moyen de créer une clé par image que j'ai trouvé est de faire F9 pour chaque image de l'anim, peut etre que tu a moyen avec coffee de faire une lecture de l'animation image par image et que coffee enregistre une clé pour chaque image.

Licorna
12/07/2006, 11h13
Malheureusement, en COFFEE comme en C++, ce n'est pas possible, car on ne peut enregistrer une clé que si l'on sait quelle valeur lui affecter pour qu'elle coïncide avec la courbe de l'animation que l'on voit dans la fenêtre "Ligne temporelle".

xs_yann
12/07/2006, 11h31
Bonjour, :D
Tu peux créer une clé par image en allant dans Fenêtre>Ligne temporelle>Objets>Convertir en pistes.
Attention cela va te créer de nouveaux objets . :wink:
:odile:

goodav
12/07/2006, 11h34
salut

Et avec cappucino ?.... as tu essayé ?... je dis peut-être une connerie... :roll:

Licorna
12/07/2006, 11h43
En utilisant "Convertir en pistes" ça fonctionne très bien, c'est exactement ce qu'il me fallait, merci. :poucehaut:
Je ne sais pas me servir de Cappucino :oops:, donc je pense que je vais utiliser la solution de xs_yann.

goodav
12/07/2006, 11h50
pas de quoi :odile:

regarde dans la doc... c'est expliqué

tu peux éventuellement la télécharger sur mediaworks en français...

Licorna
12/07/2006, 12h01
Oui, j'irai voir si besoin est.
Mais pour l'instant, je suis plus axé sur la programmation que sur l'utilisation de C4D car je ne suis pas doué de talents artistiques. :lol:

ashurao
12/07/2006, 12h47
n'cha licorna,

nous sommes sans plusieurs sur ce site à n'être pas doué d'un sens artistique, mais c'est pas un problème. Ca ne doit pas t'empêcher de ressentir cette petite satisfaction personnelle lorsque tu découvres le rendu d'une scène que tu as mis plusieurs jours (voir plusieurs nuit) à mettre en place. :lol:
C'est très stimulant (enfin, si la scène est réussi ……)

Licorna
12/07/2006, 13h18
Je m'essaierai peut-être à la 3D un jour alors... :)

R925
13/07/2006, 16h27
n'cha licorna,

cette petite satisfaction personnelle lorsque tu découvres le rendu d'une scène que tu as mis plusieurs jours (voir plusieurs nuit) à mettre en place. :lol:
C'est très stimulant (enfin, si la scène est réussi ……)


Voila la phrase illustant EXACTEMENT mon sentiment !

Tengaal
13/07/2006, 18h28
Malheureusement, en COFFEE comme en C++, ce n'est pas possible, car on ne peut enregistrer une clé que si l'on sait quelle valeur lui affecter pour qu'elle coïncide avec la courbe de l'animation que l'on voit dans la fenêtre "Ligne temporelle".

Je ne vois pas en quoi c'est impossible ?! :o
Quand on créé 2 clés à 2 instants disctincts, C4D génère les positions intermédiaires (interpolation) pour chaque image. En COFFEE comme en C++ il suffit de lire à chaque image les position/rotation ou autres infos des objets concernés, et donc de les "figer" en tant que nouvelle clé sur l'image en cours.
Exactement comme si tu avançais image par image dans ton anim et qu'à chaque image tu appuyais sur le petit bouton rouge d'enregistrement de clé.

Donc, voilà, c'était pour rectifier cette affirmation un peu "hative" de ta part sur la possibilité en programmation avec C4D. :wink:

Sinon, en 3D temps réel il y a aussi le format X (DirectX) avec un plugin d'export gratuit également nommé XPort, il permet d'exporter les géométrie, ainsi que les bones et animations.
http://www.spackenz.de/~philipp/

Licorna
14/07/2006, 11h19
Oui, tu as raison, j'ai conclu un peu hâtivement. :oops: En fouillant sur le forum du SDK de Maxon, j'ai fini par trouver la solution à mon problème.
Pour ce qui est du format X, il n'est pas pris en charge par Ogre3D, sinon je ne me fatiguerais pas à faire mon propre exporteur. :lol: