|
I created a very simple scene with a few cubes, spheres and the water 3 example. I also set as much settings to off as possible. Bug somehow, the refraction that is left looks like a skewed reflection. I am certain that it is NOT the reflection, because the reflection is turned off. And when I turn it on, there are 2 reflections in the water. One is correct, the other one the skewed one.
The settings are as follows:
So:
These settings are just for testing. The image in the water looks like a mirrored image of the scene, but it's definitely no reflection. Which looks like this. There are three ellipsoids now:
Update
(comments are locked)
|
|
Hey, odd effect. So refraction is the one thing that become wrong? I don't have that shader, nor pro, so I can't tell exactly what is wrong. To me, it looks as if the refraction rays bounce off in the wrong direction (they seem to bounce back up, instead of bounce into the surface interior).
This suggest an issue with either the way the refraction is calculated in the shader, or the normals somehow end up incorrect (either vertex or bumps), or it somehow render the back side of the water mesh. What you could try is make sure you don't use a cube for the water mesh, and if you do, make sure the bottom is obscured with some other mesh like the terrain. You can also try turn off any bump maps or anything else that may alter the normal of the surface. However, since the reflection also use normals, it's hard to argue that the normals would be incorrect since if they were, the reflection would also be wrong, but the reflection seems to work just fine. I am puzzled :) Comment contents: I took the "refracted" image and flipped it vertically. It's hard to tell from the small image but close up you see that all pixels are placed identically, which wouldn't been the case if the projection was skewed or rendered from another point of view. To me, it seems it is a mirrored version of the viewport to the pixel.
Left version is the scene above water. Right version is the refraction of the water.
Close up on the closest ball with a yellow cube (?) behind it. Similar pixels suggest same view is used. By the way, what does the refraction fix checkbox do?
Apr 16 '11 at 01:32 PM
Statement ♦♦
@Statement. It does do something different. I will post an example of it next friday, but it doesn't fix it.
Apr 16 '11 at 04:15 PM
Marnix
@Statement. The normals should be correct indeed. Reflection goes fine. Also: The mesh i'm using is a default mesh (a circle) from the example. The water3example can be used in the free edition as well.
Apr 16 '11 at 04:21 PM
Marnix
Hm, it can? But it looks like there's some render-to-texture going on :P
Apr 16 '11 at 04:32 PM
Statement ♦♦
Yes it can, but it doesn't show you all features. I think it will look ugly, but at least a working example is presented. Actually, the texture used looks like the exact mirroring of the main viewport, don't you think?
Apr 17 '11 at 09:33 AM
Marnix
(comments are locked)
|
|
if you turn the Fresnel power to zero the fake reflection should be gone. at least that worked out for me; don't know what the fresnel should be doing instead of those weird reflections. @LeeGibson This doesn't solve the problem, because there will be no refraction left. Fresnel is the lerp factor between refraction and reflection. What is true, is that there is something wrong in the refraction model.
Jun 28 '11 at 02:37 PM
Marnix
(comments are locked)
|
|
Hey, you told me to have a look, so yeah! You need one separate material for each instance of water you have- this usually fixes the bug! So just duplicate the material, and assign it to your other water. I hope this helps you. Wait, ignore that. Try putting in a blank static cubemap and see what happens.
Jun 26 '11 at 09:41 PM
Fishman92
Huh? This is already a static cubemap that is assigned to the camera. How blank do you need it? You mean that you want me to clear the camera with a solid color? I only have one water instance in the example above. So there is only one water instance.
Jun 26 '11 at 09:55 PM
Marnix
in your inspector screenshot, the static cubemap field is empty.
Jun 26 '11 at 10:03 PM
Fishman92
Ah good one, but I hope that that's not the problem, because I am going to use UniSky in my project, so that would mean that I can't reflect the actual weather in my game when I want to use Water3. I'll try this soon and come back to you with my findings.
Jun 26 '11 at 10:06 PM
Marnix
@Fishman92 This doesn't fix it. There is no difference on my problem if I add it. There is something wrong with the refraction texture of the water, but I can't find where this is drawn.
Jun 28 '11 at 02:39 PM
Marnix
(comments are locked)
|







+1 for a really clear, well laid out question and screenshots