The Sacred 2 Addon “Ice & Blood” contains a crystal area which has, in my eyes, pretty nice crystals. Or let’s say, they have very nice reflections. Of course we don’t have any realtime raytracing and also no updating cubemaps. But as you see, there is some reflection going on.
I try to explain, what was explained to me: The trick is, to use the last rendered frame as a reflection source.
1. You would take one pixel which shall get a reflection on. This pixel has a normal (screen space) and you can modify this normal by a factor.
2. You take you last rendered frame and look where the new, modified normal points at.
3. You draw this pixel of the last rendered frame, into the currently rendering frame where the normal “starts”
As a result, the reflection is always 1 frame later in time. But i think that’s not really noticeable. Below i made a shot where you can clearly see how objects and characters are taken and used as reflection.
What i really like is, that even if a NPC is right behind a crystal, it doesn’t look wrong. In that case it looks like a refraction instead of a reflection. Also there is nothing like “only big objects are rendered into the reflection to save performance”.
But of course, this works only for strong “scattering” elements like theses crystals. I think you would notice the wrong perspective of the reflection very fast if this technique would be used for water.