Hi,

I am trying to render a reflective floor below my scene. There are things moving
and sometimes poking through the floor as well, but the position of floor and
camera are fixed in relation to each other, so there is no way to ever look
below the mirroring surface.

On doing some research, I found two quite contrary techniques for realizing this
kind of effect:

(1) Duplicate scene (as in the osgreflect example)

The scene is rendered a second time below the surface, the main camera looks
through the reflective surface. Attention must be paid on what could be visible
of the reflected scene, and clipped away appropriately.

(2) Duplicate camera with Render-to-Texture

The scene exists only once, but a second, reflected camera is introduced that
looks from below the surface to the scene and renders it to a texture which is
then projected onto the reflective surface.

The way I see it, the main advantage of (1) would be reflections in the full
rendering resolution, which are paid for by quite a few additional render
passes. The advantage of (2) is that I used RTT before ;), and it seems to be
better scalable (by adjusting the size of the created texture). The primary
focus of my application is interactive performance, and only secondary a maximum
quality of the reflection, which might, for example, be implemented blurred in
later development.

Can anyone further comment on the two opposing techniques, especially in terms
of rendering performance, easy implementation in OSG and in what cases best to
use the one or the other?

Thanks a lot,
Alex.
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to