A CG nerd tale

Dorian Fevrier's blog

Récupérer rapidement la position des vertices d'un mesh Maya

recuperer_Position_Vertex_Rapidement_tn.pngSi vous avez déjà été amené à récupérer la position dans l'espace de tous les vertices d'un objet, vous avez surement dû vous heurter à la commande xform et à sa lenteur légendaire. :baffed:

Dans ce billet, je vous propose un petit bout de script Python utilisant l'API Maya en Python qui permet de récupérer, plus rapidement, la liste de toutes les positions des vertices d'un objet.

Principalement didactique, ces codes, pourront intéresser les personnes qui souhaitent regarder un peu plus profondément comment utiliser l'API tout en ayant un cas concret d'application. :laClasse:

Lire la suite...

Créer une interface rapidement pour Maya 2011 via loadUI

QtPython_logo001.pngAujourd'hui je vous propose un petit tuto sur une nouvelle méthode, depuis dans Maya 2011, pour faire des interfaces avec Qt Designer (via la commande loadUI).

Je vous montrerai le principe, et on attaquera avec un exemple concret. Nous verrons donc les avantages et inconvénients de cette technique.

Vous allez voir que la vérité autour de cette nouvelle feature n'est pas aussi jolie qu'elle le laisse croire.

J'espère que vous apprécierez! :sourit:

Lire la suite...

Remplir un mesh de spheres dans Maya: La méthode d'un sénior!

remplir_un_mesh_de_spheres_tn2.pngAujourd'hui, je ne suis pas peu fier de vous présenter la méthode d'un gros sénior dans le domaine du FX: Djelloul Bekri, qui, en plus d'être un mec adorable m'a donné et autorisé à diffuser son "trick" pour remplir le volume d'un mesh de spheres. :laClasse:

Un grand merci à lui donc car je pense que beaucoup de FX guys vont apprendre un truc aujourd'hui. Voir plusieurs tant cette méthode peut s'adapter à beaucoup de choses. :sauteJoie:

Lire la suite...

Les images EXR lentes à ouvrir en compo, la solution

