[Closed] Swap texture at render time first frame of ifl
Maybe there is already a script that can do this, but I couldn’t find one.
The problem:
I have a whole lot of animated billboards that each use their own *ifl – in the current scene, something on the order of 50 different billboards.
When I move the time slider, the viewport really slows down as it is loading the correct frame for each billboard.
What I wanna do:
Be able to have just the first frame displayed while working in the viewport, but use the rest of the *.ifl when rendering.
Can this be scripted in that way?
Or alternately, could it be scripted to switch the texture from first-frame to the *ifl? when I want to render it?
Thanks.
Hey, Couldn’t you just go into yoru material editor, right click on the material go to options, and set them to Don’t Animate… or Update active only or something? not sure if that would work for viewport (sorry dont’ have an animated material here at work)… but that may work…
Options->Don’t Animate and the like don’t seem to have an effect, however:
Going into the diffuse (and opacity) slots under “Time” If I set the “Playback Rate” to 0, then it holds on the first frame.
So, what I would need is a script that will take my selected billboards and set their Playback Rate to 0, then when I am ready to render, be able to set the Playback Rate back to 1.0
OK, I am going to dive into this, but being a little weak with scripting I may ask a dumb question. I’ll prolly post my progress/struggles in case anyone has an idea that may show a better way.
I’m off to hit the docs
-M
do you really need to see them in the viewport? just turn of their maps so you don’t see them
If you really must, place the IFL in the first slot a mix map, and in the second have your chosen frame and set that to display in the viewport, and keep the mix amount at zero.
J.
Yes, I need to see them to tell which person is where, and which way they are facing, etc.
That would be fine, if it was only one or two, which prolly wouldn’t slow things down in the first place…but I am talking about 50+ people.
Not to mention, they are all being merged into the scenes with materials already applied.
Changing the PlayBack Rate takes care of it, it is just a matter of making a script to select and change them all in one go to 0.0, then back again to 1.0 render.
Perusing the docs, I seee that you can indeed change the PlayBackRate with MaxScript.
What I am unclear on is how to access that parameter once I have selected multiple object.
Anybody have a hint or pointer?
Thanks.
Luckymutt, i’m working on a simple script that should change them all to 0.0, and let you change them back to 1.0, Just yesterday was a hectic day at work, and i’m not a very fast scripter haha,
Cool. Sounds like just what I am trying to do, and I have no idea how to do it
I am surprised no one has made something like this before…surely I am not the only one dealing with a TON of RPCs and the like.
I modified a “create billboard” script which is part of the Max help files.
In these heavy scenes, Everything is XRef’d.
The only thing in my active scene are the billboards and the cameras, so for the current PlayBackRate dillemma, it would just be a matter of selecting all objects…no worries about picking the wrong thing.
Thanks.
OK here it is, Just run the script, you have two buttons, one to set to 0.0 and one to set to 1.0, shoudl go through all the materials in yoru scene and change that, If there’s any problems or doesn’t work just let me know.
:bounce: EXACTLY :bounce:
What i was looking for!
Thanks!
Also, that’ll help me with learnin’