Search the Community
Showing results for tags 'reflectiontexture'.
Found 3 results
Is there something like a window texture? http://www.babylonjs-playground.com/#JDGX2#5 This could be similar to replacing a skybox with a plane where there would be a window. It could function like a digital window in an city apartment showing a country side landscape. The picture based on the user's location and the rate of change could be based on how far the features in the picture are. For example: You could have 4 skyboxes, one within the other, each smaller than the latter. Inside of all the skyboxes is your house/office/apartment or just a single window. The window is a plane with the normals facing inward. The texture for the window is based on the sky boxes, the inner most skybox image on top of the second and so on. The section of image pulled from the skybox for the window texture is based on the plane's normals, the distance and angle of the user to the window, and the distance of each skybox to the window. Info is pulled from the sky boxes but there are no active skyboxes or with shapes that aren't boxes Imagine yourself in a field and you are surrounded by mountains, you take a beautiful panorama and isolate the mountains, apply the mountains to a cylinder with no caps and flipped normals, create a sky gif with clouds or stars floating by and apply that to a dome, cylinder section, or plane and so on..
The StandardMaterial.reflectionTexture specifies the texture that should be reflected, which can then be controlled in intensity by its .level property or additionally by FresnelParameters. However both of those properties only influence the reflectionTexture uniformly. Is there a chance to add a reflectionLevelTexture that specifies the reflection intensity as a map? This would be handy in situations like creating furniture where only the glass part needs to reflect, but not the wood part, or buildings where the windows need to reflect but not the walls. Now, its always possible to make two meshes or use MultiMaterials, one with a reflecting material, and one without (which is what I'm currently doing), but that adds one draw call per mesh, causes z buffer issues, and is convoluted to model.
Not so much a question as an answer I hope. Scroll down to the bottom if you want to get to the important bit about how to do it. Very slowly I am putting together a BJS Guide as a companion to the official documentation and working on materials I came across reflectionTextures and MirrorTextures.and got well lost. With some help from @Deltakosh I sort of got it for coordinatesMode and started on mirrors and couldn't make them work. So after a search or two I found @Luaacro 's book , @JCPalmer 's and @dbawel 's discussion All very useful but I knew I had to sort out mirrors for my own satisfaction. First I needed to know if the reflection was as far behind the mirror as the object was in front, set I set up the construction of a rod from the object to where the reflection should be then I set out to play with mirrors until it worked. Finally after three days I think I have cracked it (so forgive me for a little joy and the post) http://www.babylonjs-playground.com/#1YAIO7#3 HERE BE CRACKED MIRRORS Hopefully this will be useful for others - the important bit - the explanation lies with the guide http://babylonjsguide.github.io/advanced/Reflect The guide is in early days of construction so not much there at the moment but it is something I can give back to BJS, et al.