I have a simple scene of a reflective sphere which reflects the hdr map of its surroundings. See the example image below.
My intention
As the sphere moves around the scene the image reflected unto the sphere changes as expected. I want to take the exact (or as near as possible) image currently reflected from the sphere and apply it to another object, preferably by saving it first. This would mean that in essence the image now appears to be 'painted' on top of the other object.
See this short video example. In the first 5 seconds of the video the object has a typical reflection and as the object moves, the reflection changes depending on the scene. In the last 5 seconds of the video, the reflection no longer updates/changes and instead simply moves with the object making the object appear to be matte instead of reflective.
Things I tried
I have tried a few promising methods suggested to me in a previous question, but regretfully none of the methods lead to the desired result.
I tried to bake the current texture, which returns something looking quite similar but not identical to the original reflection. See the example image below. The right image is the reflective sphere (same as the own shown in the image above) while the left image has the baked texture of the right sphere applied to it as an image texture.
As can be seen, the right sphere has the(more or less) physically correct distortion associated with circular object reflections (more distortions towards the edges, etc.,) while the left object does not.
As suggested by user Emir I tried a workaround of rendering the scene using a panoramic cameras at the origin of the right cube and applying that render as an image texture on the left cube, but regretfully this returned in similar problems as the other attempt mentioned above.
Edit As per Emir's answer, my previous approaches were missing an emission node and using an image texture instead of an environment texture