我正在慢慢缩小我的性能问题,并且遇到了截锥体剔除的障碍,特别是对于我的定制挤压建筑。
我一直在做一些测试,似乎标准立方体 ( CubeGeometry
) 和我自己的自定义挤压立方体一旦离开屏幕边界就会被剔除。这可以通过监视正在渲染的调用、面和顶点的数量来查看。
如果我随后尝试使用与挤出立方体相同的技术来渲染建筑形状,我将不再能够让它在屏幕边界处剔除——某些东西会使其渲染直到远远超出屏幕边缘。
这是问题的 jsFiddle,您可以在其中看到不剔除的构建示例。您可以取消注释initCubes()
调用以查看多维数据集如何正常工作。控件是鼠标滚轮缩放和单击平移:http: //jsfiddle.net/tuJAB/
几天来我一直在用这个把头发拉出来,所以我很感激任何和所有的帮助。
谢谢!
更新
经过更多测试后,它似乎与我用来创建顶点的坐标有关。position
如果我创建相对于原点 (0,0) 的顶点,然后使用然后剔除移动整个网格。如果我在正确的位置(距 (0,0) 大约 5000 个单位)创建顶点并且不更改position
,则剔除不会按预期工作。
还没有解决这个问题,所以需要帮助:)