Maxscript - IBE string avec #

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

Maxscript - IBE string avec #

Message 23 déc. 2013, 16:04

Configuration: 3ds Max, current render: Maxwell Render.

Dans la partie Image Based Environment (IBE), les string (chaînes de caractères dans Maxscript) s'affichent avec une bizarrerie:

Prenons par exemple le premier champs, celui du background.

En Maxscript pour obtenir ce champs affiché (la string) il faut lancer ce code:

Code : Tout sélectionner

print renderers.current.ibeBgImagePath
Si on a rien sélectionné, on a un champs vide, et on a string = "#" au lieu de "" (donc rien)
Si on a sélectionné une map, on a un chemin valide, et on a string = "#C:\doubleRainbow.hdr" au lieu de "C:\doubleRainbow.hdr"

Il faudrait demander aux développeurs du plugin pourquoi avoir laissé ce "#" qui ne suis pas la logique des champs vides avec Maxscript.

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - IBE string avec #

Message 23 déc. 2013, 16:36

Si on lance la commande suivante:

Code : Tout sélectionner

show renderers.current
On a la liste exhaustive des paramètres (on aura pris soin avant de mettre le moteur de rendu Maxwell), et la paramètre ibeBgImagePath est censé être du type string (le code affiche: .ibeBgImagePath : string) alors qu'il ne l'est pas car si je "caste" (= conversion de type) la variable en string comme ceci:

Code : Tout sélectionner

renderers.current.ibeBgImagePath as string
J'arrive à lire la string.

Par exemple:

Code : Tout sélectionner

(renderers.current.ibeBgImagePath)[1] --donne une erreur alors que ça devrait marcher car c'est censé être une string !
alors que

Code : Tout sélectionner

(renderers.current.ibeBgImagePath as string)[1] -- fonctionne !
Le [1] permet d'afficher le premier caractère de la string.


Il y a pour moi une incohérence à corriger dans le plugin Maxwell.

Ps: je suis avec le plugin 2.7.37 mais bon cela doit être surement pareil avec le plugin de la version 3 car j'ai l'impression d'être l'un des seuls à triturer le plugin avec Maxscript pour trouver des choses pareilles. :mrgreen:

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - IBE string avec #

Message 23 déc. 2013, 17:48

Code : Tout sélectionner

classof renderers.current.ibeBgImagePath
Le type de variable de renderers.current.ibeBgImagePath est un type name et non pas string !!! (c'est bien sûr pareil pour les autres variables censées être de type string dans l'IBE)

Quelle arnaque ! Il faut demander de modifier le plugin pour vraiment mettre un type string ou bien de modifier le plugin pour que quand on fasse un "show renderers.current" on ait bien un type name affiché ! C'est énervant ces petites erreurs ! :evil:

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

Re: Maxscript - IBE string avec #

Message 23 déc. 2013, 19:45

pas taper pas taper... je transmets tout ça... merci

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - IBE string avec #

Message 23 déc. 2013, 20:42

Merci ! :D

Heureusement que tu es là pour traduire mes propos en mieux et en espagnol ! :mrgreen:

Code : Tout sélectionner

classOf Roch -- affiche God
8) 8) 8)

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

Re: Maxscript - IBE string avec #

Message 23 déc. 2013, 23:37

classOf Roch -- affiche God
ça sonne bien, je vais m'en faire un tshirt

Avatar de l’utilisateur
Rodman
SL17
Messages : 1055

Re: Maxscript - IBE string avec #

Message 23 déc. 2013, 23:39

chiche ! :D

Répondre