unity之动画分层

来源:互联网 发布:短信网络陷阱 编辑:程序博客网 时间:2024/05/17 23:08

           动作可以是单独的一个,进行播放,也可以是融合得到的动画。这时我们就需要不止一个动画层,比如我可以有走的动作,也可以在走的同时播放挥手的动作。

           层的索引值是从上往下递增的,base层索引为0。选中了Override可以使其优先权提高。 Additive是指把当前层中动画叠加到上一层中,weight属性是权重,0表示层关闭,逐渐加大的过程中,逐渐表现该层效果。

              1:操作步骤  注(引用自擅码网monkey)
                  1.首先在 Animator 面板的 Layers 中添加一个新的层,并重新命名;
                  2.在面板上创建一个空的状态,Entry 和该空状态之间建立过渡线,也就是说当
                        动画开始播放的时候,该层播放的是一个空动画;
                  3.将 bow shoot 动画拖拽过来与空动画建立过渡线,并设置 Trigger 类型的
                        过渡条件,并编写代码实现过渡条件的赋值;
                  4.将新的动作层的 weight(权重)设置为1。

                  5.新建一个 AvatarMask,新层的 Mask 的位置,设置上这个 AvatarMask;

               2:操作如下图所示:

                   


         第二层的idle是一个空动画,然后与bow shoot连接,如下图。


                   

                  

      

    为了让融合之后的动作互不干扰,上方播放挥手动作,下身播放行走动作。还必须建立一个Avatar Mask文件进行设置,如下图。

                             

            



0 0