ICSGMesh

继承: ICSGPrimitiveBase < ICSGShapeBase < GeometryRender < VisualRender < Item3D < Item < Object

使用网格资源的 CSG 网格形状。

描述

此 CSG 节点允许您将任何网格资源用作 CSG 形状,前提是它是 流形。流形形状是封闭的,不自相交,不包含内部面,并且没有连接到两个以上面的边。另请参阅 :ref:'ICSGPolygon<class_CSGPolygon3D>' 以绘制用作 CSG 节点的2D拉伸多边形。

注意: CSG节点旨在用于关卡原型设计。与创建 MeshRender 使用 PrimitiveMesh. 在另一个CSG节点中移动一个CSG节点也会产生很大的CPU成本,因此在开发过程中应避免这样做.

属性


属性说明

Material material 🔗

用于绘制 CSG 形状的 Material


Mesh mesh 🔗

  • void set_mesh(value: Mesh)

  • Mesh get_mesh()

Mesh 用作CSG形状的资源。

注意: 某些 Mesh 类型(如 PlaneMesh, PointMesh, QuadMesh, 和 RibbonTrailMesh )将从该属性的类型提示中排除,因为这些基本体是非流形的,因此与CSG算法不兼容。

注意: 使用时 ArrayMesh, 除了所有顶点属性 Mesh.ARRAY_VERTEX, Mesh.ARRAY_NORMALMesh.ARRAY_TEX_UV 被未使用。 仅有的 Mesh.ARRAY_VERTEXMesh.ARRAY_TEX_UV 将传递给GPU。 仅用于确定哪些面需要使用扁平阴影。 默认情况下,CSGMESH会忽略网格的顶点正常,为每个顶点重新计算它们,并使用光滑的着色器。 如果面部需要扁平的着色器,请确保面部的所有顶点正态大致相等。 Mesh.ARRAY_NORMAL