Unity 3D学习笔记1 每次更新五个知识点

1、unity 3d中Translate的单位是:米制

2、Unity中Time类中Undate()方法是每帧调用一次,而FixUpdate()方法是每秒调用一次。

3、声明变量时定义了变量的类型,在后面就不能修改变量的类型了

  var a = 1;//此处a为int类型

  a = "Hello World";

  上面再unity中会出错,以下则可以通过:

  var a;

  a = 1;

  a = "Hello World";

4、所有的脚本都是组件(Component),组件属于游戏对象(GameObject),因此脚本都可以附加到游戏对象上。

  常见的组件名称有:

  Transfrom

  Rigidbody

  Renderer      //把Render(渲染器)组件加到游戏对象上可以是游戏对象在场景中显示

  Camera       //吧Camera组件加到游戏对象上可以使该物体变为摄像机对象

  Light

  Animation

  Colider

  在unity中实际上他们都是一个类,默认都有一个对应字母小写的对象,如Transfrom对应的对象(变量名称)为transform,依次类推,Camera和Light比较特

殊,类名和变量名一致。

  附加到游戏对象的组件可以通过GetComponet获得,例如:

  var gameobject:Rigidbody;

  function Update() {

    gameobject.GetComponent(Transform).Translate(1,0,0);  //沿X轴每帧移动一个单位

    //此处GetComponent(Transform)实际上是获取gameobject这个对象的Transform组件,这个函数返回transform对象(默认有的)

    //因而这句话等价于:gameobject.transform.Translate(1,0,0); 

  }

 

5、一个脚本实际上就是一个类!因而也是一个组件

  注意以下内容:

  var otherScript : HelloWorld;

  //注:Helloworld是一个已经写好的类(脚本),注意此处只是定义一个类型,可以优化速度,避免unity在下面的函数中进行类型判断

  function Update() {

  otherScript = GetComponent(HelloWorld);  

  // otherScript指向了HelloWorld组件的一个匿名对象(很重要),函数中传的是类型,将会实例化一个对象
  // 也即将HelloWorld这个脚本加到otherScript这个对象身上
  otherScript.sayHello();   }
原文地址:https://www.cnblogs.com/wyhuang/p/3450531.html