Viewing Animated Textures in the 3D view

Is it possible to have an animated texture that displays and animates in the 3d View?

I have a UV-mapped mesh that has an avi file as its texture. Frame one of the animation is visible in the 3D window when the draw type is set to textured, so I know that the animation is loaded and mapped correctly. And when I change frames or animate with Alt+A in the UV/Image Editor window, I see the texture animate there, so I know that all of the frames are loading properly and are synchronized with Blender’s timeline. When I render my animation, the animation plays back on my mesh properly, but my mesh in the 3d view still just displays frame one.

I can click on the reload button for the texture and the texture jumps to the appropriate frame in the 3d view, but other than that the animation doesn’t play back in the 3d view. I want the animation on the mesh to synchronize its animation with the current frame. Is what I’m trying to do even possible?

I’ve searched this and other forums and tutorials and haven’t found quite the right question or answer that would help me here. I’ve been flailing around in Blender playing with the real-time properties window and all of the other image settings including auto refresh, but still no luck. I know about setting the background image in the 3d view, but that doesn’t quite give me what I need. I’m using Blender 2.43 on Windows.

Any help, even a simple “That’s impossible”, would be appreciated. Thank you in advance.

have you tried textured viewport shading in your 3D View header (instead of wireframe)?

Indeed I have. And when I do that (as I briefly mention in my second sentence) the texture does appear on the mesh. I can see the animated texture, it just doesn’t change to the appropriate frame when I change Blender’s current frame or animate when I press Alt+A.

I know that the animation is loaded correctly, because the animation plays perfectly UV/Image editor window. Tt’s just in the 3d view that it doesn’t update.

I haven’t tried this before, but I just tried setting it up and am seeing the same thing as you are. But I also can’t get the animated texture to render. I added a material and turned on the TexFace button, but that didn’t do the trick, I’m only seeing an “unanimated” version of the texture. Do you need to use UV mapping? I think with an “ordinary” image-texture it’s possible to see the animated texture in the viewport, but I don’t remember the setting(s) for that to make it work … I’ll go looking for that thread. Mike

Just click the AutoRefresh button in the BackGround Image tab.

%<

I don’t know if you need to use UV mapping to get the texture to render in an animated fashion, but that’s the technique I used and it plays in the render. Have you set the number of frames to be that of your movie? Also see my response to Fligh about auto refresh.

Hopefully your Search Fu is better than mine, thanks for looking.

I have autorefresh is checked for the background image, and the background image does animate. I have also found autorefresh to be necessary to get the image to animate in the UV/Image editor, but having it set in both of those places and in the texture besides still doesn’t cause the texture on the mesh to animate, which is what I’m looking for.

Weird, it works for me. Try Shft-Alt-A with your mouse cursor in the UV/Image Editor. If that doesn’t work turn off AutoTexSpace in Links and Materials tab, and/or run thru it with the arrow keys instead of Alt-A.

%<

I don’t mean a background image, I’m talking about an image texture applied to a plane/cube etc. I thought there was a way to see the mapped image in the 3d viewport on the mesh. (Whether it’s animated or not) … or any type of texture for that matter (Non UV mapped) Mike

http://uploader.polorix.net//files/111/MovieTex1.blend
Sorry Mike, I wasn’t very clear, I remember the thread you were going to look for and thought I’d jog your memory. This is an old thing with movie textures. If they don’t animate in the BGImage then you link them to an Object and if they don’t animate on an Object you link them to the BGImage.

%<

That blend file is setup just like the blend file that I created, and the same things work and don’t work in each, for me. The texture animates when it renders, but it still doesn’t change frames on the model as I play and scrub with the Blender timeline. I can see the first frame mapped onto the model, but it just stays that way.

Does the blend file that you posted work on your system to do what I’m trying to do or was it just an example of using a video in the background image and as a rendered texture?

Just to clarify and make sure we’re both attempting to do the same thing, my video is wrapped onto a more complex mesh and I need to synchronize other parts of my animation with the video, not just in time, but in space, too. Because of the complexity of the mesh, using the background image doesn’t quite work, and because what I’m doing needs to be synchronized in time, just viewing the first frame on the mesh doesn’t work either, and because it’s animating that I’m trying to work in with the video, using the final render doesn’t work very well either. Also, being able to view the model with the animated texture from any angle would be a huge plus.

