Well, your right and that's what I was trying to say in my last reply... I
misread the problem and gave a wrong answer. I though the parameters where
visible so that's how I based my answer. Now that I realize what the real
question was, I totally agree with your method and it is the easiest... I
just highlighted that if you wanted both options available then that would
have been one way to go and now I realize that probably the best way would
be to just change the original spdl and actually give the user the option to
turn it on or off. Anyway, bottom line is I just misunderstood the question.
-----Original Message-----
From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM]On Behalf
Of Matt Lind
Sent: Thursday, September 28, 2006 4:51 PM
To: xsi(at)Softimage.COM
Subject: RE: replacing spdl files
Uh....Your method is more work and can potentially cause more issues.
Making a brand new SPDL is more work than updating an existing SPDL and sets
you up for problems if you forget to update one of the GUIDs or update it
incorrectly as some GUIDs have fixed values (such as output data type or
phenomena connections). A new SPDL introduces organizational issues for
both new and legacy scenes as users now have to manage it. A pain when they
encounter scenes with two different shaders that do the same thing as
confusion often results. Confusion leads to errors and less production
efficiency.
I suggested updating the existing SPDL by changing the default values for
the parameters in question then reinstalling the shader - that's it, nothing
else. That means opening one SPDL in a text editor, changing a couple
lines, saving it, then reinstalling. I don't see how this is "quite long
and painful". There's NO monkeying around with GUIDs or other registry
crap - which makes it quite safe. New scenes will automatically see the
updated SPDL, legacy scenes will have to be manually updated (by script or
otherwise) because the XSI records shader parameter values upon scene save
which override the defaults in the SPDL. Most importantly - **the user's
workflow doesn't change**.
Matt
-----------------
Matt Lind
Animator / Technical Director
Softimage certified instructor:
Softimage|3D
Softimage|XSI
Matt.Lind(at)Mantom.net
(available)
Date: Thu, 28 Sep 2006
To: XSI(at)Softimage.COM
From: mleclair(at)hybride.com
Subject: RE: replacing spdl files
Then you just give it a new name... but of course you create a new shader
and you have to use that one from now on but you'll get your settings by
default. If you have old scenes that you want to update to the new setting I
guess you have no choice but to do a script to do it. It all depends on what
you want to do. You basically just want to turn some switches on. If you
want them to be on by default from now on, I see a few possibilities:
First one is to do Matt's method and change all the spdls on all the
machines. Quite long and painful depending on how many machines you have.
The second one is coping the spdl in your workgroup, rename it, change the
guids and the default settings of the switch you want to change.
Or for a third option, you could simply create a script that'll import the
default shader and activate the switches at the same time and use this
script/button/where ever you want to call it from, and use that to get the
shader in the rendertree with the proper settings.
There might be a fourth option if you can set-up an event for when you get
this shader so that it'll change the settings of that new shader instance
when that event is triggered. If it is possible then you wouldn't even have
to worry about creating a button or what ever but I don't know if that event
exists. I haven't played around a lot with events lately.
Hum... just got another idea... I guess you could add a script to your
workgroup that would be triggered by an event (XSI turns-on for example)
that would go and update the local spdl of that shader so now anyone who
adds that shader will have the new updated spdl.
You have plenty of possibilities here. And like I said, if you want to
change old scenes, you're gonna have to script it or your gonna have to do
the changes manually. So I guess the only real question here is: how good
are your scripting skills?
I hope that helped you out in one way or another. Let me know if you want
more details.
Mathieu Leclaire
R&D Programmer
Hybride Technologies
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi