查看: 293|回复: 0

[引擎的各个功能] Aim Offset(瞄准偏移)

[复制链接]

1

主题

342

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75866
发表于 2017-4-8 07:06:29 | 显示全部楼层 |阅读模式

Aim Offset(瞄准偏移)



       
     
     
     
       
     
         



       
Aim Offset(瞄准偏移)



概述


在动画进行过程中,Aim Offset的效果同其他动作(比如跑动、不行、跳跃等)相混合,来使得角色在所有方向上都呈现出平滑的外观效果。


Aim Offset背后的基本理念是,叠加地混合到现有动画上。 因此,比如,如果您正在使用一个Aim Offset来使得角色瞄准武器,那么您会想确保角色上的其他动作不会妨碍那个叠加动作。 换句话说,您跑动、空闲、跳跃等动作应该有一个相对僵硬的胳膊,以便可以通过Aim Offset来叠加地控制它们。


在很多方面, Aim Offset就和混合空间一样。 因此,在使用Aim Offset之前,好好了解下混合空间会使您做的更好。 请参照混合空间
文档获得详细信息。


       
您也可以参照章节1.4下的动画内容示例
页面来获得应用于角色的 Aim Offset (瞄准偏移)示例。


创建Aim Offset


和其他任何资源一样,创建Aim Offset是在 内容浏览器 中完成的。 您可以 右击 或使用Aim Offset(瞄准偏移)
按钮,并从关联菜单中选择 Animation(动画) > Aim Offset(瞄准偏移) 。 您将注意到,您还可以选择Aim Offset 1D。 它们和Aim Offset一样,但是仅支持来自一个变量的输入来控制该混合,而标准的Aim Offset支持两个变量。


当创建新的Aim Offset时,您必须指定一个骨架资源。 请确保所选择的骨架资源,同您想让该Aim Offset同其结合使用的骨架网格物体使用的骨架资源一样。

动画姿势


由于Aim Offset 的作用是叠加地组合一系列的姿势来辅助瞄准,所以现在我们将讨论您一般需要创建的姿势类型。 您实际所需要的姿势很大程度少依赖于您的角色需要执行的动作。以下是一个极端的例子:


       
       


       
                向上右后方
               
               
                右上方
               
               
                向上居中
               
               
                左上方
               
               
                向上左后方
               
       




       
       


       
                向后右侧居中
               
               
                右侧居中
               
               
                居中
               
               
                左侧居中
               
               
                向后左侧居中
               
       




       
       


       
                向下右后方
               
               
                右下方
               
               
                向下
               
               
                左下方
               
               
                向下左后方
               
       




如果您要使用这样的设置,那么您需要格外注意您如何进行偏转运动(从一侧到另一侧)。 比如,当角色静止站着时,上面的运动看上去还好。 但是如果您允许角色在跑动时以各种方式扭动,那么您会看到这样不好的效果:


Aim Offset(瞄准偏移)



由于这个原因, 一般仅设置Aim Offsets来使得角色向上向下瞄准,而不是从一侧到另一侧进行瞄准,从而允许旋转实际角色来处理从一侧到另一侧的运动。 但是,您可以使用上面显示的一系列姿势;您将仅需要简单地使用动画蓝图来限制Aim Offset的输入数据,以便仅当角色处于固定状态时才使用从一侧到另一侧的极端情形。

网格物体空间


一旦您把所需要的姿势都导入到虚幻引擎中,您将需要在它们上设置一些特定的属性,以使得它们和Aim Offset相兼容。 在 Additive Settings(叠加设置) 类目下,确保进行如下设置:


Additive Aim Type(叠加型动画类型) - AAT_MeshSpace


       
Aim Offset仅接受 Additve Aim Type为网格物体空间的动画!



网格物体空间是一种用于提取叠加型动画的delta(间隔)的略有不同的方法,因为它仅在某些实例中使用,比如Aim Offset 资源。 网格物体空间使用该网格物体的边界框作为其旋转的基础,不管该骨架网格物体中的骨骼链的朝向如何,都允许以相同的方向进行旋转运动。 想象一个角色,他向侧面倾斜,但是需要 向上 瞄准手枪。 如果向上瞄准的动作在局部空间内,那么瞄准动作按倾斜向的方向向外旋转。


       
       


       
                基本的空闲姿势
               
               
                向上瞄准
               
       




       
       


       
                倾斜姿势
               
               
                倾斜并向上瞄准(局部空间)
               
               
                倾斜并向上瞄准(网格物体空间)
               
       




这可以通过网格物体空间旋转来解决。 因为旋转动作是基于该骨架网格物体的方框的,所以无论角色干什么,旋转的方向仍然是不变的。 所以即使角色可能向一旁倾斜,但是向上瞄准动作将仍然以向上的方向旋转。


网格物体空间设置为动画序列的一个属性。 在 Additive Settings(叠加设置)  类目中,您可以看到 Additive Anim Type(叠加动画类型) 属性。 正如前面所述,设置它为 Mesh Space(网格物体) ,将使用该网格物体坐标空间。 这是个性能消耗非常大的混合操作,应该仅供一些特定类型的混合空间使用,在这些混合空间中,您知道您需要该动画的运动方向不变,比如Aim Offset的情形。


   
        
            

   

Aim Offset(瞄准偏移)

   




    相关页面


            
            

   
  
     

         FBX动画通道
     


  
     

         骨架网格体(Skeletal Mesh)
     


  
     

         基于物理的动画
     


  
     

         状态机
     


  
     

         AI 及行为树(Behavior Tree)
     


  
     

         Maya动画绑定工具集
     


     

            
        
   




                                       
                                       
完整内容索引
                                       
                               
                       
                       
            

            
            

     2004-2017, Epic Games, Inc. 版权所有。Unreal 及相关的商标是 Epic 在美国和其他国家的注册商标。


    使用条款 | 隐私政策

            
        
               
       
   
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部