unity动态修改spine动画局部位置的渲染层次
做项目的时候想把一个spine动画的某个部件的渲染层次改了,让这个动画中可以穿插其他的图片。但是一个spine动画的渲染层次是在一起的,只能单独修改spine下骨骼点下插槽中的图片的渲染层次。这是我的一个同事实现的这个效果,我在这个记录一下。
使用spine运行库中自带的spine动画做的实现过程。
1.在skeleton Animaton下添加Skeleton Utility。点击添加。
2.点击后会在该物体上添加一个skeleton Utility的脚本。点击Spawn Hierarchy。选择Follow all bones。
3.在Hierarchy面板中,该spine动画物体下会有一个root。这就是所有的骨骼点。我们来选择一个骨骼,然后了一个胳膊,把这个骨骼点下的图片的渲染层次改了。
4.回到spine动画物体上,添加一个脚本。Skeleton Render Separator.cs。
5.在separator slot names 下添加这个插槽的名字。
6.选择好需要单独修改部件插槽的名字front_upper_arm。点击Add the missing renderers。会在spine物体下自动生成两个物体,物体名为0和1两个物体。
7.这两个相当于把spine动画渲染部分分成了两部分单独渲染,此时你会发现在spine动画物体上的Mesh Renderer为关闭状态。
8.你设置1物体中的order in layer层次就可以了改变胳膊图片的层次了。不过其他部位也会和这个胳膊在同一个渲染层上。隐藏0物体会发现,1物体上不仅有我们设置的需要改变的部位,还有其他部位。如图:
这个我还没弄明白,有搞明白的欢迎在下面留言让我也学习一下。