在unity中做2D游戏开发的时候我们使用sprite比较多,sprite的层次修改我们手动修改sprite renderer下面的Order in Layer属性就行了。也可以动态的获取它的层次属性进行修改,那么怎么动态修改spine动画的层次呢,如下:
我们创建spine动画的时候,在这个物体上会有一个Mesh Renderer的组件。我们通过他来改变Skeleton Animation中的Order in Layer的值。
MeshRenderer m_Mr;
void Start()
{
m_Mr = GetComponent<MeshRenderer>();
m_Mr.sortingOrder = 10;
}
刚开始以为在Skeleton Animation脚本中,怎么找都找不到。原来spine动画层次的order in Layer属性是通过Mesh Renderer来修改的。在这里记录一下。