Videos on surfaces in 2.6

I noticed in the latest version of Blender (don’t remember if 2.4 allowed this) that you can select an image sequence or movie and place it on a surface. When “auto refresh” is enabled, the texture will play as the timeline advances, which is a feature I already used in blender render.

Does this also work in the game engine, or do you still need a script to play movies on surfaces (for things like screens)? I’m inclined to think this should work without a script because it shows in the 3D view, and as a general rule what works there will work in BGE. But when I set the movie texture and enabled auto-refresh it still showed only the first frame… even if I set an f-curve actuator on that object. Anyone have more info on this?

You can use the texture module to play any format supported by ffmpeg.

I don’t have a specific tutorial for that, but I did make one that uses Render To Texture, via the same api, so that might be helpful in this case:

@MirceaKitsune - Which means that you’ll need to use Python and a script. Python is used to tell the game engine to swap out the object’s texture with the next frame of the video.

I’m not sure about getting it working just with the native methods, but you can get it working very easily with just a couple of logic blocks and a tiny python program.

videoTexture.blend (77.7 KB)

In the text file just change the path and file on the first line keeping the ’ ’ quotes intact. (If your using windows you have to use / characters in your paths instead of \ characters)

*This is a test project I adapted from another members post for an older blender project in the forum