|
Fade Trigger
About Truespace Archives
These pages are a copy of the official truespace forums prior to their removal somewhere around 2011.
They are retained here for archive purposes only.
Fade Trigger // Interactive Artwork
Post by Délé // Feb 27, 2006, 3:42pm
Délé
Total Posts: 1374
|
Hey guys,
I got another one made. :D
This is a Fade Trigger. It hooks up to the (surface, edge, and point) opacities of the "Object Render Attributes" inside of your objects. It does pretty much what you would think. You set the start opacity, end opacity, speed, and trigger time for the fade you would like to perform. You can fade the surface, edges, and points all individually. They will fade from any set opacity to any other opacity (in or out).
I figured this would work good for presentations when you would like objects to fade in or out at specific times during the presentation.
I also went a step further with this one and made macros to automatically hook it up to your objects. You have to be sure to use the correct ones though or it will give errors. There are two macros for if you have the "object render attributes" already active, and two macros for if it's not. You can choose if you want it hooked up inside the object for tidiness, or outside for easy manipulation. In order for the macros to work I exported all of the objects in one .RsLibObj file. So you import the "Fade Trigger" library and then just pull out the macro you want to use to hook the "Fade Trigger" up to your object. (I'm a little unsure but hopefully the macros will work ok)
So, below there is:
1) A .zip file that has the .RsLibObj file inside.
2) A .zip file that has html documentation on how to hook up and use the Fade Trigger.
3) A simple .RsScn file that I made to demonstrate. Just start the timer.
I hope I explained everything ok. Let me know if you have any questions or if something doesn't work and I'll try to answer or figure it out. |
Post by Délé // Feb 27, 2006, 3:43pm
Délé
Total Posts: 1374
|
Here's a few screenshots: |
Post by trueBlue // Feb 27, 2006, 7:03pm
trueBlue
Total Posts: 1761
|
Very cool Dele! Works like a charm. Hooking everything up with a Macro was a nice touch.
Thank you. |
Post by Délé // Feb 28, 2006, 7:22am
Délé
Total Posts: 1374
|
Thanks trueBlue, glad to hear it worked ok. :)
I made a little better demo scene here using the head from the base objects library to show how the Fade Trigger might be used in a presentation. Just look through the cameras view in the player and start the timer in the LE. |
Post by SiRender // Feb 28, 2006, 8:56am
SiRender
Total Posts: 38
|
Yea. Very cool. |
Post by daybe // Feb 28, 2006, 9:04am
daybe
Total Posts: 562
|
Looks good, Dele. |
Post by peterma // Feb 28, 2006, 10:41am
peterma
Total Posts: 48
|
Really impressive, Dele. Nice use of macros as well.
Looks like the (A) and (B) variant of your hooking macros differs only in RenderAttributes connector presence, so perhaps you can manually edit the scripts and create one universal hooking script, detecting the RenderAttributes connector presence and choosing the proper action - like this :
if Node.ConExists(selNode, 'RenderAttributes')
<perform some action .... >
else
<perform different action ...> |
Post by Délé // Feb 28, 2006, 11:17am
Délé
Total Posts: 1374
|
Thanks guys. :)
Peter: That's a good idea, I may give that a try. I also have an idea for a simple switch to allow multiple fades. |
Post by Délé // Mar 1, 2006, 2:02pm
Délé
Total Posts: 1374
|
Got some more. :D
Here's a Switch for the fade triggers. You can filter two fade triggers through the switch so that you can have multiple triggered fades. In other words, you can use this to make things fade in, and then back out again or vice versa. Just filter the two fade triggers through it before outputting to the attributes opacities, and set the time you want to switch from the first fade to the second fade. (oh and plug the timer into it)
Here's a couple screengrabs. In the .zip file below there is the "Fade Switch" and a Scene to demonstrate how it works. :)
EDIT: SORRY, THE FILE BELOW IS THE WRONG ONE. THE CORRECT ONE IS ON THE FOLLOWING PAGE. |
Post by stan // Mar 1, 2006, 2:08pm
stan
Total Posts: 1240
|
cool Dele..could it fade a selected area?..then you could work in hard to reach spots..:D |
Post by Délé // Mar 1, 2006, 2:11pm
Délé
Total Posts: 1374
|
And Another. :D
This is just a basic time Triggered Switch. The output switches from the first input, down the line through the last based on the times you enter.
Just link or type data into the inputs. Then set the times you would like the switch to output each input. The switch moves from (A) through (E) so make sure you set later times for the ones down the line. Then if you notice, there are checkboxes. The switch will bypass an input if it is not checked. It will end on the last one checked. The switch will always start with (A) input though. (oh, make sure you hook a timer up to it too :) )
Here's a couple of screengrabs. The "Triggered Switch" and a demo scene are included in the .zip. |
Post by Délé // Mar 1, 2006, 2:13pm
Délé
Total Posts: 1374
|
cool Dele..could it fade a selected area?..then you could work in hard to reach spots..:D
Thanks stan. :) May be while before I figure out how to do that. :) |
Post by trueBlue // Mar 1, 2006, 4:32pm
trueBlue
Total Posts: 1761
|
Got some more. :D
Here's a couple screengrabs. In the .zip file below there is the "Fade Switch" and a Scene to demonstrate how it works. :)
I think you forgot the files Dele. |
Post by Délé // Mar 1, 2006, 5:05pm
Délé
Total Posts: 1374
|
I think you're right trueBlue, 'doh. :rolleyes: Thanks for letting me know. Sorry about that guys. The second post looks like it has the right files but with the first one (FadeSwitch) I uploaded the wrong .zip file.
Here's the correct one: |
Post by peterma // Mar 2, 2006, 12:49am
peterma
Total Posts: 48
|
Seems you just can't stop, Dele. :D Nice progress, please don't stop.
What about to wrap your fader into a smart one-click interactive apply tool ? I mean you start the tool and then you will click objects on the scene and the tool will apply the fader on the selected object, also will activate the timer so the object start to fade right after being clicked.
If you like the idea, you can explore the existing "Interactive replace tool" in Activities/My Activities library and try to hook it up for your purposes. |
Post by Délé // Mar 2, 2006, 7:22am
Délé
Total Posts: 1374
|
Thanks Peter. Yeah, I'm outta control, lol. :) It's fun making these things.
That's a good idea there too. I had tried that script idea to check if the render attributes was there or not but can't seem to get it to work. Were you just expressing an idea, or is the script if Node.ConExists(selNode, 'RenderAttributes') a real statement?
I got an error when trying to commit with that so I added parenthesis. With the parenthesis I didn't get an error when I committed but did when I tried to use the script on an object. if (Node.ConExists(selNode, 'RenderAttributes'))
I probably should also mention that I did complete the statements. Am I just not phrasing it properly?
Thanks |
Post by Norm // Mar 2, 2006, 11:00am
Norm
Total Posts: 862
|
... if Node.ConExists(selNode, 'RenderAttributes') a real statement?
if Node.ConExists(selNode, 'RenderAttributes')
I believe you use the "if" and an "else", meaning "if" it exists, do such'n'such, else (meaning not found), do such'n'such.
Is this what you are looking for Dele? |
Post by Délé // Mar 2, 2006, 12:24pm
Délé
Total Posts: 1374
|
Thanks for the reply Norm. :) I'm wondering if that statement is a real statement that checks to see if the render attributes exists or if Peter was just suggesting a general idea. I get errors when I try to apply it. If it is a valid statement I would like to use it. |
Post by Norm // Mar 2, 2006, 12:32pm
Norm
Total Posts: 862
|
Thanks for the reply Norm. :) I'm wondering if that statement is a real statement that checks to see if the render attributes exists or if Peter was just suggesting a general idea. I get errors when I try to apply it. If it is a valid statement I would like to use it.
Well I would suggest "selNode" is only item that stands out to me as different Dele. What happens if you try selName instead?
Check how I do it in Objects/Script objects/Object Information/Name test.
That should point you in right direction Dele:)
ps: you ever get any private messages in forums? |
Post by Délé // Mar 2, 2006, 1:22pm
Délé
Total Posts: 1374
|
hmmm... I'll try playing around a bit more. I seem to get an error that says 'Node is undefined'. |
Post by peterma // Mar 3, 2006, 12:49am
peterma
Total Posts: 48
|
Dele, Node.ConExists is a real method that you can use to check if given connector exists in given node. For sure you should use proper parameters (firts one is the node name, second is the connector name), and check return value (true or false) |
Post by Délé // Mar 3, 2006, 5:29am
Délé
Total Posts: 1374
|
Cool, thanks Peter. I'll play around with it a bit more then. :) |
|