A CG nerd tale

Dorian Fevrier's blog

Complex problems have simple, easy-to-understand, logical wrong answers.

mercredi, 23 mars 2011

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...

lundi, 14 mars 2011

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...

dimanche, 20 février 2011

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...

lundi, 4 octobre 2010

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...

samedi, 18 septembre 2010

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...

samedi, 28 août 2010

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...

vendredi, 12 février 2010

Creating Custom Locator with Maya's Python API (English Translation)

pythonLocator001.pngThis post is a english translation of this post. I'd wrote it after post this on CGTalk. Great thanks to Daisy C. Lyle. She translate all the french version to english and make a great work! She save me hours doing this! :sourit: . Hope that this tutorial will be usefull.

Lire la suite...

dimanche, 31 janvier 2010

Dessins en vracs

luiMechantSmall.png

Lire la suite...

dimanche, 29 novembre 2009

MediaInfo: Lire les informations des fichiers vidéo et audio en ligne de commande. (Part 2)

python_fouilleQuicktime150.pngLors du billet précédent nous avons vu comment extraire une information (le nombre d'image) d'un fichier Quicktime en ligne de commande. Je vous propose ici la suite de ce tutorial en utilisant Python afin d'étendre cette possibilité à tout les fichiers d'un dossier.

MediaInfo reconnaissant un bon paquet de format, à la fin de ce tuto, vous aurez la possibilité d'étendre ce script suivant votre usage.

Lire la suite...

samedi, 28 novembre 2009

MediaInfo: Lire les informations des fichiers vidéo et audio en ligne de commande. (Part 1)

MediaInfo001.pngCe fut la colle de la semaine: "Comment lister le nombre d'image des fichiers Quicktime d'un dossier"...

Mine de rien, récupérer ce genre de données est récurent lors d'une prod mais il n'est pas aisé de trouver des informations sur "comment procéder". Vous pouvez faire votre guignol comme moi, à savoir, essayer de trouver des informations sur le header d'un fichier Quicktime mais, d'une, je n'ai pas trouvé, et si bien même j'avais réussi, j'aurai été incapable de le coder (j'ai essayé parce que je suis un dur à cuire mais nan... J'ai pas réussi... :baffed: ). Je vous propose une solution que j'ai trouvé, qui n'est surement pas la meilleur, mais que je vais garder de coté tant elle s'adapte à beaucoup de type de fichiers. Mon secret c'eeeesssttt Starlight! MediaInfo CLI!

Lire la suite...

mercredi, 25 novembre 2009

Un debugger dans Python pour voir précisément ce qui ce passe dans son code

debugPython001.png Haha!!! Le voila! Das Python Debugger! Le truc que "une fois que tu sais que ça existe que tu peut plus te passer de" ^^ .

Le debug, le genre de chose qu'un scripteur de base (moi :baffed: ) traduit par l'utilisation à tout va de "print" dont il asperge ses codes pour tenter de deviner "pourquoi de p*tain de script de m*rde ne fait pas qu'est ce qu'on lui à demandé de faire".

Et bien amis boutonneux pythonneux du dimanche, je viens de trouver une solution de la mort qui tue: Le module pdb!

Lire la suite...

samedi, 18 juillet 2009

Utiliser PyQt dans Maya

QtPython_logo001.pngVous ne vous êtes jamais dis: "Arf! Le MEL c'est cool mais ça commence à être un peu has been...".

Personnellement, je me fait cette réflexion assez souvent... :hehe: Même si on arrive à avoir ses petites habitude de GUI (certaines sont des bijoux d'inventivité), il n'est pas inintéressant de se pencher sur ce qui ce fait de plus... Comment dire... Jeune...

Je vous invite donc à découvrir comment intégrer PyQt dans Maya.

Lire la suite...

mercredi, 15 avril 2009

Créer un Custom Locator avec l'API Python de Maya

pythonLocator001.pngComme je vous le disais, je commence à utiliser le binding Python de l'API Maya. J'ai donc regardé les codes sources de Rob Bateman (que je trouvais incompréhensibles il y a un an) et les ai "traduit" (non sans mal) en Python... J'ai donc créé un petit script avec un locator personnalisé. Ce n'est clairement pas le plus simple pour commencer (J'avais quand mêmes des bases grâce à d'autres tutos, aux "plugins" Python déjà intégré à Maya et a des tutos OpenGL que j'avais fait) mais une fois le code fonctionnel, c'est assez drôle de le modifier pour fabriquer son propre locator...

Lire la suite...

dimanche, 29 mars 2009

Seul avec Python, Maya et son API...

Rpyc3-logo-medium75.pngÇa fait plusieurs week ends que je regarde comment fonctionne l'API Maya avec Python. Je commence à avoir un petit aperçu des avantages et inconvénients... Je m'y suis mis et je compte faire, un de ces quatres, quelques tutoriaux et scripts car la documentation manque un peu... reflechi.gif

Lire la suite...

dimanche, 15 mars 2009

Tkinter: Faire communiquer les variables de l'interface

debutTkinter009.pngQuand on fait une interface, on est souvent amené à récupérer le contenu des informations qui sont dans la dite interface (Est ce que la checkbox est activé? Qui y a t'il dans le widget Entry? etc...). Je vous propose de voir rapidement comment faire interagir des éléments d'une interface tkinter avec différentes variables. Nous allons voir qu'on passe par un objet qui est en fait... Une variable, ou plus précisément, la classe variable. :hehe: Nous aborderons brièvement le resizing des fenêtres dans la dernière partie.

Lire la suite...

vendredi, 13 mars 2009

Tkinter: Vous aussi, faites des GUI en Python... Ouai, mes fesses ouai...

ecureuil_002.pngTravaillant actuellement sur un projet de Michel Ocelot (les incultes, cliquez sur le lien :bete: ), je fais une interface graphique pour un logiciel de "tracking de fichier". Ça consiste en gros à lister tous les fichiers d'un certain type (ex: ExxPxx_DecA.tif) dans une hiérarchie donnée (par exemple: Z:/Exx/Pxx/Decors) en ne changeant que quelques variables dans le chemin, ce qui permet d'avoir rapidement un aperçu de "qu'est-ce qu'il manque", de l'âge des fichiers, de savoir qui est plus récent que qui, etc... Super pratique donc! Mais je ne vais pas m'attarder sur le sujet trop longtemps (J'y reviendrai peut-être un jour si je fais une version "publique" et si ça intéresse quelqu'un...). Je voudrais vous parler de Python 3.0 et des problèmes que j'ai rencontrés (et que je rencontre encore à l'heure actuelle) concernant l'utilisation de tkinter. Problèmes qui se révèlent être un des cotés sombres de Python et des modules indépendants qui l'entourent.

Lire la suite...

- page 2 de 3 -