如何

如何使用反射探头


如何使用反射探头

Reflection Probes example

反射探针用于动态生成立方体贴图,例如可以用作反射纹理。

使用方法如下:

var probe = new BABYLON.ReflectionProbe("main", 512, scene);
probe.renderList.push(yellowSphere);
probe.renderList.push(greenSphere);    
probe.renderList.push(blueSphere);    
probe.renderList.push(mirror);    

mainMaterial.reflectionTexture = probe.cubeTexture;

如您所见,您必须定义反射探针将渲染哪些网格。

您必须对反射探针保持谨慎,因为它们实际上需要每帧生成6个纹理(每个面一个)。

您可以使用以下代码更改更新速率(默认情况下为每帧):

probe.refreshRate = BABYLON.RenderTargetTexture.REFRESHRATE_RENDER_ONCE;    
// or
probe.refreshRate = BABYLON.RenderTargetTexture.REFRESHRATE_RENDER_ONEVERYFRAME;    
// or
probe.refreshRate = BABYLON.RenderTargetTexture.REFRESHRATE_RENDER_ONEVERYTWOFRAMES;
// or
probe.refreshRate = 3;

为了获得最佳渲染效果,还需要将探针移动到应使用生成的立方体贴图的网格中心。(在内部,探针将在特定位置生成一个幻影相机,然后从那里渲染面部)。您有两种选择可以实现此目的:

probe.attachToMesh(root);
// or
probe.position = new BABYLON.Vector3(0, 1, 0);

如果您想尝试一下,只需单击 此处 -