Deex Render Tool Français

Deex Render Tool

.

.

English version here !

.

Qu’est ce que Deex Render Tool ?


Deex Render Tool est un petit outil que j’ai créé afin d’accélérer et simplifier la gestion de la mise en place d’une scène de rendu.

Je ne suis pas programmeur. J’ai fait cet outil pendant mon temps libre, le soir. Si vous voyez des bugs, des lignes de programmation (en Python) mal écrites, n’hésitez pas à m’en faire part afin d’améliorer le script.

Historique :

- dimanche 29 mars : v0.78. BugFixe sur l’enregistrement de votre XML.

- vendredi 20 mars : v0.75. Bug Fix pour la suppression des pass Mia_material. Ajout de la fonction de la création de vos propres pass, le tout supporter dans le XML ! =). v0.77 : bugfix, optimisation du code. Maintenant vous pouvez voir les pass associées au preset. Ajout du shelve.

- dimanche 8 mars : v0.70. Bug fix quand on se sert des références. Optimisation du code (vous pouvez nommer vos sets, shader lineair comme vous le voulez), ajout de 23 pass spéciales pour les mia_material_x et mia_material_x_passes.

- vendredi 20 février : v0.69. Bug Fixe sur les custom pass + labelID

- dimanche 15 février : v0.68. Ajout des pass Back SSS, Front SSS et Mid SSS. Pour les shaders misss_fast_skin_maya, misss_fast_shader_x_passes et misss_fast_simple_maya.

- vendredi 13 février : v0.67. Ajout des pass Label Id et Coverage.

- Jeudi 5 février : v0.65. Optimisation du script. Vous pouvez renommer les pass et les shaders comme vous le voulez maintenant.

- Mardi 3 février : v0.6. Ajout des customs pass Occlusion et Y deph.

- Lundi 2 février : v0.5. Première version publique.

Wishlist :

- Autocomp pour Nuke et Shake

- Autocomp : détection de pass spéciales comme l’occlusion, le Zdeph, etc etc…

N’hésitez pas a donner des idées ;) .

Quelles sont les fonctions de Deex Render Tool ?


Deex Render Tool se découpe en 3 parties :

- Set Overide : comme XSI, permet de créer des groupes d’objets auquel nous attribuons des attributs. Les objets dans le groupe prendront la valeur de l’attribut du groupe parent. Cela permet d’avoir une vision globale des overides et de s’y retrouver.

- Pass manager : Plusieurs outils dans cette partie. Le linear Worflow permet de configurer une scène en linear en quelques clics. Le pass preset permet lui de créer un preset de Pass enregistré dans un XML, pour ensuite l’appliquer sur une scène. Ceci est pratique à partir du moment où l’on utilise toujours les mêmes pass en rendu. Cela permet de ne pas les refaire à chaque fois.

- AutoComp : permet de créer un fichier de compositing automatiquement d’après les pass configuré dans votre scène. Attention, pour cette version (v0.5), cela ne marche que pour les pass additives (diffuse, speculaire, reflection, irradiance, etc etc…). Dans les prochaines versions, d’autres pass non additives seront supportées (occlusion, Zdeph, Id, etc etc…). Autocomp supporte les passContributionMaps.

Installation :


Attention : ne marche qu’avec Maya 2009. Seule la partie set overide marche avec Maya 2008.

Copiez tous les fichiers du zip dans vos script mel. Généralement C:\Documents and Settings\Administrateur\My Documents\maya\2009 (ou 2009-x64)\scripts\ pour windows.

Si vous voulez le mettre dans un dossier custom, ouvrez votre maya.env (généralement dans C:\Documents and Settings\Administrateur\My Documents\maya\2009 (ou 2009-x64)\) et mettez :

PYTHONPATH = C:/ou/vous/voulez

Pour checker (au cas ou) si votre custom path est pris en compte, tapez dans le script éditor en mode Python :

import sys
for path in sys.path:
 print path

Pour démarrer Deex Render Tool, allez dans le script éditor en mode Python et tapez :

import deexUI
deexUI.BDeex_deexRenderUI()

Utilisation des outils :


Set Overide :


Qu’est qu’un attribut overide ?

Réponse en image :

powered by WordPress Multibox Plugin v1.3.5

Le problème dans Maya est que nous n’avons aucune vue globale, aucune organisation lorsque que nous avons plusieurs objets qui ont plusieurs attributs overidés.

