Maxscript - Random material to selection

Pour vous simplifier la vie
Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 05 sept. 2012, 00:01

Si vous m'écrivez la fonction de conversion V-ray => Maxwell de chaque paramètre, je pense être capable d'écrire un MAXScript de conversion V-ray à Maxwell. (Je viens d'apprendre à créer des matériaux V-ray et Maxwell en Maxscript)

Par exemple, on a trivialement :

Dans V-ray :
Roughness = x avec 0 =< x =< 1

Dans Maxwell :
Roughness2 = y = x * 100 avec 0 =< y =< 100

Qu'en est-il pour les autres paramètres ? Qu'elles sont les limitations s'il y en a ?

Alors qui veut m'aider ? Roch ?

Voici une image à colorier avec paint ou autre, il faut relier les valeurs entre elles (V-ray à Maxwell) : http://img191.imageshack.us/img191/4682/20434359.jpg

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 06 sept. 2012, 09:42

J'ai écrit un script hier qui marche ! Enfin je n'ai pu relier que certains paramètres entre eux car j'ai besoin de vous pour savoir comment se relient les paramètres de V-ray et Maxwell entre eux.

J'attends de vous ce travail, sinon je garderai mon travail pour moi. :lol:

Avatar de l’utilisateur
salvatore
SL24
Messages : 1998
Localisation : Paris

Re: Maxscript - script random material - 3dsmax

Message 06 sept. 2012, 11:14

héhé pas mal...

Comme ca à l'arrache...je vais te dire ca rapidement.

La réfraction dans vray c est la transparence plus c est blanc plus c est transparent.
La réflection dans vray c est le roughness dans maxwell,plus c est blanc plus c est réfléchissant.
le diffuse dans Vray correspond à la reflectance 0 dans maxwell.
après il y a plein de petits paramètres à gerer...

est ce que tu as réussi la conversion pour les maps, je veux dire, l'opacité mapping etc...?
attend avec impatience les octocores et decacores

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 06 sept. 2012, 15:37

Ce que j'ai dans mon code : (au 13/09/12)

Reflect. 0 (Maxwell) = Diffuse (Vray)

Reflect. 90 (Maxwell) = Reflect (Vray)

Transmittance (Maxwell) = Refract (Vray)

nd (Maxwell) = IOR (Vray)

Abbe (Maxwell) = Abbe si la dispersion est activée (Vray)

Roughness (Maxwell) = 100 - niveau de gris de la couleur du Reflect (Vray)

Bump avec ou sans normal mapping (Maxwell) = Bump map / Normal map / Vray Normal map (Vray)

Toutes les maps seront convertis.

Le "Multi/Sub-Object" est fonctionnel.


Ce qu'il me manque à relier : (m'indiquer si j'en ai oublié)

Weight (Maxwell) = ? (Vray)

Attenuation (Maxwell) = ? (Vray)

k (Maxwell) = ? (Vray)

R2 (Maxwell) = ? (Vray)

Anisotropy (Maxwell) = Anisotropy (-1..1) ? (Vray)

Angle (Maxwell) = Rotation ? (Vray)

Scatter Coeff (Maxwell) = VrayFastSSS et VRayFastSSS2 ? (Vray)

Asymmetry (Maxwell) = ? (Vray)

Single Sided (Maxwell) = ? (Vray)

Displacement (Maxwell) = Displacement (Vray)


En rouge, c'est des pistes, mais il faut aller étudier en détail les paramètres.


Voici mes questions / remarques :

Existe t'il une formule qui relie le IOR pour la réflection et le IOR pour la réfraction dans Vray ? Le R2 n'est pas au IOR pour la réflection ? (voir http://fr.wikipedia.org/wiki/Coefficients_de_Fresnel)

Je ne suis pas sûr pour ce que tu dis que la refraction = Opacity / Mask dans le layer dans un matériau Maxwell.
Dans Vray il y a une map opacité et ce n'est pas la réfraction. Quand dis-tu ?

Sinon, le roughness de Vray il sert à quoi ? Il va où dans la conversion Vray->Maxwell ?
http://www.spot3d.com/vray/help/150SP1/ ... terial.htm :lol:

J'ai trouvé une différence : dans un mxm, si le roughness est à 100 le k est désactivé, alors que dans 3ds max celui-ci reste accessible. :shock:


Ps : @Roch Peux-tu déplacer les derniers posts pour les ranger dans un nouveau sujet nommé : "Maxscript - Conversion matériaux Vray en Maxwell"
Dernière modification par Rodman le 13 sept. 2012, 17:31, modifié 4 fois.
Haut

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 09 sept. 2012, 04:21

Vous pouvez déjà tester ma version :

http://ge.tt/51nVUON/v/0

enjoy ;)

Avatar de l’utilisateur
claude
SL06
Messages : 397

Re: Maxscript - script random material - 3dsmax

Message 10 sept. 2012, 11:40

Déjà merci a toi Rodman ,de t'etre penché sur ce script qui devrait en dépanner plus d'un :wink:
J'ai testé et j'ai une erreur :
--Unknow property : "diffuse" in (nom du matériau) :VrayBlendMtl

Winè x64 Max 2012 x64

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 10 sept. 2012, 12:16

Oui, c'est normal. Le code que tu as testé ne marche que pour des VrayMtl et sans "map" du type checker, VRayColor, etc. (la liste est longue)

Merci pour ton message. N'hésite pas à me transmettre les erreurs que tu trouves.

Je suis entrain de rajouter des fonctionnalités. C'est un peu prise de tête tellement il y a de paramètres avec des noms qui se ressemblent.

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 11 sept. 2012, 01:05

Voici ma version 2.0 qui contient déjà environ 300-400 lignes de code :

http://ge.tt/51nVUON/v/1

Qui permet en plus de baker
- les maps procédurales de base dans 3ds max (checker, marble, wood, etc.)
- des maps de Vray (VrayColor, VRayCompTex, VRayMultiSubTex, etc.)

Je vais voir pour les autres matériaux de Vray autre que le VRayMtl tel que par exemple le VRayBlendMtl et le VrayFastSSS.
Et aussi pour les choses comme le VRayDirt et surtout le Multi/Sub-Object.

A vous de tester déjà ma version, et me rapporter vos bugs si vous en avez.

Enjoy ;)

