Unity开发一款像Apex一样的FPS射击游戏Demo技术指南
2001年,FPS游戏老大哥《CS》横空出世,迅速在国内外掀起了一波FPS游戏的热潮,随后《CF穿越火线》在国内上线,一举拿下“玩家最喜爱的十大网络游戏”大奖,到现在,《PUBG》、《使命召唤》/《Apex》等,依旧延续着FPS游戏的火热。而FPS游戏项目的立项和开发也在很多知名游戏大厂的开发计划中,很多小伙伴想要进入FPS游戏开发的项目组,那么在面试前,你的简历中如果有FPS项目案例的开发经验,那将会对你的面试增加不少胜算。
那本篇文章我们就来为大家分析一个FPS游戏案例的一个核心技术点。
市面上几乎所有的FPS类型游戏都具备换枪功能,今天我们主要就聊聊在Unity中如何实现这个功能。
本篇文章涉及到的源码及素材资源,还有更多游戏开发资源,可以通过点击下方的小卡片免费获取
从零开始学游戏开发,《PFS射击游戏》游戏开发5天训练营,点击免费参加>>
不同的枪械虽然玩家体验上完全不同,比如狙击枪可以开镜(不开镜也没有十字瞄准器),手枪可以连发,刀只能近战(而且攻击范围是根据武器长度来决定)
但是在切换武器这件事情上,他们非常类似,因为每一个武器都具备武器切换进入动画,有些会上膛、拉栓或者更干脆的耍个酷,退出动画也是同样。我们按Q或者按1、2、3、4键时候就会看到当前武器退出后紧接着新武器的进入。
并且武器的攻击无非是通过鼠标左键、鼠标右键、F键等等进行,不过有些武器还会存在状态,比如击右键后武器进入XX模式之类的,不过虽然表现不同但是逻辑进入的入口都是一致的。
根据这样的粗略总结,我们其实可以得到两个结论:
第一,我们完全可以创建一个武器的基类去修饰他们的共同点
第二,切枪只是就是退出当前武器,进入切换后的武器,按Q切枪癌也不过是要记录一下上一把武器是什么
这里,为了方便理解,我们不考虑武器从AssetBundle或者其他什么地方加载获得,假设他们都已经挂载在了玩家正确的位置,只是隐藏起来。
我们可以用数组保存我们的主武器、副武器、近战武器等,可以看出来这个数组是一个固定长度的,我们通过访问数组其实就可以访问具体的武器,然后可以去决定他们是否显示还是隐藏。
看到这里你应该会发现,这其实非常Easy,不过我们还需要处理一些逻辑,比如我们一定是当前武器退出动画播放完毕才能显示下一把武器的进入动画,这里可以采用动画当前播放进度或动画事件来完成。
最终需要注意的是,不同武器还有不同的UI界面,也许你需要提示这个武器的Icon,但是更重要的是是否具备屏幕中心的十字准心、子弹数量、子弹的上限数量、攻击的时候有没有后坐力体现之类的。
关于FPS射击游戏换枪技术点的分析就到这里,,授之以鱼,不如授之以渔,为了让喜欢游戏开发的小伙伴能掌握更多的游戏开发技术,我们本期开设了《PFS射击游戏》游戏开发5天训练营,让大家从0做出一款游戏Demo。
我们希望同学们通过训练营掌握的是学习方法以及分析问题,解决问题的能力,这也是成为一个游戏开发高手,成为一个高级的开发者必备的能力之一。
原价198,现在限时免费领取。
从零开始学游戏开发,《PFS射击游戏》游戏开发5天训练营,点击免费参加>>
课程每晚8点以直播方式进行,报名后还会进入专属的学习辅导群,课程大纲如下 :
现在点击下方卡片就可免费报名参加!
从零开始学游戏开发,《FPS射击游戏》游戏开发5天训练营,点击免费参加>>
学完你能收获什么?
1) 掌握游戏开发基本流程
2) 掌握角色第一人称视角人物移动控制方式
3) 掌握武器基类设定及快速切换开发方式
4) 掌握近战战斗功能开发方法
5) 掌握求职阶段准备方式和流程,具备应对面试的能力
6) 了解游戏开发工程师职业发展路径
7) 针对个人情况,在直播现场得到职业发展建议
连续5天,450+分钟
不仅仅让你做出FPS射击类游戏Demo,更会让你了解游戏行业求职所面临最重要的问题,让你在入行前避过这些坑
快点击下方立刻免费参加本次训练营吧! 公众号没看见fps相关啊 您好这边大概5分钟后请你再试一下[思考] 七月第二期继续白嫖[大笑][大笑] 进我的收藏夹吃灰吧! 锁中国区的游戏,歧视华人 fps游戏的终极天敌,外挂 [思考]先走一波体验
页:
[1]