powered by WordPress Multibox Plugin v1.3.5

Comment marche le Set Overide ? Pour cela, je vais mettre en application un exemple assez simple.

Le but :

- avoir plein de lumières avec leur intensité overidé à 2 ainsi que le « use raytrace shadows ».

- avoir un set qui cache des objets mais qu’on voit en reflection, refraction, etc etc, donc, qui overide l’attribut Primary Visibility de mes objets.

Tout d’abord, créez un nouveau renderLayer. En effet, vous ne pouvez pas overidé des attributs sur le layers par défaut.

Une fois votre renderLayer créé, si vous avez déjà le Deex Render Tool ouvert, cliquez sur Up (en vert) pour rafraichir. Ensuite, choisissez votre nouveau Layer.

On va commencer par nos lumières. Créer un set/group en cliquant sur : Create new Set. Appelez le set : « LightIntensity ».

powered by WordPress Multibox Plugin v1.3.5

Ensuite, on va mettre les lampes qu’on veut overider. Ici, on veut overider l’intensité d’une lampe, ainsi que le « use ray trace shadows ».

Lorsque vous sélectionnez le transform d’une lampe dans Maya, Maya vous montre le shape de la lampe.

Hors, comme vous le voyez, l’intensité d’une lampe se trouve dans le shape.

powered by WordPress Multibox Plugin v1.3.5

A partir de là, nous devons sélectionner la shape des lampes car c’est là ou il y a l’attribut intensité. Faites très attention entre le shape d’un objet et son transform.

Sélectionnez les shapes de toute vos lampes, puis, sélection votre set :

powered by WordPress Multibox Plugin v1.3.5

Cliquez sur : Add selected object to Set.

powered by WordPress Multibox Plugin v1.3.5

Maintenant, attribuons les attributs qu’on veut overider. Pour cela, sélectionnez votre Set « LightIntensity ».

Cliquez sur : Add Attr to Set.

Nous voulons overider l’intensité et le use raytrace shadows. Donc, sélectionnez ces attributs dans le DeexAttrChoose (n’oubliez pas ce sont des attributs de shapes).

powered by WordPress Multibox Plugin v1.3.5

Et cliquez sur : Add Attribut.

Fermer le DeexAttrChoose.

Sélectionnez votre set « LightIntensity » et cliquez sur « Refresh Attributs List » à droite.

powered by WordPress Multibox Plugin v1.3.5

Vous voyez vos 2 attributs apparaitre.

Mettez 2 en valeur à l’intensity, et cochez Use ray trace shadows.

Voilà ! Toute les lumières qui se trouvent dans le set LightIntensity ont leur attribut intensité à 2 et le use ray trace shadows !

powered by WordPress Multibox Plugin v1.3.5

Maintenant, nous voulons par exemple, créer un set qui cache nos objets mais qu’on voit en reflection, refraction, etc etc. Pour cela, comme vous le savez, il suffit de décocher l’attribut primary visibility.

Même boulot que les lampes. Si vous avez compris, cela devrait pas être très dur.

Vous créez un nouveau Set. Vous y mettez les objets que vous voulez. Vous collez l’attribut primary visibility à votre set, et vous le décocher à droite !

powered by WordPress Multibox Plugin v1.3.5

Résultat :

powered by WordPress Multibox Plugin v1.3.5

Voilà !

Linear Workflow :


Que fais l’outil Linear Workflow ? Le linear Worflow connecte un mia_exposure_photographic ou un mia_exposure_simple à votre caméra. Ensuite, il baisse le diffuse de vos shader en les divisant par 2.2, ou place un gamma correcte dans le diffuse si quelque chose y est connecté.

L’outil linear Workflow est très simple d’utilisation.

Le DeexLinearCamChoose a 2 fonctions :

- il update la caméra (regarde si un mia_exposure_photographic ou un mia_exposure_simpleest déjà connecté)

- il update les shaders (modifie leur diffuse)

Merci de ne pas renommer les shaders modifiers contenant le mot « Deex ». En effet, si vous voulez revenir en arrière, il suffit de cliquer sur Delete. Le script se sert du nom des fichiers pour filtrer.

Pass Preset :


Le pass preset permet de créer un fichier .xml avec des pass prédéfinies, de les appliquer dans la scène.

