javascript – 在体素世界中’剔除’

我有一个充满体素的世界,让我说我的世界是320 * 320 * 96体素.我的想法是将整个世界加载到我的显卡的内存中,以便在将新的“块”传输到GPU时不会丢失性能.为显示体素世界而生成的面部数量应该很容易融入现代图形卡的记忆中.

然而,我现在面临的问题是它如何不显示那个世界的部分,我想限制这个世界的视图(例如)128 * 128 * 96并移动世界或相机周围显示不同的部分.

为了演示我的问题,看看一个(简单的)场景,其中包含一个白色的“可视”区域,我正在寻找合适的WebGL / three.js函数来将视图限制为白色部分.

解决方法:

您可以删除不想从场景中显示的体素.

scene.remove( mesh )

当您想要显示它们时,将它们添加到场景中.

scene.add( mesh )

我建议将你的体素世界分成块(如Minecraft)并将这些块分别制作成网格.将要显示的块网格添加到场景中,并在要隐藏它们时将其删除.

上一篇:C# 反射(Reflection)的理解和使用


下一篇:C# WPF程序增加终端串口打印调试信息