Unity常用的API—1

  1. Unity脚本都会自动生成Start和Update。区别在于Start方法只执行一次;而Update方法是每帧执行多次。

  2. 查看Unity中的每个方法的用法:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    可通过查看上图方法,在Unity中进行测试。

  3. Awake:当游戏运行起来的时候就进行调用;或者当游戏物体被实例化出来后,Awake也会进行调用;
    FixedUpdate:每秒固定调用60帧(但不一定是每帧一次);
    Disable:当游戏物体被禁用时会进行调用;
    Enable:当游戏物体解除禁用时会进行调用;

  4. Time类:
    deltaTime:每一帧的时间间隔;
    frameCount:游戏开始到现在所运行的帧数;
    realtimeSinceStartup:无论游戏暂停或放在后台,仍会继续运行;
    time:游戏运行所占用的时间;
    timescale:时间比例,表示加速/减速游戏时间;

  5. 使用Time控制物体移动:
    Cube.Translate(Vector3.forward*Time.deltaTime);
    解释: Vector3.forward表示向前移动;
    乘以Time.deltaTime,表示乘以每秒的时间间隔,则运动是平稳的。(否则虽然每秒仍然是移动1米,但是由于每秒的帧率不同将可能造成某些帧移动的快,有些帧移动的慢)

  6. 通常使用timescale控制游戏暂停/加速/减速(结合deltaTime使用)。使用方法:Time.timescale=0;

  7. 可使用realtimeSinceStartup做性能测试,判断哪种方法更加消耗性能;

  8. 创建游戏对象的方法:
    (1) 第一种方法:直接在Start函数中 GameObject go=new GameObject(“Cube”);
    (2) 第二种方法:实例化,先定义一个prefab,然后在Start函数中 GameObject.Instantiate(prefab);//可根据prefab或者另外一个游戏物体进行克隆。
    (3) 使用CreatePrimitive创建一些原始的图形:在Start函数中:GameObject.CreatePrimitive(“PrimitiveType.Plane”);

  9. 使用代码添加组件:
    示例:
    GameObject go= GameObject.CreatePrimitive(PrimitiveType.Cube);//创建一个原始的Cube物体
    Go.AddComponent();//给物体添加刚体组件

  10. activeInHierarchy判断游戏物体是否处于被激活状态或者进行关闭激活状态(True为激活状态,即显示;false为未被激活状态,即不显示):
    GameObject go= GameObject.CreatePrimitive(PrimitiveType.Cube);
    Debug.Log(go.actibeInHierarchy);//输出当前状态
    Go.SetActive(false);//关闭激活状态
    Debug.Log(go.activeInHierarchy);//再次输出当前状态


版权声明:本文为weixin_45839854原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。