Opsive插件Third Person Controller使用教程(二)
发表于2018-03-03
在Opsive插件Third Person Controller使用教程(一)中给大家介绍了如何去建立基础的TPS控制器,下面就继续教大家如何使用插件Third Person Controller实现下方这些功能:
- 建立武器类型和消耗品武器类型
- 建立武器类道具
- 调节枪的位置朝向,如何改变副手位置
- 调节绑定准星到这个武器上
1、创建配置文件
通过菜单Tools——ThridPersonController——ItemTypeBuilder可以创建物品类型。
主要有4大类
主武器
消耗品
次要武器
双持武器
我比较关心的是主武器和子弹,也就是消耗品的问题:
他们的关系是:主武器——消耗——消耗品(子弹)
所以你要先建立一个子弹的类别,再建立一个主武器的类别。这些官方视频里面都有,略过。
不过这种设计和我自己的Inventory系统不太兼容,后期我要想办法兼容一下。
2、创建武器Item
武器属于可视道具
子弹属于不可视道具,但是对于一个生存类游戏而言,几乎可以认为他就是一个TPS版本的RPG类游戏,所以,子弹也是有图标的,这也是我需要调整的地方。
建立道具的过程也很简单
Tools——ThirePersonController——Item Builder
需要把武器大类填进去。
我是建立了
Gun_M16
Ammo_5_56分别表示枪和子弹类型。
3、调试枪的位置
这里有几个小技巧:
- CharacterIK里面的Debug Draw Look Ray挑上。
- Inventory里面设置刚刚建立的武器和对应子弹类别。
- ItemOptions里面的 Always Aim挑上。
- Shift+Ctrl+P 可以以快捷键的方式暂停UnityEditor
- 记得先拷贝枪的transform组件的数据,在停掉Editor,之后在把数据复制给枪的transform。
需要注意的是,人物的左手,也就是辅助扶枪的手,位置是靠IK来决定的,它在这里配置:
首先挑上TwoHandedItem
然后在枪械上自己创建一个Transfom用来定位左手。
最后开启游戏,调节并记录下来,这个Transform的正确位置。
这是我需要学习的点,独立游戏的话,不可能为每个枪搞一套动画啦,所以可以用这种方式来改变不同枪扶枪那只手的位置。能省不少工作量
当然如果用FinalIK的话,就是另一回事了。
目前已知的一个BUG是,连发也好,单发也好,第一枪的Recoil会朝左侧大幅度偏移一下,估计是动画插值的问题。留在日后解决。
4、CrosshairMonitor
这里有一个坑,那就是
这里的Character一定要留空,不然,准星显示不出来,这是个程序BUG。这个插件也不是想象中那么好用,所以我还是打算先研究明白他的框架,然后自己写一个用……
那么如何实现不同武器不同的CrossHair呢?
答案是在枪里面配置:
这样每把枪都可以有自己的特定的CrossHair。但是这种设计的灵活性还是不高。如果是我设计的话,会把Cross存成独立的Asset文件。这样一类CrossHair就可以给一类枪用,不用每个单独配置一遍了。当然,具体参数还是应该与CrossHair的配置文件独立的。
接下来打算着重研究一下这个插件的各种Monitor的用法。