I have a character walking in an environment texture image (HDRI) and a camera pointing at him, if camera is just in the same position, ok!, but if camera is rotating or following a path, there is no relation between the walking charater and the background environment and in some circunstances it seems the character is walking backward (damn!). How can solve this easily? help.
The issue is that the background HDRi is infinitely far away. Moving the camera parallel to a moving object will not create the illusion of movement, since the background will always be the same: there is no shift in perspective or elements that transform somehow.
A camera move like this
Will result in:
The HDRi is generated at a single point in space and is valid for only that point. So the only possible motion that would be realistic is rotation with no camera displacement. Any displacement would require different visual information for every position in the 3d world (like in Google Street view, where you have the 360 view for one point, translating the view will generate a completely new view)
In real life the motion in the background would be according to the distance from the camera to the object, objects that are close would appear to move at a faster speed than those very far away.
Possible solutions would be to use different layers of background planes that would move at different rates. In the far background the HDRi could even remain stationary without braking the illusion of movement.
As an alternative the moving element could move in a circular path around the camera and the camera just rotate following the moving object, the background would seem to move (when in reality the view is changing). This would create the illusion like it does in cartoons where the characters move in an ever looping background.
Alternatively the moving object could stay stationary and by animating the coordinates for the background, the background could rotate creating the illusion of movement.
In the World section of the Material nodes add a Texture Coordinate node and a Mapping node to control the placement of the Environment texture. By changing the rotation on the mapping node you can place the HDR where you need it.
I experienced this exact same problem in blender 2.77. I upgraded to 2.78a and my environment maps were no longer locked to the camera. One fellow on IRC stated that 2.77a worked fine for him.