我在视锥剔除方面遇到了问题。 我们知道在Three.js中,视锥剔除是默认选择,如果需要,我们可以设置
mesh.frustumCulled = false;
我的问题是如何在实例几何体中执行视锥剔除, 如果我启用
mesh.frustumCulled = true
所有实例数据都从场景中剔除,而原始实例是从视锥中剔除的, 因为我的原始几何体位于一个位置,所以实例将通过矩阵放置(位置,旋转,比例)。 如three.js示例中所述,我使用了InstanceBufferGeometry和InterleavedBufferAttribute webgl_interactive_instances_gpu
先谢谢了。
答案 0 :(得分:2)
实例在gpu上发生;截锥体在CPU上淘汰。
如果使用实例化,则可以为网格禁用视锥剔除
Traceback (most recent call last):
File "neural.py", line 27, in <module>
neural.train(inputs, outputs, 10000)
File "neural.py", line 10, in train
output = self.think(inputs)
File "neural.py", line 16, in think
return (dot(inputs, self.weights))
AttributeError: 'neural_network' object has no attribute 'weights'
或者您可以手动指定边界球
mesh.frustumCulled = false;
如果您需要更新边界球,
mesh.geometry.boundingSphere = new THREE.Sphere( new THREE.Vector3(), radius );
three.js r.93