Tout d’abord, choisissez le layer dans lequel vous voulez mettre vos pass.

Par défaut, un preset « basic » est présent. Il comporte les pass : diffuse, indirect, reflection, refraction et specular. Pour l’appliquer, cliquez sur Apply this preset.

Des pass vont être créées dans les options de rendu.

Si vous voulez créez un autre preset de pass, cliquez sur : Create new preset in the XML.

Cochez les pass que vous voulez. Faites très attention, certaine pass ne sont pas supportées par les shaders MentalRay.

En effet, comme la doc l’indique : http://download.autodesk.com/us/maya/2009help/index.html?url=Shading_Nodes_mental_ray_for_Maya_nodes.htm,topicNumber=d0e543403

mia_material_x_passes : Beauty, Diffuse, Direct Irradiance, Indirect, Reflection, Refraction, Specular, Translucence
mi_metallic_paint_x_passes : Ambient Material Color, Beauty, Diffuse, Direct Irradiance, Indirect, Reflection, Specular
misss_fast_shader_x_passes : Beauty, Diffuse, Direct Irradiance, Specular.

La pass CustomShadows est une pass de shadows qui marche avec tout les shaders. Pour cela, il vous faut installer le pack de shader_p trouvable ici : cliquez

En appliquant cette pass, Deex Render Tool créera un WriteToColorBuffers à chaque shader dans votre scène et les connectera automatiquement.

Il connectera ensuite sur chaque WriteToColorBuffer le shader p_shadows.

Résultat : quelque soit les shaders que vous utilisez (même ceux qui ne supporte pas la pass de shadows), une pass de shadows sera quand même calculée !

Pour l’instant, j’ai créé que cette « customPass ». Dans le futur, je pense rajouter d’autre pass. Si vous en voulez quelques unes spécialement, n’hésitez pas en m’en faire par pour que je les rajoute !

Je pense que l’utilisation de cet outil est très simple.

Le fichier DeexPresetPass.xml se trouve dans le dossier là ou il y a vos scripts.

Lorsque vous appliquez un preset, le script crée les pass que vous avez prédéfini dans le XML, les connecte à un set (pour mieux s’y retrouver), et applique le set à votre renderLayer =).

AutoComp :


L’autoComp permet de générer une sauvegarde de compositing avec les pass déjà composité automatiquement.

Actuellement, avec la version v0.5, cela ne marche qu’avec Digital Fusion et qu’avec des pass additives (diffuse, reflection, specular, etc etc…).

AutoComp supporte les passContributionMap !

L’utilisation est très simple, il n’y a qu’un bouton =).

Pour faire un exemple très simple : faites un clic droit sur votre renderLayer et créez un passContributionMap. Pour rappel, un passContributionMap permet de séparer les objets à la fin d’un rendu.

Mettez lui l’objet que vous voulez.

Appliquez le preset « basic » sur votre renderLayer. Appliquez lui une deuxième fois le preset « basic » sur le renderLayer. Par contre, allez dans les options de rendu et appliquez le deuxième preset (le set de rendu) à votre contributionMap.

Si vous ne savez pas comment faire, je vous invite à voir ce tutorial : les pass dans Maya 2009

Configurez votre scène de rendu. Pour un contributionMap, je vous conseille de mettre un format d’image qui supporte l’alpha (tga, tiff, etc etc….).

Faite un rendu de votre scène.

Une fois le rendu fini, cliquez sur « AutoComp ».

Une sauvegarde de compositing sous Fusion va être généré. Ouvrez la avec Fusion et toute vos pass seront déjà compositées !

powered by WordPress Multibox Plugin v1.3.5

Téléchargement :


Si vous rencontrez des bugs, si vous avez des demandes d’ajout de fonctions, ou tout autre remarque, merci de me le dire.

Vous pouvez enregistrer cette article en .pdf. Pour cela, cliquez sur : PDF version en haut à droite.

Téléchargement DeexRenderTool Version 0.78

Comments

admin

Pour la création de mask, tu as ça : http://www.djx.com.au/blog/2010/08/30/mattepassmaker-mel/

spaceded

merci pour l’info !

très bon utilitaire ce mattepassmarker !

Post you comment here





Contact Information

BATAILLE Damien

Phone : + 33 6 84 17 36 78

Mail: deex@deex.info

URL: http://deex.info/

Deex

Le blog de Damien BATAILLE