data | 索引缓冲区数据数组。 |
dataStart | 从其开始复制数据的数组中的第一个元素。 |
meshBufferStart | 用于接收数据的网格索引缓冲区中的第一个元素。 |
count | 要复制的索引的数量。 |
flags | 控制函数行为的标志,参见 MeshUpdateFlags。 |
设置网格的索引缓冲区的数据。
注意:此方法专为旨在获得最大性能的高级用户设计,因为它操作基础网格数据结构,这些结构主要通过原始索引缓冲区、顶点缓冲区和网格子集数据进行工作。通过使用此方法,Unity 执行极少的数据验证,因此您必须确保您的数据有效。
尤其是,您必须确保 SubMesh 索引范围和拓扑结构通过 SetSubMesh 进行更新。
默认情况下,会检查索引缓冲区 data
的数组是否包含索引越界错误。可以将 flags
参数设置为 MeshUpdateFlags.DontValidateIndices 以出于性能原因而关闭验证。
有关通过脚本向网格分配数据的更简单方法与更高级方法之间的差异的信息,请参阅 Mesh 页面上的备注。
一般使用模式是
var mesh = new Mesh();
// setup vertex buffer data mesh.vertices = ...;
// set index buffer mesh.SetIndexBufferParams(...); mesh.SetIndexBufferData(...);
// setup information about mesh subsets mesh.subMeshCount = ...; mesh.SetSubMesh(index, ...);