周学习笔记#1
Input.GetAxis()
Vertical:获得垂直方向。
Horizontal:获得水平方向。
float h = Input.GetAxis("Horizontal"); //获得水平方向
float v = Input.GetAxis("Vertical"); //获得垂直方向
Transform
1.transform.Translate(Vector3.forward*Time.deltaTime);
作用是使对象向着某一个方向平移一段距离。
Vector3.forward是坐标(0, 0, 1)缩写。当直接操作在 position 上时,会使游戏对象沿着世界坐标系的 z 轴移动。
transform.Translate(new Vector3(h, 0, v) * Time.deltaTime);
2.Variables 变量 及 Functions 函数
positions = new Transform[transform.childCount];
for (int i = 0; i < positions.Length; i++)
{
positions[i] = transform.GetChild(i);
}
childCount:该变换的子对象数量。
GetChild:通过索引返回一个变换的子对象。
[点击解锁更多知识]((6条消息) Unity Transform_weixin_33691817的博客-CSDN博客)
[System.Serializable]
该关键字可以将自定义class 显示在inspector 面板上面序列化
yield return new WaitForSeconds()
暂停
for(int i = 0; i< wave.count; i++)
{
GameObject.Instantiate(wave.enemyPrefab, START.position, Quaternion.identity);
yield return new WaitForSeconds(wave.rate); //每个怪的生产间隔时间
}
yield return new WaitForSeconds(waveRate); //每波的间隔时间
Vector3
Vector3.up;
表示世界坐标系中 Y 轴正方向上的单位向量
用于编写 Vector3(0, 1, 0) 的简便方法。
Vector3.down;
表示世界坐标系中 Y 轴负方向上的单位向量
用于编写 Vector3(0, -1, 0) 的简便方法。
Vector3.left;
表示世界坐标系中 X 轴负方向上的单位向量
用于编写 Vector3(-1, 0, 0) 的简便方法。
Vector3.right;
表示世界坐标系中 X 轴正方向上的单位向量
用于编写 Vector3(1, 0, 0) 的简便方法。
Vector3.forward;
表示世界坐标系中 Z 轴正方向上的单位向量
用于编写 Vector3(0, 0, 1) 的简便方法。
Vector3.back;
表示世界坐标系中 Z 轴负方向上的单位向量
用于编写 Vector3(0, 0, -1) 的简便方法。
Vector3.magnitude
返回该向量的长度。计算方法:(xx+yy+z*z) 的平方根。
Vector3.sqrMagnitude 返回该向量的平方长度。计算方法:(xx+yy+z*z)
如果只需要比较一些向量的大小, 则可以使用 Vector3.sqrMagnitude 比较它们的平方数(省略开平方操作)
(Vector3 value).normalized
代码示例
transform.Translate(new Vector3(h * speed, mouse * mouseSpeed, v * speed) * Time.deltaTime);