Blender (jusqu'à 2.49)
|
Animation
Enregistrer
une vidéo
d'une
séquence avec rigid body
|
|
Mise à jour pour
Gestion
des relations physiques de solides, choc, contact, glissade, ricochet,
etc.
On peut
essayer de mimer ces effets par une construction image par image, "à
la main". Cependant, non seulement cela prend beaucoup de temps mais en
plus, à moins d'être un grand spécialiste de l'expression
du mouvement, on n'est jamais tout-à-fait satisfait du résultat.
Quand les pièces en mouvement sont extrèment nombreuses,
même si on est un expert, il vaut mieux laisser la place à
un automate qui gère la mise en scène à notre place
en respectant les lois de physique des corps solides.
Méthode
Pour activer l'enregistrement,
il faut passer par la fenêtre des User Preferences :
Figure 1
Aller dans le menu Game/Jeu :
Figure 2
On y trouve l'entrée Record Game
Physics to IPO/Enregistrer la Physique du jeu en IPO. ll faut simplement
cliquer dessus.
Dès que la touche P
sera enfoncée, tous les objets qui sont des acteurs
dynamiques auront leurs mouvements automatiquement enregistrés
dans des courbes IPO .
Quand on estime que l'animation physique
est terminée, on utlise la touche Echappe pour stopper
l'enregistrement.
Le bouton Anim dans la fenêtre
des bouton de Scene . La séquence sera enregistrée au format
video sélectionné .
Précisions
-
Le concept de solide peut être
très étendu dans Blender. Une lumière, une lampe,
peut tout aussi bien devenir un acteur dynamique même si, mathématiquement,
il ne s'agit que d'un point sans épaisseur ni poids car le système
de jeu l'entoure d'une forme nommée Bound
.
Fichier d'exemple : game_light_actor_test.blend
-
Si on se limite aux meshes
on peut obtenir des résultats appronchants en passant par les soft
bodies
-
A partir de Blender 2.48, il est possible
de faire la distinction entre les objets qui subissent les lois de la Physique
(essentiellement la chute des corps) :
Figure 3
et ceux qui gèrent les interactions
relevant de la notion de Rigid Body.
Figure 4
Attention
Si le bouton Limites n'est pac
coché, l'acteur de type Rigid body se comporte exactement comme
un acteur de type Physique. |
Les courbes ipo obtenues sont très
différentes car dans le second cas, le moteur de jeu tient compte
de la forme de l'objet pour calculer les rebonds et des déplacements
après un contact, un choc ou une glissage (voir Figure 5 et 6 pour
les courbes et 7 et 8 pour les animations).
Figure 5
Figure 6
Figure 7
Animation Physique
|
Figure 8
Animation Rigid Body
|
Liens
Un peu de documentation officielle
en anglais : Bsod/physical_simulation/rigid_bodies
A parte
Pendant longtemps (depuis le courant
de l'année 2000 pour donner une petite idée de la durée
) cette méthode a été liée à un script
écrit par Olivier
Blin et repris de nombreuses fois par d'autres auteurs pour
s'adapter aux différentes évolution de l'API
python . Aujourd'hui on pourrait croire qu'il est encore en service et
on peut se demander où ce script est stocké
. Un coup d'oeil sur le fichier.blender/scripts ne donne rien et une recherche
en profondeur sur le reste des répertoires consacrés à
Blender non plus . Par contre, un filtrage des sources avec l'expression
"Record
Game Physics to IPO" renvoie : header_info.c
En fin de compte, c'est une fonction codée en dur dans
le gestionnaire du moteur de jeu :
WritePhysicsObjectToAnimationIpo()
On trouve la fonction dans le fichier
:
..\gameengine\..\KX_BlenderSceneConverter.cpp
|
Les questions concernant cette page
peuvent être posées sur :
news://news.zoo-logique.org/3D.Blender
|