How to change animated textures via view port controls?


#1

Is there any way, besides through the render tree, to create a controller object that allows you to switch between clips/textures? Preferably without…scripting?

I have some characters which have animated 2D textures on them for simple facial expressions etc. and was wondering how I might go about doing this out side of the tree so that it’s more interactive (aka no need use the render region).

Currently I have something going using the render tree with a scalar math basic node that is driven by an implicit objects height which in turn drives a gradient mixer with all of the clips in their respective ports. It’s a working hack…but I know there has to be a better way…

Thanks,
g


#2

Look into real-time shaders - I set up something similar (character face expressions) way back when I was a student using real-time shaders and that provided feedback without the need for a region.

Basically the same as what you have now though (I think I used a mix8 colours node and switched via links to viewport objects)


#3

perhaps connecting the fxtree to the image clip and animating the file input’s offset can


#4

I would use ICE to offset the UV coords on a texture sheet. Should be pretty easy to set up, and i didn’t test it but i imagine it would display interactively in texture mode.

However you would only see that texture displayed. If you want to see the full result of your image blended onto the base texture, you will have to take the RealTime Shader route. This will require a bit of CG, HLSL or GLSL coding.

Or you could forgo a WYSIWYG approach, and just attach little icons with animated visibility based on what texture is in use.


#5

Thank you for all of your suggestions. I’ll give them all a try and let you know what I end up using.

Thanks,
g

EDIT:

OK, I tried them out and I think I like the ICE way of doing it since it seems to be the best way to get the control I want. The combination of the integer and multiply node make it easy to move the implicit object but still make sure the image is always a complete one and not half way between two images. The fact that it will just cycle through the grid of images regardless of if you go beyond the UV values of 1 or lower than zero is a nice bonus as well. Only requires a simple tree too…

I can see all sorts of uses for this- really cool!

Thank you Zen for suggesting manipulating the UVs via ICE.

The realtime shader route seems like a good option…but I couldn’t figure out how to use a gradient mixer node with them…I’m sure I’m missing something…but the best I could do was one texture at a time. Admittedly I’m in the dark on RT work in the rendertree…

Using the FXtrees remapping doesn’t seem a good fit, at least at my experience with it, for this. If there were a lot more frames to deal with I think it would be a good option…but working with so few frames made it a bit frustrating to deal with. Still good to know about…need to look into the FXtree A LOT more…unless something better is coming our way…eh?


#6

Just had a look myself… think we’ve lost a few of the old rt nodes I used to play around with. This was back in 2003 mind you! Good to know the ICE solution works well.


#7

I had a go a this by translating the UV in the Texture_Projection then creating a rig through Parameter connection. I used clusters to enable the use of multiple maps so independent eyes are visible in the view port. The scene is pretty rough but I think it could be tuned into something usable.

Scene
http://tiny.cc/U4DFF


#8

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.