今天跟大家伙儿唠唠我最近在搞的射击类游戏,纯属个人瞎摸索,大神勿喷!
就是想搞个简单的打枪游戏,那种小时候玩的街机感觉。先是到处找资料,看看别人咋做的,瞄来瞄去,决定用Unity,感觉上手快,资源也多。
第一步:搭个场景。我随便找点素材,拼个简陋的场景,就一堆方块,代表墙、地啥的。然后搞个Player,就一个胶囊体,凑合着用。重要的是先把人物能控制起来,WASD移动,鼠标控制方向,空格跳跃,这几个基本操作先搞定。当时为这个跳跃,还研究半天Unity的CharacterController组件,总算能跳起来。
第二步:整把枪。枪的模型我直接在Asset Store里淘个免费的,感觉还行。然后就是把枪挂载到Player身上,调整位置、角度,让它看起来像拿在手上。接下来就是写开枪的逻辑,简单粗暴,鼠标左键按下,就发射一颗“子弹”。这个子弹就是一个GameObject,带个Rigidbody组件,给它一个向前的力,让它飞出去。为好看点,还加个LineRenderer组件,模拟子弹的轨迹。
第三步:搞个敌人。敌人也用简单的Cube代替,写个脚本让它能到处瞎溜达。然后加个碰撞检测,如果子弹打到敌人,敌人就“死”掉,就是Destroy(gameObject)。为增加点难度,我还给敌人加个简单的AI,让它能朝Player方向移动,并且在一定距离内发起攻击,攻击方式也很简单,就是发射一颗“导弹”,原理跟子弹差不多。
第四步:完善细节。
- 加点音效,开枪、爆炸、死亡,让游戏听起来更带劲。
- 做个简单的UI,显示血量、得分啥的。
- 优化下子弹的轨迹,让它更真实一点。
- 给敌人加不同的类型,有的移动速度快,有的血量高,有的攻击力强。
打包发布!虽然只是个很简陋的小游戏,但是自己一点一点做出来的,还是很有成就感的。发给朋友们玩,他们说挺有意思的,就是画面太糙。哈哈,下次争取把画面搞好一点!
这回做射击游戏,虽然遇到不少问题,但是通过查资料、看教程、自己摸索,都一一解决。感觉自己对Unity的掌握更深入,也对游戏开发有更深刻的理解。以后继续努力,争取做出更好玩的游戏!