(继承 vrdPhysicsHullConfig)
由凸面分解生成的物理对象的配置类。
此配置类用于指定由凸面分解生成的物理对象的属性。凸面分解过程会获取一个复杂网格,将其分解为一组近似原始网格的凸面外壳线。要从比简单凸面外壳线更精确的非凸面网格创建物理对象,这非常有用。如果可能,应优先使用此方法,而非三角形网格。
用于凸面分解的库是 v-hacd 库(层次近似凸面分解):https://github.com/kmammou/v-hacd。其文档包含有关可以在此配置类中设置的参数的详细信息。几乎所有参数都显示在此处,并可在此类中设置,以微调分解过程
vrdPhysicsConvexConfig.getMinimumVolumePercentErrorAllowed()获取允许的最小体积百分比误差。
| 返回值: | 最小体积百分比误差。 |
|---|---|
| 返回值类型: | float |
vrdPhysicsConvexConfig.setFillMode(mode)设置填充模式。
填充模式指定 v-hacd 库使用哪种算法来填充体素化网格的内部。可能的值为(来自 v-hacd 文档):0:填色模式。这是默认行为,在体素化步骤后,它使用填色从“外部”确定“内部”。但是,带孔网格可能会失败并创建空心结果。1:仅曲面模式。仅考虑“曲面”,将创建具有空心中心的“蒙皮”。2:光线投射填充模式。使用光线投射从外部确定内部。
默认值为 0。
| 参数: | mode (integer) - 填充模式。 |
|---|
vrdPhysicsConvexConfig.setMaxNumberOfConvexHulls(numHulls)设置算法将生成的最大凸面外壳线数。
该算法生成的外壳线不会超过此数字。实际生成的外壳线数可能低于此上限。
默认值为 64。
| 参数: | numHulls (integer) - 最大凸面外壳线数。 |
|---|
vrdPhysicsConvexConfig.setMaxNumVerticesPerHull(numVertices)设置每个凸面外壳线的最大顶点数。
PhysX 将每个凸面外壳线的顶点数限制为 256,因此该值必须介于 4 到 256 之间。如果不是有效值,则将其调整为最接近的有效值。
默认值为 64。
| 参数: | numVertices (integer) - 每个凸面外壳线的最大顶点数。 |
|---|
vrdPhysicsConvexConfig.setMaxRecursionDepth(depth)设置最大递归深度。
这将设置凸面分解算法的最大递归深度。默认值为 10。
| 参数: | depth (integer) - 最大递归深度。 |
|---|
vrdPhysicsConvexConfig.setMinEdgeLength(length)设置最小边长。
来自 v-hacd 文档:“一旦体素面片的边长在所有 3 个侧面均小于 4,我们就不会一直递归。”
默认值为 2。
| 参数: | length (integer) - 最小边长。 |
|---|
vrdPhysicsConvexConfig.setMinimumVolumePercentErrorAllowed(percent)设置允许的最小体积百分比误差。
来自 v-hacd 文档:“如果体素在外壳线体积的 1% 内,我们会将其视为足够接近的近似值”
默认值为 1.0。
| 参数: | percent (float) - 最小体积百分比误差。 |
|---|
vrdPhysicsConvexConfig.setResolution(resolution)设置要使用的体素分辨率。
默认值为 400000。
| 参数: | resolution (integer) - 体素分辨率。 |
|---|