Reflection 三人组的镜面反射怪癖

Reflection 三人组的镜面反射怪癖,reflection,3d,three.js,shader,mirror,Reflection,3d,Three.js,Shader,Mirror,(免责声明:关于SO的第一篇文章。我已经在SO和其他地方搜索了这个问题的答案,但尽管镜子和反射确实出现了,但我没有找到任何与我的特定问题相关的东西。) 这是我在ThreeJS中的第一个场景,大部分场景都基于官方示例(非常有用!)。正如您所见,无论出于何种原因,镜子反射在大多数角度上都是黑色/碎片状的,因此它只能在非常窄的范围内显示适当的反射。(探索其他角度,看看我在说什么。) 相关代码: // MIRROR verticalMirror = new THREE.Mirror( rende

(免责声明:关于SO的第一篇文章。我已经在SO和其他地方搜索了这个问题的答案,但尽管镜子和反射确实出现了,但我没有找到任何与我的特定问题相关的东西。)

这是我在ThreeJS中的第一个场景,大部分场景都基于官方示例(非常有用!)。正如您所见,无论出于何种原因,镜子反射在大多数角度上都是黑色/碎片状的,因此它只能在非常窄的范围内显示适当的反射。(探索其他角度,看看我在说什么。)

相关代码:

  // MIRROR

verticalMirror = new THREE.Mirror( renderer, camera, { clipBias: 0.003, textureWidth: 1024, textureHeight: 1024, color:0x889999 } );

var verticalMirrorMesh = new THREE.Mesh( new THREE.PlaneBufferGeometry( 300, 300 ), verticalMirror.material );
verticalMirrorMesh.add( verticalMirror );
verticalMirrorMesh.position.y = 100;
verticalMirrorMesh.position.z = -500;
scene.add( verticalMirrorMesh );
在渲染函数中:

function render()
{
  renderer.render( scene, camera );
  verticalMirror.renderWithMirror( verticalMirror );
}
我尝试过弄乱纹理设置和剪贴画,但都没有用,整个代码主要基于

非常感谢您的帮助,谢谢

谢谢,
verticalMirror.render()
挽救了这一天!镜子现在反射得很美。我将避免使用带有镜像的渲染器,直到我更好地了解它的作用


非常感谢。

请尝试使用
verticalMirror.render()
Mirror.renderWithMirror()
将在您有两个镜像时使用。