1.坐标系

1.世界坐标系(world):所有物体的世界坐标系都是相同的,不会改变
2.局部坐标系(local):每个物体都有一个本地坐标系,当物体旋转,本地坐标系统也会跟着物体一起旋转

2.常用的必然事件

在Unity的脚本中,可以定义一些特定的函数,这些函数会在满足某些条件时由Unity自动调用,它们被称为必然事件(Certain Events)。而Start和Update正是最常用的两个事件,因此Unity默认为新建的脚本添加了这两个事件。

1、Awake():唤醒脚本,此方法为系统执行的第一个方法,用于脚本 的初始化,在脚本的生命周期中只执行一次。
 2、Update():正常更新,用于更新逻辑。每创建一个脚本,脚本中都会默认添加这个方法。此方法每帧都会由系统自动调用一次。
 3、Start():此方法在Awake()方法之后,Update()方法之前执行,并且只执行一次
 4、LateUpdate():此方法在Update()方法执行后调用,同样每一帧都调用。
 5、FixedUpdate():固定更新,更新频率为0.02s
 6、OnGUI()在每一帧都会由系统自动调用一次,渲染和处理GUI事件时调用。  
 输出:
 print("hello");
 Debuge.Log("hello");
 Debuge.LogWarning("hello");
 Debuge.LogError("hello");



3..MonoBehanviour类


所有的脚本类均需要从它之间或者间地继承,脚本必然事件就是从它继承而来。除了必然事件它还定义了各种特定事件的响应函数。如下图:




4.监视变量



public int id;//在监视面板里面可以看到

private string name;//在监视面板里面看不到

protected string sex;//在监视面板里面看不到

int age;//在监视面板里面看不到








5.Transform


transform.Translate (Vector3.forward);
 transform.Translate (new Vector3(10,0,0));
 transform.Rotate (new Vector3(0,10,0));
 transform.localScale += new Vector3 (0.1F, 0, 0);

 transform.RotateAround(transform.position,Vector3.up,1);




6.键盘判断



GetKey             当通过名称指定的按键被用户按住时返回true

GetKeyDown   当用户按下指定名称的按键时的那一帧返回true。

GetKeyUp        在用户释放给定名字的按键的那一帧返回true。

GetButton           根据按钮名称返回true当对应的虚拟按钮被按住时。

GetAxis(“Horizontal")和GetAxis(“Verical”)   
 if (Input.GetKey(“up”)) {
       print("up arrow key is held down"); 
 }
 if (Input.GetKey(“down”)) {
      print("down arrow key is held down");
 }
 If(Input.GetKeyDown(KeyCode.Escape)){
      print(“按下Esc键”);
 }
 If(Input.GetKeyUp(KeyCode.Escape)){
     print(“松开Esc键”);
 }

GetButtonDown   在给定名称的虚拟按钮被按下的那一帧返回true。

GetButtonUp        在用户释放指定名称的虚拟按钮时返回true。



按下鼠标左键


if(Input.GetButton("Fire1")){
         print(“按下鼠标左键”);
 }
 if (Input.GetMouseButton(0)) {
      Debug.Log("按下鼠标左键");
 }
  if (Input.GetMouseButton(1)) {
      Debug.Log("按下鼠标右键"); 
 }
 if (Input.GetMouseButton(2)) {
      Debug.Log("按下鼠标中键");

7.给物体施加普通力



先给物体添加刚体


transform.rigidbody.AddForce (0,0,1000);
 }