Avatar de l’utilisateur
claude
SL06
Messages : 397

Re: Maxscript - script random material - 3dsmax

Message 12 sept. 2012, 14:07

Merci Rodman ,
Pour l'instant ,pas de problèmes détectés ,cependant ,comme je le signalait précédemment ,la plupart des biblio 3D utilisent des VrayMtl "de base" avec des bitmap en diffuse etc...
Donc pour l'instant dès que un VrayMtl avec bitmap est detecté ,le script se bloque avec un message d'erreur .
Bon courage :wink:
Claude

Avatar de l’utilisateur
Roch
Messages : 7607
Localisation : Marseille - France
Contact :

Re: Maxscript - script random material - 3dsmax

Message 12 sept. 2012, 21:29

merci Rodman, je regarde ça et je reviens ! c'est cool.

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 13 sept. 2012, 10:58

Bonjour Claude,

Peux-tu me donner le message d'erreur que tu as eu ? Et ta version de 3ds max. Et aussi le must serait d'avoir ton matériau Vray qui bloque que je puisse le tester.
Sur 3ds max 2012 et 2013, mon code fonctionne.
Dans mon code s'il y a simplement une bitmap, elle est ajoutée dans le matériau Maxwell, sinon ça "bake" donc devient une bitmap qui est ajoutée dans le matériau Maxwell. Il y a une exception pour le bump map, dans le cas avec une normal map, mais cela n'est que partiellement intégré dans mon code.

Bonjour Roch,

Merci pour la partie "Scripts" ! :)



