index | 子网格索引。请参阅 subMeshCount。超出范围索引会抛出异常。 |
desc | 子网格数据。 |
flags | 控制函数行为的标志,请参阅 MeshUpdateFlags。 |
设置有关网格的子网格的信息。
请注意,/SetSubMesh/、SubMeshDescriptor 和 SetIndexBufferData 面向旨在实现最高性能的高级用户,因为它在主要适用于原始索引缓冲区、顶点缓冲区和网格子集数据的基础网格数据结构上运行。Unity 使用这些方法可执行非常少的数据验证,因此必须确保数据有效。
In particular, you must ensure that the SubMesh index range and topology are set to correct values. SubMesh indices, both indexStart and indexCount, must not overlap with any other SubMesh indices.
For information about the difference between the simpler and more advanced methods of assigning data to a Mesh from script, see the notes on the Mesh page.
The SubMeshDescriptor-bounds, SubMeshDescriptor-firstVertex and SubMeshDescriptor-vertexCount values of SubMeshDescriptor
are calculated automatically by SetSubMesh
, unless MeshUpdateFlags.DontRecalculateBounds flag is passed. Note that this only applies to the bounds of the SubMesh. You must call Mesh.RecalculateBounds to recalculate the bounds of the Mesh itself.
常规使用模式为:
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, ...);
// update bounds of the mesh mesh.RecalculateBounds();
有关为每个子网格设置的数据的详细信息,请参阅 SubMeshDescriptor。
另请参阅:subMeshCount、GetSubMesh、SetIndexBufferParams、SetIndexBufferData、MeshUpdateFlags。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.