//此处是我进行的炮弹打飞机的游戏开发笔记,只是提及一些核心步骤,没有进行详细步骤说明
//在下版本unity5.0
(一)平面设计的平移和循坏出现在屏幕上
用C#编程
在程序中添加属性
public float PlayerSpeed;
(必须设为public,不然后面无法使用该属性)
在Start里添加初始位置
transform.position = new Vector3(-13.9f, -4.3f,transform.position.z);
(变换位置=新位置 游戏对象(坐标x,坐标y,原坐标))
在Update中添加
float amtToMove = Input.GetAxisRaw("Horizontal")*Time.deltaTime * PlayerSpeed;
(amtToMove是个变量=按键(左右)*时间积分*设定的游戏对象速度)
gameObject.transform.Translate(Vector3.right * amtToMove);
(游戏对象的位置变换(对象.右移动*变换方式))
if (transform.position.x > 13.99f)
transform.position = new Vector3(-13.95f, transform.position.y);
(当游戏对象到达左边界时(自己查看自己的unity边界数值)把游戏对象变换到最右边)
if (transform.position.x <-13.95f)
transform.position = new Vector3(13.99f, transform.position.y);
(当游戏对象到达左边界时(自己查看自己的unity边界数值)把游戏对象变换到最右边
(二)实现炮弹的构建与销毁
关于材质Material:
1.添加材质(如颜色)注意首先必须把材质拖入文件中,如果没有要建立一个文件,然后是拖往对象而不是拖到名称
关于属性Component:
1.点击对象后再点击Component才是打开它的属性
2.关于Physics
(1)Rigidbody(实现碰撞检测)(还需写C#)
建立好对象后C#如下
在程序中添加属性:
public float ProjectileSpeed;
(设置对象(炮弹)速度)
在Update中添加:
float amtToMove = ProjectileSpeed * Time.deltaTime;
(移动的距离=速度*时间)
transform.Translate(Vector3.up * amtToMove);
(实行位置变换)
if (transform.position.y > 5.0)
Destroy(this.gameObject);
(当对象(炮弹)的位置超出上界时进行销毁(注意是this.gameObject,而不是this)消除对象而不是消除类)
#为了实现加快游戏速度
在程序中添加
private Transform myTransform;
(注意是private)
在Start中初始化:
myTransform = gameObject.transform;
把Update中的transform改成myTransform
#效果就是transform原来执行无数次这回只执行依次
//在下版本unity5.0
(一)平面设计的平移和循坏出现在屏幕上
用C#编程
在程序中添加属性
public float PlayerSpeed;
(必须设为public,不然后面无法使用该属性)
在Start里添加初始位置
transform.position = new Vector3(-13.9f, -4.3f,transform.position.z);
(变换位置=新位置 游戏对象(坐标x,坐标y,原坐标))
在Update中添加
float amtToMove = Input.GetAxisRaw("Horizontal")*Time.deltaTime * PlayerSpeed;
(amtToMove是个变量=按键(左右)*时间积分*设定的游戏对象速度)
gameObject.transform.Translate(Vector3.right * amtToMove);
(游戏对象的位置变换(对象.右移动*变换方式))
if (transform.position.x > 13.99f)
transform.position = new Vector3(-13.95f, transform.position.y);
(当游戏对象到达左边界时(自己查看自己的unity边界数值)把游戏对象变换到最右边)
if (transform.position.x <-13.95f)
transform.position = new Vector3(13.99f, transform.position.y);
(当游戏对象到达左边界时(自己查看自己的unity边界数值)把游戏对象变换到最右边
(二)实现炮弹的构建与销毁
关于材质Material:
1.添加材质(如颜色)注意首先必须把材质拖入文件中,如果没有要建立一个文件,然后是拖往对象而不是拖到名称
关于属性Component:
1.点击对象后再点击Component才是打开它的属性
2.关于Physics
(1)Rigidbody(实现碰撞检测)(还需写C#)
建立好对象后C#如下
在程序中添加属性:
public float ProjectileSpeed;
(设置对象(炮弹)速度)
在Update中添加:
float amtToMove = ProjectileSpeed * Time.deltaTime;
(移动的距离=速度*时间)
transform.Translate(Vector3.up * amtToMove);
(实行位置变换)
if (transform.position.y > 5.0)
Destroy(this.gameObject);
(当对象(炮弹)的位置超出上界时进行销毁(注意是this.gameObject,而不是this)消除对象而不是消除类)
#为了实现加快游戏速度
在程序中添加
private Transform myTransform;
(注意是private)
在Start中初始化:
myTransform = gameObject.transform;
把Update中的transform改成myTransform
#效果就是transform原来执行无数次这回只执行依次