本文整理匯總了C#中UnityEngine.Sprite.OverrideGeometry方法的典型用法代碼示例。如果您正苦於以下問題:C# Sprite.OverrideGeometry方法的具體用法?C# Sprite.OverrideGeometry怎麽用?C# Sprite.OverrideGeometry使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類UnityEngine.Sprite
的用法示例。
在下文中一共展示了Sprite.OverrideGeometry方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: DoSpriteOverride
static void DoSpriteOverride(SpriteMesh spriteMesh, Sprite sprite)
{
SpriteMeshData spriteMeshData = SpriteMeshUtils.LoadSpriteMeshData(spriteMesh);
if(spriteMeshData)
{
Rect rect = SpriteMeshUtils.CalculateSpriteRect(spriteMesh,5);
Rect spriteRect = sprite.rect;
Vector2 factor = new Vector2(spriteRect.width/rect.width,spriteRect.height/rect.height);
Vector2[] newVertices = new List<Vector2>(spriteMeshData.vertices).ConvertAll( v => MathUtils.ClampPositionInRect(Vector2.Scale(v,factor),spriteRect) - spriteRect.position ).ToArray();
ushort[] newIndices = new List<int>(spriteMeshData.indices).ConvertAll<ushort>( i => (ushort)i ).ToArray();
sprite.OverrideGeometry(newVertices, newIndices);
}
}