在模型的Drawable之间放置其他Sprite
最終更新: 2020年1月30日
本节说明如何在模型的Drawable之间置入其他Sprite。
概述
如果您想在前面(或后面)仅绘制模型的一部分,您可以从追加到模型的Drawable的Cubism Renderer中变更绘制顺序。
绘制顺序可以通过设置为Local Order的数值来控制。
这使得当Sprite置入在设置的部分之间时,可以在Sprite的前面绘制部分Drawable,并在背面绘制其他部分Drawable。
步骤
首先,变更附加到模型根的CubismRenderController组件的Order In Layer的数值。
然后变更附加到各Drawable的CubismRenderer组件的LocalOrder中设置的数值。
模型根的CubismRenderController的Order In Layer也会影响/Drawables/下所有物体的Local Order。
例如,当Order In Layer为“0”时,如果Local Order设置为“1”,则设置的Drawable的绘制顺序将为1。
此外,当Order In Layer为“3”时,如果将Local Order设置为“2”,则设置的Drawable的绘制顺序将为5。
在Order In Layer为“5”时,如果将Local Order设置为“−2”,则Drawable的绘制顺序将为3。
有关Order In Layer的更多信息,请参考以下链接。
Unity 手册 – Sprite Renderer
如下所示,如果您想在Drawable和Drawble之间置入其他Sprite,请变更CubismRenderer组件的Local Order的数值。
[Drawable] [Sprite] [Drawable]
实例:让模型持有Sprite
例如,创建一个新Sprite并为其摆姿势,就好像模型将Sprite放在一边一样。
首先,设置Sprite。在Hierarchy视窗中按右键,然后单击“2D Object”>“Sprite”以创建一个新的Sprite。
然后单击您创建的Sprite,并将Inspector视窗中的Sprite Renderer> Sprite项目设置为UI Sprite。此外,将Sprite Renderer> Order In Layer设置为“1”。
接下来,设置模型。
将模型左手和左前臂部分的Local Order数值设置为“2”。
通过这样做,将按照左手/左前臂部分 → Sprite → 未设置数值的模型的顺序进行绘制。
通过上面的设置,将按照变更数值的左手腕和左前臂部分 → Sprite → 未设置数值的模型的顺序进行绘制。