9
$\begingroup$

I'm trying to animate a mesh with different eye textures but it's not working.

mesh with texture to animate

This is a texture made by me to animate but I still couldn't figure out how to do it. I've seen tutorials on the internet but they don't work to me.

$\endgroup$
2
  • $\begingroup$ Something like this: youtube.com/watch?v=BopkonvbCEE ? $\endgroup$
    – user1853
    Oct 31, 2014 at 3:30
  • $\begingroup$ Simillar yes, i´ve already watched that video but i cant make it work with my face mesh:S $\endgroup$
    – Warianos
    Oct 31, 2014 at 20:41

2 Answers 2

12
$\begingroup$

You can use an addon called Animall to animate the texture. enter image description here

CYCLES

  1. Activate an AnimAll add-on (File--> User Preferences--> Addons--> AnimAll). It'll be displayed in the tools menu in the 'Animation' section.

enter image description here

  1. Setup the image texture in the Node Editor. Enter the "Edit Mode"and unwrap the mesh (press U in 3d window) using the Project from view.

enter image description here

  1. In UV/Image Editor place the UV island on the desired part of the image texture (note that you have to make perfect spaces between images in graphics program. In this case the images have 200 px of space between them).

enter image description here

  1. Check the 'UVs' box and insert the first keyframe (clicking 'Insert').

enter image description here

  1. Go to the next frame (right arrow), place the UV island on the next part of the image texture (in this case i go 200 units along x axis) and inesert the keyframe again. Repeat this process moving right.

enter image description here

  1. Place the UV island in the lower row (in this case I move the uv island -600 units along x axis and -200 units along y axis)

enter image description here

  1. Continue the proces and position the UV island on the last image part (of course the moving patern could be different). Go to the 'Object Mode' and play the animation (alt+A).

enter image description here

8.- Select all keyframes on the dopesheet (or Graph editor) and set them to Constant

enter image description here

  1. You can also prepare the texture like this, so it will be easier to jump between images. Remember about doing perfect spacing between them.

enter image description here

  1. Go to NLA Editor, change the action name (CTRL+LMB) and click the 'double arrow' icon.

enter image description here

  1. Now you have your 'blink animation' in one block and you can place it wherever you like on the timeline.

enter image description here

Hope I helped.

--------------------------------------------------------------------------------------------

BLENDER INTERNAL RENDER

I'm adding an update, since Warianos wants to know how to do the same thing in Blender Internal. So here it goes:

  1. Select the mesh you want to have an animated texture on it, and in Shading panel change the Material Mode from Multitexture to GLSL. Add a lamp (a sun lamp for example), so you'll be able to see the texture when you apply it.

enter image description here

  1. With the object selected in Object Mode go to the Materials Panel. Add the material. Set the Diffuse and Specular values if you want.

enter image description here

  1. Go to the Textures Panel, set the texture type to Image or Movie, then click the Open button in Image panel and load your image.

enter image description here

  1. In Mapping panel set the Coordinates to UV.

enter image description here

  1. In 3d window set the Viewport Shading to Texture

enter image description here

  1. Load an image in Uv/Image Editor window. Unwrap the mesh using Project from View option. Enable an AnimAll addon and check the Uvs box.

enter image description here

  1. Now the process looks like in my previous answer. You press Insert in AnimAll panel and add a keyframe. Then you go to other frame, change the Uv island's position and press Insert again.

enter image description here enter image description here

  1. Being in Object Mode, with the Viewport Shading set to Texture you can now play an animation to check out how it looks like. If you don't want the smooth transition between images you may set the Curve Interpolation type to Constant, by pressing T in graph editor window (as Cegaton suggested in his answer).

enter image description here

Hope it is what you wanted to know.

enter image description here

$\endgroup$
8
  • $\begingroup$ I am glad to hear that :). Could you please mark this answer as useful? $\endgroup$
    – Paul Gonet
    Nov 6, 2014 at 17:17
  • $\begingroup$ I guess i´ve already done that:s humm isnt it the "right" icon? $\endgroup$
    – Warianos
    Nov 6, 2014 at 21:39
  • $\begingroup$ Gonzo do u know which nodes are required in blender render to make the trasaction from frame to.frame not smooth? I mean only showing where at x frame is the selection. U did this in cicles but i would like to know if its possible in normal render or game render. Thank you! $\endgroup$
    – Warianos
    Dec 25, 2014 at 3:29
  • $\begingroup$ Thanks alot Gonzo really! And im sorry for taking you time $\endgroup$
    – Warianos
    Dec 30, 2014 at 12:17
  • $\begingroup$ Gonzo let me ask you one more last thing, if i export this animation for unity for example, it should do as done here right? $\endgroup$
    – Warianos
    Dec 30, 2014 at 12:22
8
$\begingroup$

Using a UV project modifier you can use an empty to control the mapping of the texture.

On your UV unwrapped object create a material that uses the UVs

enter image description here

Load your image in the background of the 3D view. Add an empty and scale it to be the size of your picture. The numbers for the scale will help you determine the offset between each of the different expressions for your character.

enter image description here

Select your object and add a UV project modifier. On the modifier set your image, use image override, and set the Empty as projector.

enter image description here

Now the texture of your object is controlled by the empty. If you move it around you can use different parts of your image as texture.

Move the empty and create different keyframes for different expressions.

On the curve editor set the interpolation between keyframes to "constant"

enter image description here

enter image description here

Example blend here

$\endgroup$
1
  • $\begingroup$ Would this work in Unity? Also, do you still have the source file? $\endgroup$
    – m0a
    Jun 3, 2020 at 12:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .