这篇文章主要为大家详细介绍了Unity3D实现打砖块游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了Unity3D实现打砖块的具体代码,供大家参考,具体内容如下
基于unity2017
1、 使用Plane创建初始地图
(层级菜单[Hierarcy]-> 3D Object -> Plane)
2、将Plane命名为Gound
3、 更改Scale
x = 2,y = 2,z = 2,将Plane变为原来的两倍
4、在Assest下新建一个文件夹并命名为Material
用于存放材质
5、创建材质
(右键 -> Create -> Mateial),并命名为Gound
6、设置材质的贴图
1).材质的贴图
2).金属度
3).光滑度
7、设置墙壁
1).在Assets中创建一个Prefab目录。
2).在层级目录中创建一个Cube,并将其设为Prefab,设置为Prefab主要是便于整体修改。
3).创建一个空组件,将Cube作为空组件的子组件,并将空组件命名为Bircks
4).为Prefab的Cube组件添加Rigibody属性(物理属性) (点击add Component搜索 Rigibody)
5).使用Ctrl + D 复制方块 与 Ctrl + 左键 按单元格拖动方块
8、创建子弹
在prefab下创建Sphere,同时添加Rigibody属性
9、添加子弹飞出脚本
1).在Assets下创建Script文件夹用于存放脚本
2).右键创建C#脚本,命名为Shoot
3).将Shoot脚本赋予给相机(Main Camera)只需要将脚本拖到Main Camera组件上就可以添加脚本了
4).编辑脚本
public GameObject buttle;//用于获得子弹对象
public float speed = 20F;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
//当鼠标按下左键时触发
if (Input.GetMouseButtonDown(0))
{
//创建子弹对象
GameObject gb = GameObject.Instantiate(buttle,transform.position,transform.rotation);
//创建刚体对象
Rigidbody rg = gb.GetComponent<Rigidbody>();
//设置子弹初始速度
rg.velocity = transform.forward * speed;
}
}
5).赋予脚本Public属性值
只要脚本声明为public的字段,就可以从外部直接得到,这时将准备好的Prefab的Shpere子弹赋值给Buttle
10、创建镜头移动脚本
方法同上,创建一个Movement的C#脚本,赋予Main Camera
public class Movement : MonoBehaviour {
public float speed = 5F;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
float h = Input.GetAxis("Horizontal"); //控制水平移动
float v = Input.GetAxis("Vertical");//控制垂直移动
//设置摄像机位置
transform.Translate(new Vector3(h, v, 0) * Time.deltaTime * speed);
}
}
11、结束
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持得得之家。
本文标题为:Unity3D实现打砖块游戏
基础教程推荐
- C# 调用WebService的方法 2023-03-09
- C# windows语音识别与朗读实例 2023-04-27
- C# List实现行转列的通用方案 2022-11-02
- ZooKeeper的安装及部署教程 2023-01-22
- winform把Office转成PDF文件 2023-06-14
- linux – 如何在Debian Jessie中安装dotnet core sdk 2023-09-26
- C#控制台实现飞行棋小游戏 2023-04-22
- C#类和结构详解 2023-05-30
- 一个读写csv文件的C#类 2022-11-06
- unity实现动态排行榜 2023-04-27