马上注册,加入CGJOY,让你轻松玩转CGJOY。
您需要 登录 才可以下载或查看,没有帐号?立即注册
×
想必在坐的各路特效大师都遇到过一个痛点:就是特效与动作联调时不方便,不直观!那么这个工具就是来解决此需求的,废话不多说,先列下大致功能点:
- 方便动作与特效联调。
- 支持新增无限个动作。
- 一个动作支持多个子特效。
- 可自由定义虚拟体。
- 特效可绑定到自定义的虚拟体上。
- 特效详细参数调整,包括多种运动形式。
- 技能范围参可视化参考。
光看功能点可能不是很明白,那么接下来我们直接通过一个示例来演示下效果。
0.先放出插件(只收一个券!): 游客,本付费内容需要支付 1张CG券 才能下载 支付
1.导入AnimationSkillDebugger.package插件包(此包中包含脚本功能和示例文件)。
2.将Assets\taecgLibrary\Tools\AnimationSkillDebugger\DEMO\Arts\Role.FBX模型文件直接拖入到场景中。
3.为这个角色添加"AnimationSkillDebugger.cs"组件,至于上面有没有Animation组件,无所谓,不用管它。这时脚本上会有个红色的警告,我们需要为它添加一个数据文件。
4.接下来,我们在工程内任意位置点右键>Creats>New AnimationSkillData,以便创建一个新的动作技能数据文件,并将这个文件拖放到刚才角色身上脚本中的MyData中,这时警告消失。
5.我们先忽略虚拟体,直接点击组件上的"ADD ANIMATION",添加我们的第一个动作。
6.Default AnimationClip:代表默认动作,当播放完其它动作时会自动转换到此动作进行播放,一般指定为待机。
Name:动作名称,可自由定义,显示在界面上。
AnimationClip:动画文件,示例中文件在Assets\taecgLibrary\Tools\AnimationSkillDebugger\DEMO\Arts\Role\animations\Role@hit01和Role@ready中。
7.此时我们先运行一下,Game视图中的效果如下。
在界面的左上角,会出现我们刚才定义的动作,以按钮的形式展现,此时点击这个按钮即可播放相应的动作。
8.然后我们回到刚才的脚本组件上,点击“ADD EFFECT”,添加我们的第一个子特效! 示例特效存放位置:Assets\taecgLibrary\Tools\AnimationSkillDebugger\DEMO\Arts\Effect\Prefabs
参数说明:
- Effect:播放此动作时将播放哪个特效文件,支持从Project和Hierarchy中指定,但是如果想保存到数据库,则需要从Project中拖入指定。
- Virtual Point:虚拟体,此特效生成挂的虚拟体点。
- Offset:针对虚拟体进行位置偏移,如果没有指定虚拟体(即虚拟体为None),则是以角色的中心点为参考进行偏移。
- Rotate:针对虚拟体进行的旋转偏移。
- Is Follow:此特效是否跟随虚拟体进行移动。
- Delay Time:此特效延迟生成的时间,主要用于对动作时间点。
- Life Time:此特效的生命时长,单位为秒,时间到了后此特效会被删除(只是删除生成的特效,不用担心原始资源)。
- Move Type:运动类型。
- Amount:生成特效的数量。
- Direction Min和Direction Max:方向最小值和最大值,生成的特效会在这区间进行随机分布。
- Interval Time:生成多个特效时,它们间的间隔时间。单位为秒。
- Delete:删除此子特效节点。
9.此时我们再运行游戏 ,当点击“被击”按钮时会播放动作,同时也会播放我们指定的特效。
小技巧:是不是感觉角色视角不对,想调整,这里可以直接通过在Game视图中利用右键进行操作,右键拖动=旋转视角,中键拖动=移动视角,滚轮=缩放视角,是不是很方便呀。。。当然,最好的是先将Game视图调整的近一些,然后再运行进行右键操作会更方便!
10.此时我们发现特效的位置不正确,接下来我们调整这个问题。
正常情况下,被击特效都是挂在特定的虚拟体上的,如果角色没有相应的虚拟体,你可以通过特效参数中的位置偏移来实现,不过好在我们这个角色是正规的,有相应的虚拟体,那我们来讲解下如何创建虚拟体。
11.首先确认你的角色下面有没有相应的虚拟体,否则会添加无效!
12.在我们的脚本组件中,展开最上面的Virtual Point,在Add Point中输入虚拟体的名称(注意不要输错,最好用复制的形式),然后点击Add按钮即可!
13.然后在我们子特效参数中的Virtual Point选择刚才新建的v_hit.
这时再运行,特效位置就正确了!
小技巧时间又来了:运行后,当点击过一个按扭后,可直接通过按键盘上的G键来重复播放刚才的动作,省云重复点击的麻烦。。。
14.现在我们的被击动作已经有了一个被击特效了,但是我们还想再给这个动作加一个飘血数字特效,OK,让我们在脚本组件上的被击区域内再次点击一次ADD EFFECT按钮。
我们将effect_number这个特效指定到新增的子特效上,并将Offset的Y设置为1。
15.完成,通过这个示例把整个工具的流程走了一遍,还有好多功能由于篇幅问题没有讲解到,大家可以去摸索下。
最最后,打个小广告:
此工具是我独自开发完成的,这里放出的是目前的最新版本v1.0.1.
AssetStore地址:
https://www.assetstore.unity3d.com/#!/content/71357
欢迎大家赏脸支持正版,另外对此工具还有什么建议都可以直接回复告诉我,后续会不断的进行完善!
|