Javascript 如何增加Three.js中的最大灯光数?
我正在试用Three.js,并试图增加场景中可以使用的灯光数量。理论上,这个数字应该只受GPU的限制,从而导致帧速率下降,但显然,如果我尝试放置超过128个灯光,整个材质将变为白色 我正在使用MeshPhongMaterial并添加简单的点光源Javascript 如何增加Three.js中的最大灯光数?,javascript,graphics,three.js,Javascript,Graphics,Three.js,我正在试用Three.js,并试图增加场景中可以使用的灯光数量。理论上,这个数字应该只受GPU的限制,从而导致帧速率下降,但显然,如果我尝试放置超过128个灯光,整个材质将变为白色 我正在使用MeshPhongMaterial并添加简单的点光源 for(var i=0; i < maxLights; i++) { var alpha = 2 * Math.PI / maxLights * i; var pointLight = new THREE.PointLight(
for(var i=0; i < maxLights; i++) {
var alpha = 2 * Math.PI / maxLights * i;
var pointLight = new THREE.PointLight( 0x376cf5, 1, 0.3 );
pointLight.position.x = Math.cos(alpha) * lightRadius;
pointLight.position.z = Math.sin(alpha) * lightRadius;
pointLights.push(pointLight);
scene.add( pointLight );
}
for(变量i=0;i
我认为限制是用于寻址灯光的位数
如果我的假设是正确的,那么这种限制有什么原因吗?如果我有足够的实施时间,那么如果我试图修复这个限制,我将面临哪些挑战
谢谢。如果我不得不猜测的话,我会说u(three.js)已经达到了GPU可以同时使用的最大制服数量。如果你想支持这么多的灯光,你需要
three.WebGLDeferredRenderer
。