Edit 2 : Je viens de trouver mon problème pour mon code avec le slot bump map. Je vous uploaderai la version 2.1 ce soir. Vous pouvez avec celle-ci "baker" soit vos bump maps procédurales ou bien vos normal map procédurales. (voici les différents cas que j'ai rencontré http://img109.imageshack.us/img109/6664/33641454.jpg )

Si vous avez des questions, n'hésitez pas à me les poser !



Edit 3 : Je viens de lire ceci sur le forum .com :
Hello Cloudman,

The Maxwell plugin for Max can translate standard Max materials (phong and blinn) into Maxwell materials during the exportation (transparent to the user) so they can be rendered with Maxwell.

Although that translation is not 100% perfect, and can not consider all cases, there should be no problem to render those book directly from 3DSMax to Maxwell (without the need to convert vray materials, etc).

Sophisticated effects including multilayers, varnish ink, etc won't be automatically translated, but it can work.

Let us know the result of your tests.

Cheers!

Dario Lanza
Ce qui m'a paru intéressant, j'ai donc testé (export d'une sphère contenant un matériau standard) mais le résultat n'est pas fantastique. Il exporte du matériau standard que la couleur de base ! Sinon le matériau maxwell reste pareil 1 calque et 2 bsdf (nommés Lambertian et Glossy) dedans : Roughness : 99, Reflectance : blanc pure, Nd à 3 pour celui du dessus et 10 en dessous. Donc au final pas de quoi en tirer une quelconque information.


Edit 4 : Mon code marche avec maintenant le "Multi/Sub-Object" ! Mon code fait maintenant 700-800 lignes (purée déjà !), j'ai lutté pour trouver la parenthèse qui m'empêchait de lancer le script !!! :evil:

Je vous poste ce soir cette version 2.2


Edit 5 : J'ai un problème avec mon code. J'ai : Roughness (Maxwell) = 100 - niveau de gris de la couleur du Reflect (Vray)
Le problème est que s'il y a une map, le roughness ne prendra pas la teinte moyenne de l'image mais la couleur associé au reflect qui dans mon cas était noir pur soit 100 en roughness. Donc il faut que je trouve un moyen d'obtenir cette "teinte moyenne".

Sinon j'ai fait un test sur un multi-matériaux Vray avec 3 sous matériaux VrayMtl assez complexe. C'est décevant de voir à quel point la conversion sera approximative. Mon code fait déjà beaucoup de ligne et si je veux obtenir une finesse de conversion, il se peut que le code soit très complexe à coder.

Avatar de l’utilisateur
dec13els
SL17
Messages : 1020
Localisation : A>P
Contact :

Re: Maxscript - script random material - 3dsmax

Message 13 sept. 2012, 19:09

Ah tain depuis le temps que j'attendais que quelqu'un se frotte au dev de ce script :D c'est tip top

J'ai super pas le temps de tester et voir si je peux aider pour la bascule entre les deux editeurs. Mais déjà quelques remarques : attention depuis la nouvelle version de gestion des mxm, maxwell marche par calque, ce qui complique bcp les choses. Donc en gros 1 layer d'un mxm = 1 mlt vray. Donc en gros un mxm qui comprend 1+n layer = un vray blend (mélangeur de mlt)

Ensuite ne pas confondre le Roughness de maxwell et Celui de vray qui est apparu il y a peut :

mxm Roughness ( 0 a 100 ) sur layer sans transmittance = Réflexion glossiness (valeur de 1.0 à 0.0 )

mxm Roughness ( 0 a 100 ) sur layer avec transmittance = Réfraction glossiness (valeur de 1.0 à 0.0 )

Toucher à l'atténuation est risqué et complex pour lui trouver l'équivalence vray

Ne pas affecter par défaut la diffuse Map dans le slot Reflectance 90 ( cas particulier )
~ ɹǝʌǝɹoɟ ||ǝʍxɐɯ ~

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 13 sept. 2012, 19:27

Merci pour ces informations dec13els.

Oui, je m'étais trompé au début avec le roughness ce que j'ai bien sûr rapidement modifié. Il faut dire que ce roughness dans Vray c'est vraiment bidon...Cela donne encore moins envie d'utiliser Vray pour avoir du photo-réalisme.

Il me faudrait une scène simple de Maxwell et la convertir avec des lumières Vray, pour pouvoir simplement vérifier tes dires, bien que je te fasse confiance mais il se peut qu'il y est des nuances à apporter pour avoir exactement le résultat voulu, surtout sachant que par défaut le rendu Vray est souvent mal contrasté, avec un voile gris dessus.

Bref des exemples en image (comparaison image Vray et image Maxwell) cela sera bien pour approuver chaque fonction de conversion.

Pour quelles raisons tu notes le cas particulier de la Reflection 90 ?
Dans mon code j'ai : Reflect. 90 (Maxwell) = Reflect (Vray)

Avatar de l’utilisateur
dec13els
SL17
Messages : 1020
Localisation : A>P
Contact :

Re: Maxscript - script random material - 3dsmax

Message 13 sept. 2012, 19:40

En tout cas je tiens à te remercier pour ce projet, ce que j'aimerais savoir Develloper moi...

cas particulier sur la diffuse a 90 car par défaut je la mets jamais, seulement sur des mxm qui parfois sortent mal je pense que l'on pourrait parler de map falloff avec deux diff pour vray.

Attention le Roughness de maxwell ne vaut pas la valeur de gris du réflexion de vray mais le parametre de reflexion glossiness, le paramètre qui va influer sur la "puissance" de la réflexion dans le mxm sera la valeur ND
~ ɹǝʌǝɹoɟ ||ǝʍxɐɯ ~

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - script random material - 3dsmax

Message 13 sept. 2012, 20:45

Tu aurais pu faire ce que j'ai écrit, ce n'est pas sorcier. Il faut juste un peu de volonté et beaucoup de concentration pour ne perdre le fil de son raisonnement.

Je vais faire les modifications que tu proposes dans les prochaines versions de mon code.


Voici cependant ma version actuelle 2.2 :

http://ge.tt/9vRi9gN/v/0

Répondre