Tutorials

Quick View Other Tutorials   

Animating Material Room Textures

For use with Poser 7 as well as Poser 5 or 6

Not all of Poser's material properties can be keyframed- but if you're willing to take a trip into the Advanced Material Room (the regular Material Room in Poser 5) you can use a special type of node to create animated textures and produce all kinds of interesting effects.Some of Poser's material properties can be keyframed- values can be set for the particular propery at various points in the timeline, and Poser will change the value over time. Material channels that will accept keyframes are marked as shown-

and you need merely click the key icon and select Animated to allow the value of the channel to change over time.

If you're willing to take a trip into the Advanced Material Room (the regular Material Room in Poser 5) you can also use a special type of node to create animated textures and produce all kinds of interesting effects even for channels that can't normally be animated. In this tutorial we'll set up a pair of animated transparency shaders (although transparency can also be keyframed) that will cause one surface to appear while another one disappears.

We can start with the default James Casual figure (Poser 5 users can use Don Casual); to this scene we'll add the Black Widow Spider from and a rock from the Poser 5 Content CD. We'll start off in frame 1 with the spider invisible (we'll set this up in a moment) and James peacefully unaware of the dangerous arachnid lurking nearby.

Now, we'll go to frame 30 and set James' pose to an appropriately terrified attitude; when we're done, in this frame the spider will be completely visible and James' T-shirt will be invisible. We'll see the results in a moment.

To animate the change in transparency on the T-shirt, select James and go to the Material Room; in Poser 6, click the Advanced tab. Choost the TShirt3 material on James (or choose Don's T-shirt material), create a new Math_Functions node and set it to Add; set Value_1 to 1.02, and Value_2 to -0.034, and hook a new Variable>Frame_Number node into Value_2. Now, connect that Math_Functions node into the Diffuse_Value, Specular_Value, Transparency and Transparency_Edge channels of the Tshirt3 PoserSurface node, and set the values of each channel to 1 as shown.

Now, to set up the animated transparency on the spider, do almost the same thing- select the spider and choose the SpiderBody material (its setup is a little complicated- don't worry, what we're doing won't change the existing nodes or connections.) Create a new Math_Functions node and set Value_1 to -0.02 and Value_2 to 0.034, and connect a Frame_Number node to Value_2. Now, as with James' shirt, connect the Math_Functions node to the Diffuse_Value, Specular_Value, Transparency and Transparency_Edge channels, and also to the Specular_Value channel of the Anisotropic node as shown-

You can copy the Math_Functions and Frame_Count nodes (select both nodes by Shift-clicking and copy by selecting Copy from the little disclosure triangle in the upper right corner of the Material Room pane) and paste them into the other spider materials; attach them as described above to set up animated transparency for the whole spider.

Now you may be wondering, what's going on behind the scenes? What are these nodes actually doing? Perhaps the best way to describe this is to show a diagram illustrating the process.

As you can see, the Frame_Number node supplies a number from 1 to 30 (for our scene- if your scene is longer you'll need to change the numbers a bit.) The Value_2 channel of the Math_Functions node breaks that number down into small, evenly spaced increments (in this case, each increment is equal to 1/30 or about 0.034, determined by the value that we set for that channel) and then that amount is added to or subtracted from a starting value (stored in Value_1) such that, as the frame count gets big, the transparency increases or decreases smoothly.

Why not just hook the Frame_Number node directly into Transparency? You've probably already noticed that Transparency takes a value between zero and one; since our frame count starts at one, the range of values that Frame_Number supplies just aren't what the Transparency channel is looking for. The Math_Functions node allows us to change the raw frame count into numbers that produce the transparency values that we need. You could (if you wanted) set the Math_Functions node to use any of a wide variety of math functions, up to and including trigonometric operations (to get a fluctuating transparency value, try a sine function!)

In this case, the effect is as shown below (these are stills taken at frame #1, frame #15 and frame #30.) Note that, if you want realistic shadows that use this transparency effect, lights should be set to use ray-traced shadows, and thus ray-tracing should be on in the scene's Render Settings.

And there you have it- animated textures!

Thanks and kudos to Steve Harms for fact-checking this....