vendredi 25 avril 2014

Le tag contrainte

Cette semaine on va voir l'utilisation du tag contrainte, j'ai déjà utiliser ce tag dans une vidéo réponse aux questions mais je n'avais pas expliquer tout les paramètre du tag, c'est qui est très utile pour la création de certain rig et pour la création de comportement, place à la vidéo...

vendredi 18 avril 2014

Effet de transition cubique

Cette semaine un tutoriel sur un effet de transition entre images avec Mograph, c'est un effet qui m'a été demander en commentaire mais comme c'est assez basique j'en profite pour expliquer l'utilisation de la transformation d'influence des effecteurs, place à la vidéo...

vendredi 11 avril 2014

3 Tags : Protection, Stop et Restriction

Cette semaine on jette un oeil sur 3 tags Cinema 4D, le tag Protection que l'on a déjà utilisé mais que l'on a pas vu en détails ensuite le tag stop qui est utile sur les projets avec une hiérarchie d'objet dense et enfin le tag Restriction qui est très utile pour maîtriser les déformations sur les maillages, place à la vidéo...

mardi 8 avril 2014

Récapitulatif Python

un petit récapitulatif de ce que l'on à vu en python.

Quand on place un tag python sur un objet souvent on à besoin de connaitre sur quel objet le tag en question est placé et on à besoin de "nommer" cet objet pour le manipuler dans le script, on fait donc ainsi :

# objet sur lequel on à placé le tag
monObjet = op.GetObject()

Pour beaucoup de script on a besoin de connaitre la frame sur laquelle l'animation se trouve, donc on à besoin de définir une variable qui contient le numéro de frame active, on fait donc ainsi :

# la frame active
frame = doc.GetTime().GetFrame(GetFps())

Pour la plupart des scripts on à besoin de récupérer des données utilisateur placé généralement sur le tag lui même ou parfois sur d'autre objet, pour récupérer une donnée utilisateur on fait ainsi :

# récupérer une donnée utilisateur placé sur le tag lui même
# (le numéro 2 change en fonction de l'ID de la DU à récupérer)
maDonnee = op[c4d.ID_USERDATA,2]

pour manipuler la position, la rotation ou l’échelle d'un objet on à besoin de les connaitre pour cela on utilise ceci :

# récupérer la rotation, la position et l'échelle d'un objet
rotation = monObjet.GetRelRot()
position = monObjet.GetRelpos()
echelle = monObjet.GetRelScale()

et après les avoir modifier il faut penser à les réaffecter au objet en utilisant ceci :

# redéfinir la rotation, position et echelle d'un objet
monObjet.SetRelRot(rotation)
monObjet.SetRelpos(position)
monObjet.SetRelScale(echelle)

On sait définir l'objet sur lequel on a placé le tag mais parfois on a besoin de définir un nom pour un autre objet de la scène, on peux alors faire ainsi :

# chercher un objet dans le scène et l'affecter à un nom
monObjet = doc.SearchObject("nomdelobjetatrouver")

On peux également renommer un objet en faisant ainsi :

# renommer un objet
monObjet.SetName("nouveau nom")

Il peux arriver que l'on ai besoin d'affecter une action tout les x frames, pour cela il suffit d'utiliser ce genre de condition :

# effectuer une action toute les 5 frames
if (frame % 5) == 0:
    # faire quelque chose
   
   

vendredi 4 avril 2014

Réponses a quelques questions

Cette semaine pas de gros tutoriel mais une vidéo de réponse à quelques questions comme je fait de temps à autres, j'en profite pour montrer le flou de mouvement et la diffusion sous surfacique, je reviendrai dessus lors d'autre tutoriels, ici c'est surtout pour apporter des réponses à ceux qui m'ont poser la question, place à la vidéo...