今天心血来潮,想搞个移动射击游戏出来玩玩,就直接开干!
我得有个游戏引擎,不然咋整?之前用过 Unity,感觉还行,就它!打开 Unity,新建一个项目,取个名字就叫“移动射击小游戏”好。然后,我得想想这游戏大概是个啥样子。
我琢磨着,弄个简单的 2D 场景算,操作也简单点,屏幕左边控制移动,右边控制射击,就差不多。想好就开始动手!
在 Unity 里,我先创建一个空场景,然后在里面加个地面,就是一个简单的长方形,颜色调成灰不溜秋的,看着像那么回事就行。然后,我又加个主角,就是一个小圆圈,颜色鲜艳点,红色,这样比较显眼。为让主角能动起来,我给它加个刚体组件,这样它就能受重力影响,掉到地面上。
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
就是让主角动起来的关键!我新建一个 C# 脚本,取名叫“PlayerController”。
代码思路大概是这样:
我写一堆代码,然后把这个脚本挂到主角身上,运行!还真能动!不过这移动也太生硬,得想办法优化一下。
我想想,加个平滑移动的效果。我又在脚本里加几行代码,用一个叫“Lerp”的函数,它可以让主角的移动变得平滑一些。再运行,这下舒服多!
主角能动,接下来就该让它射击!我又新建一个 C# 脚本,叫“PlayerShooting”。
这回的代码思路是:
我又是一顿敲键盘,写好射击脚本,把它挂到主角身上。运行!哈哈,现在我的主角可以发射子弹!虽然看起来有点简陋,但起码功能实现。
光自己玩没意思,得加点敌人!我从网上随便找些免费的敌人素材,导入到 Unity 里。这些敌人都长得奇形怪状的,看着就欠揍!
我又写个简单的敌人 AI 脚本,让它们能自动朝着主角移动。然后,我把敌人做成预制体,这样就可以在场景里快速生成一大堆敌人。
现在主角可以射击,敌人也可以移动,但它们之间还不能互动。我得给它们加上碰撞检测,这样子弹打到敌人,敌人才能被消灭。
我在主角和敌人的身上都加碰撞器组件,然后在 PlayerShooting 脚本里加几行代码,判断子弹是否和敌人发生碰撞。如果发生碰撞,就把敌人和子弹都销毁掉。
再运行,现在子弹终于能消灭敌人!看着敌人被我一个个消灭,还挺有成就感的!
游戏的基本功能都实现,接下来就是一些收尾工作。我加个简单的 UI,显示玩家的得分。我又加点音效,让游戏玩起来更带感。我把游戏发布到手机上,自己玩一会儿,感觉还不错!
这只是一个非常简陋的移动射击游戏,还有很多可以改进的地方。比如,可以增加更多的武器、敌人、关卡等等。不过今天就先到这里,以后有时间再慢慢完善!