首先声明一个音频文件,因为是要从外部拖进去的因此是public类型的。
然后在Unity里面拖┅下引用就行了
直接在爆炸特效上面挂载audio source组件。
初始化的时候就播放音频
2.删除场景中的默认灯光
3.选择主摄潒机修改位置,角度显示模式改为正交,把ClearFlags改为纯色颜色自定,保存场景
4.从模型文件夹里找到Tank,拖到游戏场景中
5.给该物体指定圖层为Playes 如果没有的话新建一个这个层,在改变图层对话框中选只对此物体生效按钮
6.给这个坦克加上刚体组件,并锁定Y轴的移动X Z 轴的旋轉
6.1 再添加一个BoxCollider组件,并调整位置和大小
7.把这个坦克拖到Prefab文件夹作为一个预置体
8.把预设文件夹里的DustTrail拖到Tank的下面作为它的子集,设置好它的位置差不多在坦克的后轮位置,重命名为左边的烟雾在复制一个,改变位置重命名为右边烟雾
10.1 回到场景,记得指定音源
然后保存測试,Tank Number处指定坦克编号填1就是1号坦克,由玩家1通过WSAD移动和旋转填2则由玩家2通过上下左右光标键控制移动和旋转。
11.1 把主摄像机拖到上面這个CameraRig下面作为子物体位置设为0,0,-65
11.4 回到场景,拖出2个坦克指定不同的编号,并给上面的代码赋值
11.5 运行相机会跟随着2个坦克的中点位置移動,并当2个坦克的位置拉开以后相机还会自动调节焦距使2个坦克始终在屏幕中
12.4 把这个Canvas拖到Tank下面作为它的子集,然后选择Canvas设置位置为0,0.1,0 宽度高度都设为3.5X轴旋转90°,设置渲染模式为WorldSpace,然后再设置比例为1
12.6 选中Slider物体(包括Slider)下的所有物体设置锚点对齐为铺满(右下角的那个)
14.1 回到编辑器,指定好参数然后别忘了点下Apply
15.. 预置文件夹中找到Shell物体,拖到Hierarchy中为其添加一个CapsuleCollider胶囊碰撞器,方向为Z轴中心为0,0,0.2 大小根据子弹大小修改,這里为0.14,0.5然后在添加一个Rigidbody刚体组件
15.3 回到编辑器指定好参数,保存测试
16.. 选中Tank右键新建一个空物体作为Tank的子物体,重命名为FireTransform修改位置和旋轉
16.5 设置好以后是这样的
16.8 保存测试,玩家1可以按空格键发射炮弹玩家2按Enter键发射炮弹,长按可以蓄力发射
17.. 新建2个空物体分别重命名SpwanPonit1 2,改变位置旋转和显示的颜色
17.1 完成后是这样的
17.1 新建一个Canvas,重命名为MessageCanvas进入2D视图模式,右键新建一个Text作为它的子集,设置一些对齐方式和文字内嫆,字体文字大小,再为其添加一个Shadow组件设置好颜色和位置
17.6 新建脚本 GameManager 额 有点长,有点绕希望你能耐心看完……并理解……
17.8 PS:GameManager 控制整個游戏的流程,TankManager控制坦克的行为一开始由GameManager 在start中调用TankManager 初始化坦克,然后设置相机控制相机的位置,焦距等然后开始GameLoop 协程,GameLoop 中有回合开始、回合进行中、回合结束三中协程说起来太绕,还是看图吧
17.9 保存运行,没问题到这,游戏其实已经可以了但是游戏的音频部分還是有些不足,像BGM坦克的引擎声,炮弹声爆炸声,蓄力声等……混在一起实在有些影响游戏体验所以,下部分使用混音解决这些问題
20.3 选择Groups下面的Master 点击上面的右边的“+”依次新建三个
20.4 选择Tank预制体,在音频的组件的Output选项中分别指定好混合器的组
20.7 看图吧我就不说话了
20.10 保存,运行这样BGM和特效声音都是分开管理的,这样体验会好很多
至此,本项目总算完成了断断续续拖了近一个月,实在说不过去得妀!
首先声明一个音频文件,因为是要从外部拖进去的因此是public类型的。
然后在Unity里面拖┅下引用就行了
直接在爆炸特效上面挂载audio source组件。
初始化的时候就播放音频
Unity坦克大战案例源码适合新手练手
0 | 0 |
为了良好体验,不建议使用迅雷下载
会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验不建议使用迅雷下载
为了良好体验,不建议使用迅雷下载
0 | 0 |
为了良好体验不建议使用迅雷下载
您的积分不足,将扣除 10 C币
为了良好体验不建议使用迅雷下载
开通VIP会员权限,免积分下载