Describes 4 skinning bone weights that affect a vertex in a mesh.
Bone weights must be in descending order, and add up to 1. If a vertex is affected by fewer than 4 bones, each of the remaining bone weights must be 0.
This struct, and the associated Mesh.boneWeights and Mesh.GetBoneWeights APIs, can only describe 4 bone weights per vertex. The newer BoneWeight1 struct and associated [Mesh.GetAllBoneWeights]], Mesh.SetBoneWeights and Mesh.GetBonesPerVertex APIs, can describe any number of bone weights per vertex.
For meshes that have more than 4 bones per vertex, you must use BoneWeight1. For all other meshes, there is no performance disadvantage to using BoneWeight1, and it might result in small performance benefits as Unity does not have to perform unnessary conversion operations to describe vertices with exactly 4 bone weights.
See Also: Mesh.boneWeights, Mesh.GetBoneWeights, Mesh.GetAllBoneWeights, Mesh.SetBoneWeights, Mesh.GetBonesPerVertex, ModelImporter.maxBonesPerVertex, QualitySettings.skinWeights, SkinnedMeshRenderer.quality.
boneIndex0 | Index of first bone. |
boneIndex1 | Index of second bone. |
boneIndex2 | Index of third bone. |
boneIndex3 | Index of fourth bone. |
weight0 | Skinning weight for first bone. |
weight1 | Skinning weight for second bone. |
weight2 | Skinning weight for third bone. |
weight3 | Skinning weight for fourth bone. |