我正在尝试通过将正确位置的立方体合并到一个几何体中,然后创建一个网格并绘制它来创建一个我的世界类型(仅限立方体)地形。目前,我正在从 Node.JS 服务器发送一个数组,其中包含构成每个“块”的块类型。然后代码知道给每个块的材料索引。例如,10x10x10 块的数据将是:
[1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
2,1,1,1,2,2,1,1,1,2,
etc ... ]
这可以正常工作,但是将这些块中的每一个合并到一个几何图形中非常耗时,因此不适用于我的用例。
我现在的想法是在服务器端合并多维数据集,然后只将顶点与块类型数组一起发送到客户端(与上面相同)。所以我的问题是,是否可以为这些顶点创建面,使几何图形显示为具有不同材料的多个立方体?
我觉得这样会更好,因为不仅客户端的压力会减轻,而且服务器只需要合并每个块一次,而目前每个客户端都需要合并它。
任何帮助将不胜感激!谢谢。:)
编辑:读完这篇文章
后才想到。如果在初始化时我创建了一个包含块的整个块的几何图形,因此为 10x10x10,那么当发送数据数组(如上)时,我可以隐藏不应该存在的块的面。通过隐藏,我的意思是给脸一个看不见的材料。我相信这会更快,甚至不需要我发送顶点。
在那种情况下,谁能解释我将如何确定要隐藏哪些面孔?谢谢。