我正在为Unity开发一个Burst友好的网格引擎。

在其核心是简单的几何模型,点、顶点和基元,存储在列式本机集合的形式中,以便特性处理可以在Burst中编译而无需额外的分配。

在操作过程中,每个元素都记录了它来自哪里,所以属性自动在任何操作链条中传递,没有自定义重映射(如在三角化和切割操作中解析的颜色属性)。

类似地割割切割和其他一些几何操作是一条链条中操作的一步,结果可能在下一个操作中使用,所以这是一个非破坏性的方法。

令我惊讶的是,简单的形状可能难于复杂的形状。管子会使简单的算法失效,因为初始网格是一个非凸单独的多边形,有一个孔,而一个由三角形组成的密集雕像则能够顺利通过没有任何问题。

围绕着它是网格转换、调试工具和开始的非破坏性、基于节点的工作流。