Water Reflections + Different Planes

Started by
16 comments, last by riuthamus 11 years, 2 months ago

Normally, you would have 1 plane and reflect from there. How do you do this when you have 15 different planes? With a block based world we could have reflections coming from all over the place depending on where a player placed the water

Advertisement

You mean 15 different planes of water? Or something else like reflective blocks, etc...?

“If I understand the standard right it is legal and safe to do this but the resulting value could be anything.”

think levels. Maybe the water is flowing down, how would one reflect the part that is flowing down? We already have 1 reflective surface based off of a very large plane. What if the water moves or moves to another plane... how to reflect from there? Telanor should be up in about an hour, when he gets up i will have him post here and give some more information.

It's not so much flowing water we're trying to deal with but rather lots of flat pools of water on different planes. How do you get proper reflections for all of them without having to render the scene for each pool individually?
It's not so much flowing water we're trying to deal with but rather lots of flat pools of water on different planes. How do you get proper reflections for all of them without having to render the scene for each pool individually?

You could try using screenspace local reflections. To hide ugly artifacts with screenspace technique limitations create one cubemap that contain close enough result for reflections. Blend between local reflection and cubemap when reflection vector start to point towards camera. This method will give you reflections everywhere so you need to use roughness, specular color or someting else to dampen spots where you don't want mirror like reflections.
Aren't screen space reflections only suited to smaller indoor areas? And how would you use a single cubemap work for all the different reflections?
Aren't screen space reflections only suited to smaller indoor areas? And how would you use a single cubemap work for all the different reflections?
Cubemap would be used only if screenspace does not contain valid data. Sky box would be good candidate for it.
It does no matter much if the area is indoor or outdoor because everything is gathered from screenspace so relative distances does not matter.

There is quite good picture comparion showing the effect in outdoor scene http://blogs.amd.com/play/2012/06/06/fast-and-beautiful-the-directx®-tech-of-nexuiz/

Eh, that link seems dead...

Skybox for what...? We use a dynamic sky and using a static skybox for the reflections wouldn't match the world it's reflecting. The screenshots in that link showing screen space reflections don't really make much sense. There are literally no reflections in the image they're showing, instead it seems to show the difference between two different lighting setups...
Skybox for what...? We use a dynamic sky and using a static skybox for the reflections wouldn't match the world it's reflecting. The screenshots in that link showing screen space reflections don't really make much sense. There are literally no reflections in the image they're showing, instead it seems to show the difference between two different lighting setups...
You always could render dynamic cubemap from location of player and use that as fallback solution if screenspace does not have data for reflections.
There is another screenshot http://img23.imageshack.us/img23/935/screenshot0000gx.jpg

This topic is closed to new replies.

Advertisement