Instantiate(a,b,c);
函数
作用来创建一个物体
param a Transform 类型 需要创建的物体
param b Vector3 类型 创建物体摆放的位置
param c Quaternion类型 创建物体的摆放方向
也可以这样创建
GameObject go= (GameObject)Instantiate(flyswordon);//创建预设
go.transform .position =new Vector3 (1 ,2,3);//重新摆放预设
go.transform .Rotate (1,2,3 );//预设的旋转角
RaycastHit info;
bool hit = Physics.Raycast (m_weapones.position, m_camTransform.TransformDirection (Vector3.forward), out info, 100,m_layer);
if (hit) {
Debug.Log (info.transform.tag);//碰撞到的物体的tag
Instantiate (m_fx, info.point, info.transform.rotation);
}
发射一个物理射线 起点、 方向、 距离、 可碰层
碰撞到的物体信息保存在info中
//获取鼠标在屏幕上移动量
float rh = Input.GetAxis("Mouse X");
float rv = Input.GetAxis("Mouse Y");
Transform.eulerAngles 欧拉角
transform.eulerAngles = new Vector3(10, 20, 0);
print(transform.eulerAngles.x);//x轴旋转角
print(transform.eulerAngles.y);//Y轴旋转角
print(transform.eulerAngles.z);//z 轴旋转角
//检测点击键盘上的Q键
if (Input.GetKey (KeyCode.Q)) {
//向左旋转
transform.Rotate (0/*不沿x轴不旋转*/, -25 * Time.deltaTime, 0/*不沿z轴不旋转*/, Space.Self);
}
//绕着Y轴 逆时针旋转
transform.Rotate (0/*不沿x轴不旋转*/, -25 * Time.deltaTime, 0/*不沿z轴不旋转*/, Space.Self);
//绕着Y轴 顺时针旋转
transform.Rotate (0/*不沿x轴不旋转*/, 25 * Time.deltaTime, 0/*不沿z轴不旋转*/, Space.Self);
//检测键盘输入 x轴方向
float x = Input.GetAxis ("Horizontal") * Time.deltaTime * speed;
//检测键盘输入 z轴方向
float z = Input.GetAxis ("Vertical") * Time.deltaTime * speed;
//检测键盘输入 y轴方向
//float y = Input.GetAxis ("Vertical") * Time.deltaTime * speed;
transform.Translate (x, 0, z);
//使用UI 需要导入 using UnityEngine.UI;
numberOfFS++;
GameObject.Find("Canvas/FSText").GetComponent<Text>().text= "发射数:"+numberOfFS;
//3.0秒之后销毁 游戏对象
Destroy (gameObject, 3.0f);
//打开一个场景
using UnityEngine.SceneManagement;
SceneManager.LoadScene("场景名称");
Invoke 反射调用
SendMessage 通过寻找物体的所有脚本组件 中传入的方法名称 执行传入的方法