Looking closer, the image properties window in the UV/Image editor changes when the mesh is selected and mode is togged between the Object and UV Face Select modes. When in object mode, the properties window includes the animation properties such as auto refresh and cyclic, but when in UV Face Select Mode (which is the mode that controls what image is displayed in the 3d view) those animation properties disappear. An autorefresh right there seems like just what I need, but I’m sure there’s a reason for thier unavailability. Perhaps what I’m trying to do isn’t supported.

Everything we’re doing here comes so close, but doesn’t quite get there. Perhaps I should look into a Python based solution. I was hoping particularly with the new imaging rewrite that this would be supported.

The anim in the file I posted works on my system; it displays all frames, in the UV/Image Editor, on the BackGround Image and on the Plane Mesh, in Object mode and in UVFaceSelect mode, with Alt-A, Shft-Alt-A, Arrow Keys and Timeline Scrub. Yes, it animates on the mesh.

%<

Boy, Fligh, I sure appreciate your patience here. Unfortunately, it’s still not working for me. What you describe that your system does is exactly what I’m looking for but it’s just not happening.

I downloaded the blend file that you posted and unpacked the texture. I’ve got flames on a green background animating everywhere but the object. I wonder if I have some kind of install or setup issues.

Thanks again.

Hmm … Linux or Windoze … or Mac ??)

Doesn’t work for me either … 2.43 or CVS on Win XP.

Mike

Win XP 2.43 with an antique Blade 3d card.

%<

Hmm, well that’s good and bad news :slight_smile:

I was almost sure you were going to say Linux … and that it’s a 'Doze bug :wink:

So, then it should work on my system … but it doesn’tt :confused:

Enigmatic, what O.S. are you running?

Mike

That was going to be my next question, too, Mike. I’m running on WinXP SP2 with a Nvidia GForce4 dual monitor with the horizontal span option. Blender is 2.43 Version Win32 Dynamic, built 2007-02-16 at 11:32:18. I installed Blender using the Windows installer over the top of 2.42a.

Are we at an impasse here? Fligh has it working, but Mike and I do not, and we’re all using pretty much the same setup, and exactly the same file. Since Fligh has it working, it seems like we should be able to also. I don’t see anything else obvious to try that I haven’t yet.

I would like to get this resolved, not just for myself, but for anybody else for whom this isn’t working, too. Is there anybody else who has this working or that wants too but doesn’t? Is there another approach I could use, anything else I could try on my own? Is there another place that I could ask for help?

Yes, seems we’re at an impasse. I have since tried it with image sequences and other avi’s with mixed results. Most of the time it won’t work. The file I posted works out the box until I open it in 2.42a then it won’t work in 2.43. I remade it in 2.43 and it worked, but I can still only get one other avi file to work. I am now busy experimenting with alternate filepaths to texture files as there don’t seem to be any issues with the Material and Texture settings. One thing I did find though is if MipMaps is on in User Prefs then the displayed texture on the Object displays the last frame of the avi even if another frame is shown in the UV/Image Editor and the BackGround Image.

%<

I have mipmaps off, both in the System OpenGL settings, and in the map image window for the texture. I have tried two or three different AVI files, both with relative and absolute paths. I have tried animating the mesh object. Hitting the reload buttons on any of the image properties windows causes the mesh to update its texture to the appropriate frame. That works reliably in all situations that I’ve tried, but has to be done manually for each frame. Other than that I have had no successes yet.

Well, here’s an ugly, dirty hack that’s slow besides. I’m not proud of it, but it works at least.

Enable Script Links, add a new scene script link of type text with the event set to Frame Changed, and in a text window, set the script to:

import Blender as b
I = b.Image.Get("Image Name Goes Here")
I.reload()

It gets to job done, though I’d like to find a more elegant way to get results without the big slowdown of continual reloads.

Oh and by the way, do you think my problem here is a result of my own lack of experience, or is it possible that this is something that they’de be interested in hearing about on the dev boards? If it was just me having problems I’de think just the first but between all of us in this thread only Fligh has had success and that’s been intermittant.