#1
|
|||
|
|||
realtime calculated "reflection" & mirror transparency
Hello.
I am working on an optic effect similar to a reflection projected on an object. The difference to a reflection is, that areas of the "mirror" that would "reflect" the scene background should instead be transparent. For that purpose I created the attached test scene and script. The result should be that when looking into the mirror like surface, you should see the objects, with the wall in the background of the reflection. Actually you see the whole scene reflected in the mirror and the wall is obscured. Theoretically there are several ways to accomplish the desired effect. The easiest would be to simply turn the background (viz.clearcolor()) transparent, but it seems like alpha isnt working ? Alpha for clearcolor isnt documentated but it is recognized and used within viz.py. I am looking into ways to achieve the desired optical effect. Kind regards, Sebastian |
#2
|
|||
|
|||
An other option would be to Set the alpha of the mirror to transparent and place the mirror texture at decal appearance. Also the Background has to be excluded from beeing rendered to the mirror.
but it seems that .renderOnlyToRenderNodes([model]) isnt working correct and the background is still visible in the mirror ? |
#3
|
|||
|
|||
You could use <node3d:renderNode>.setClearColor to set the clear color to match the wall. If you don't want to render the floor you could exclude that using the <node3d:renderNode>.setCullMask command.
|
#4
|
|||
|
|||
Thanks for the information.
<node3d:renderNode>.setClearColor seems to support r,g,b,a and overwrites the mirroring of viz.clearcolor r,g,b with also an additional alpha value So the result is the one we were looking for. |
Tags |
alpha, mirror, reflection, transparent |
|
|