其他
Unity教程|制作一款3D射击游戏(上)
本教程将分为两部分,第一部分讲解基础概念和项目设置。第二部分将在前面的基础上,因为在移动平台开发3D射击游戏会一定的挑战,所以针对会有Android平台进行一些设置。今天先分享上半部分的内容,下次再继续讲解下半部分。
请点击[阅读原文]查阅文中涉及的所有代码。
首先创建一个可以让玩家角色四处走动的游戏世界。依次点击菜单项GameObject > 3D Object > Plane新建平面,在场景中会出现一块平面网格,它将作为游戏地图。然后,依次点击菜单项GameObject > 3D Object >Cube新建立方体,使用界面上方的移动工具,将立方体移至平面上方。
在场景视图或层级视图选中立方体后,依次点击检视面板上的Add Component > Physics > Box Collider添加碰撞器(默认已有则无需添加),同样的步骤选择Add Component > Physics > RigidBody添加刚体。
首先为平面和立方体添加纹理,使用任意你喜欢的图片即可,Asset Store上也有大量的免费资源。在Assets目录下新建文件夹Scenes和Textures,将此前保存的场景存放在Scenes文件夹下,将要添加的纹理存放在Textures文件夹下。然后将纹理直接拖拽至场景视图上的对象,即可为对象添加纹理:
下面来添加自定义天空盒。在Materials文件夹下点击右键Create > Material新建材质,选择Shader类型为Skybox > 6 Sided,设置6张天空盒贴图。如果没有天空盒贴图,也可以选择Shader类型为Procedural使用默认材质。
接着,依次点击菜单项Window > Lighting > Skybox新建天空盒,将刚才新建的材质拖拽至Skybox字段:
点击运行,即可使用W、A、S、D来移动玩家,使用鼠标改变玩家朝向,按空格键跳跃。
在Assets下新建文件夹Scripts,在文件夹下新建C#脚本Forward,该脚本用来控制子弹向前移动。Foward脚本具体代码请点击[阅读原文]查阅。
新建文件夹Prefabs存放可能需要被多次使用的游戏对象,对象可以包含多个不同属性及脚本。将Sphere拖拽至Prefabs文件夹下存为预设体(Prefab),删除场景中的Sphere。注意:记得保存场景。
在Scripts文件夹下新建C#脚本Fire,表示每次点击鼠标左键就会在gameObject的位置生成新的游戏对象blast。将该脚本绑定到枪上,将子弹预设体拖拽至脚本的blast字段。玩家点击鼠标左键,子弹就会出现在枪的中心,并开始向前移动。 Fire脚本具体代码请点击[阅读原文]查阅。
可以在场景中添加更多的地板和立方体进行测试:
以上就是本期简单教学了,有兴趣动手的同学,请点击[阅读原文]查看教程涉及的源码。如果有任何疑问,请访问Unity官方中文社区。
本文来源于:androidauthority.com
原作者:Adam Sinick
更多Unity教程以及技术文章:
Vision VR/AR 亚洲峰会 5折票价仅剩最后4天。优惠购买从速哦。