This happens pretty much every time I try to bake normal maps. It's quite a broad error message and I still don't know exactly what the problems I'm having are, only that if I keep clicking things for half an hour eventually it sometimes just works.
My understanding of the things needed:
- A "Generated" blender Image that the normals are written to (In UV/Image Editor, click Image->New)
- Tell blender that this is the bake output, below (this is the really confusing bit which blender seems to try to guess and fails)
- A UV Map for the low poly model (you only need the geometry of the high poly and it doesn't need a UV map)
- Under Bake, in the rendering tab:
- Bake Mode = Normals
- Normal Space = Tangent
- Selected to Active = ✓ (for the next bit)
- Select the high rez object first, then the low poly object
- With the two objects selected, click Bake (you may have to move the mouse to see the error pops up)
Now, from what I can tell the only difference between cycles and blender render (with regard to the setup and apart from the internals of baking) is how blender finds the output image:
Cycles
Have a material using an ImageTexture node which points to your normal map output. Then this answer says the node must be selected, but this doesn't mention selecting.
Blender Render
Have a texture attached to the material that uses the image. This tutorial is pretty vague on assigning the output image. Sometimes I've found hitting tab to go to edit mode and selecting the normal map image in the UV editor to help, or at least it seemed to.
I would like to know the exact details of what blender goes looking for when you hit Bake, rather than have to guess by following tutorials. For example, it seems to look for the high and low poly objects in your selection and based off the order you select them. How does it find the normal map/image to write to for both cycles and blender render? Does the Texture need to Influence Normals or does it just need to reference the Image? etc...