exr_logo_tn.pngSi vous avez déjà rendu des images EXR dans Maya (et d'autres logiciels/moteurs de rendu) vous avez peut être remarqué qu'elles peuvent être très longues à ouvrir dans votre logiciel de compo favoris (Nuke, Fusion, After Effect, etc...). La faute à la "façon" dont sont écrits les pixels dans vos images. :reflechi:

Avec ce billet, je vous propose une petite explication sur le comment du pourquoi ainsi que la méthode pour optimiser vos fichier EXR afin de gagner du temps lors de la phase de compo. (Merci à Deex pour ses informations)

Lire la suite...

Projeter un mesh sur un autre avec l'API Python de Maya

projection_mesh_api_tn.pngAujourd'hui je vous propose un tutorial qui vous permettra de projeter un mesh sur un autre.

C'est un truc qui peut être pratique mais surtout, c'est assez "fun" à faire (tout est relatif diront certains :seSentCon: ) et ça permet d'apprendre les fondamentales des changements de repères (les fameuses matrices) en ayant un exemple à la fois simple et concret.

Amateur de l'API, ce tuto est fait pour vous!

Lire la suite...

Gérer correctement l'intensité des photons: mia_photometric_light

mia_photometric_light_tn.pngJe ne sais pas si vous avez remarqué mais dans Maya (et dans mental ray de manière général), le paramètre d'intensité des photons est toujours indépendant du paramètre d'intensité de la light...

Lors de l'éclairage d'une scène, le jaugeage se fait donc à la main (et surtout, à l'oeil...). Cette lacune est maintenant comblée par l'apparition, dans Maya 2011 d'un node qui permet, moyennant quelques paramètres, de gérer ces deux paramètres en un seul.

Ce node c'est le mia_photometric_light et je vous propose un petit tuto sur comment s'en servir. :sourit:

Lire la suite...

(Re)Lancer 3D Studio 4 et faire de la 3D comme à l'ancienne!

relancer_3dstudio4_tn.pngLes vieux joueurs aiment bien relancer leurs vieux jeux via émulateur, les vieux nerds aime bien relancer leurs vieux logiciels! :smileFou:

C'est ce qui est arrivé à un collègue à moi (Nicolas Dumay) qui s'est pris l'envie de relancer un vieux logiciel qu'il utilisait "autrefois": 3D Studio 4! Vieux geek aguerri qu'il est, il ne lui aura pas fallu longtemps pour réussir à le lancer créant la surprise autour de lui! Il m'a donné la méthode pour y arriver, méthode que je partage ici avec enthousiasme! Un grand merci à lui donc sans qui je n'aurais pas écrit ce billet!

Lire la suite...

Une introduction à l'OpenGL "Moderne" - Chapitre 2.1: Les Buffers Et Les Textures

OpenGL_logo_tn150.pngÇa y est, on attaque du vrais code! Ne soyez pas trop impatient tout de même. En effet, cette partie est la première d'une série de trois. :seSentCon:

Ici vous allez commencer à écrire du code qui sera commenter, ligne à ligne, pour vous expliquer ce qui se passe dans votre bécane!

Prenez un peu de temps devant vous on attaque du gros! :grenadelauncher:

Lire la suite...

Une introduction à l'OpenGL "Moderne" - Chapitre 2: Hello World: Le Slideshow

OpenGL_logo_tn150.pngVoici la traduction du deuxième chapitre du tutorial de Joe Groff. :hehe:

Ici, vous allez écrire l'architecture global de votre programme, qui concerne surtout le système de fenêtrage.

Prenez le temps de configurer votre environnement de développement, il ne faut pas que la compilation soit une procédure rébarbative, vous allez le faire un grand nombre de fois...

Ce n'est pas la partie la plus intéressante mais rassurez vous, ce tutorial est assez court et vous aurez bien assez le temps de vous casser les dents sur les suivants! :baffed:

Lire la suite...

Une introduction à l'OpenGL "Moderne" - Chapitre 1: Le Pipeline Graphique

OpenGL_logo_tn150.pngAujourd'hui je vous propose une traduction d'un article très intéressant écrit par Joe Groff sur l'utilisation d'OpenGL de manière "moderne": An intro to modern OpenGL. Comme vous le savez peut être, depuis OpenGL 3.1, beaucoup de fonctions ont été supprimé de l'API. La façon de coder n'est, ducoup, plus la même et tout les tutos que l'on peut trouver sur internet deviennent obsolètes... Celui ci est un des rares premier tuto "OpenGL 3 Compliant" d'internet :bravo: . Il explique et applique très bien la nouvelles approche. Je m'arrête là, tout est dit dans ce qui suit... Bonne lecture! :sourit:

Lire la suite...

Trine: Un jeu fait par des graphistes qui en ont

trineCover_tn.pngVous ne le savez peut être pas mais je joue beaucoup (enfin vous vous en foutez surement :baffed: ). Une fois n'est pas coutume, je vais vous présenter un jeu qui est sorti il y a un petit moment maintenant (Juillet 2009) mais que je trouve vraiment magique: Trine.

Je faisais mes petites emplettes sur Amazon quand je suis tombé sur ce jeu dont j'avais déjà entendu le nom. En effet, un ami m'en avait déjà parlé en bien. Le voyant à 9€95 et venant de finir Mario Galaxy 2, je me suis laissé tenter.

Ne vous laissez pas influencer par la minable jaquette: Je viens de le finir et c'est simple, sur les quelques heures de pûr plaisir que m'a procuré ce jeu (il est court), mes yeux en ont pris plein la vue!

Lire la suite...

API Python de Maya, les choses à savoir

pythonVsMaya_tn150.pngÉtant de plus en plus amené à utiliser l'API Python de Maya dans le cadre de mon travail, je remarque que beaucoup de choses ne fonctionnent pas très bien, voir, pas du tout...

L'implémentation Python (qui à au moins le mérite d'exister et d'être très pratique) est pas mal buggé... On se demande souvent si la faute vient de nous. Mais c'est une fois qu'on a réussi à isoler le bug et à trouver un workaround qu'on se rend compte que le problème n'était pas due (qu')à notre incompétence... :sourit:

Lire la suite...

Remplir un mesh de particules dans Maya: closestPointOnMesh again!

remplir_mesh_particule_tn.pngBoujour à tous! :dentcasse:

Dans Maya, il peut arriver que l'on veuille remplir un mesh de particules de manière complètement aléatoire. Il existe plusieurs méthodes pour ça.

On peut, par exemple, émettre des particules vers l'intérieur du mesh et les faire rebondir sur les parois. Mais cette méthode ne donne pas un résultat si aléatoire que ça. Et dans certains cas, cela se voit. :reflechi:

Si on a des pépettes, on peut aussi utiliser Houdini qui fait ça à merveille et récupérer les particules dans Maya.

Ce que je vous propose est une méthode un peu "clef en main". Vous sélectionnez votre mesh, appliquez le script, réglez deux trois trucs appuyez sur play pour lancer la génération et c'est bon!

Lire la suite...

Supprimer (pour recharger) les modules python dans Maya

Python_logo_150.pngLorsqu'on fait du développement Python dans Maya, on peut des fois être embêté avec ses modules persos Python. :pasClasse:

En effet, si on souhaite recharger un module, ce n'est pas super simple. En mel il suffit de redéfinir la procédure et c'est bon. En python ce n'est pas le cas.

Je vous propose ici un bout de code qui va décharger des modules de votre choix de Maya. Si vous réappelez ses modules, ils seront rechargés. :hehe:

Lire la suite...

Orienter les particules sur la normale d'un mesh ou d'une surface: closestPointOnMesh

oriente_particle_maya_tn.pngLors de mes recherches sur les particules, j'étais face à un problème qu'on rencontre assez fréquemment:

Orienter des instancers en fonction de la normale du mesh sur lequel elles se trouvent... :casseTeteMur:

Ça semble être un bête problème mais dans Maya, ce n'est pas si évident et il faut un peut bidouiller pour pouvoir le faire.

Je vous propose à travers ce tuto une petite solution qui, vous allez voir, n'est pas de moi mais que je ne pouvais m'empêcher de vous faire partager.

Lire la suite...

Récupérer le hash (ou somme) MD5 d'un fichier en Python

pythonMd5.pngAujourd'hui je vous propose un petit bout de code très pratique lorsqu'il s'agit de comparer deux fichiers, pour savoir si ils sont identique ou non, via leur somme MD5.

Une somme MD5 est une sorte de "signature" calculé grâce à chaque octet du fichier. Cette signature vous permet d'être sur que deux fichiers sont identiques. Les usages de cette petite procédure sont très variés. En pipeline, cela peut être très utile. :sourit:

Lire la suite...

- page 6 de 10 -