zoukankan      html  css  js  c++  java
  • unity自带的方法

    就像我们定义的方法名一样。在哪里调用。Unity  MonoBehaviour  脚本文件默认集成的类名,他做了一些设置能识别某些方法。就像tostring()一样。 MonoBehaviour 里面也有一些他能识别的方法名。

    UNITY 中系统由自身调用几个比较重要的方法

    Update()  正常更新,用于更新逻辑。此方法每帧都会系统调用一次。

    LATEUPDTE()  推迟更新,此方法在Update()方法执行完毕后调用,同样每一帧都调用。

    Awake()  脚本唤醒 ,此方法为系统执行的第一个方法。用于脚本的初始化,在脚本的生命周期中只执行一次。

    FIXEDUpdate()  固定更新  在UNITY导航菜单栏中点击 EDIT→ProjectSetting→Time 菜单项后,右侧的属性面版 其中FIXED Timestep更新频率为0.02s。

    Start()  方法 在AWAKE()后面在UPDATE()前面执行。只执行一次
    ONDESTROY() 当前脚本销毁时的调用。

    ONGUI() 绘制界面。同样每帧都在调用

      void Awake()

        {

            print("Awake" + Time.time);

        }

     // Use this for initialization

     void Start () {

            print("Start" + Time.time);

     }

     // Update is called once per frame

     void Update () {

            print("update" + Time.time);

     }

        void LateUpdate()

        {

            print("LateUpdate"+Time.time);

        }

        void FixedUpdate()

        {

            print("FixedUpdate" + Time.time);

        

        }

        void OnDestroy()

        {

            print("OnDestroy" + Time.time);

        }

        void OnGUI()

        {

            print("OnGUI" + Time.time);

        }

     

    创建游戏对象

    创建Cube 的代码

     

    //GameObject.CreatePrimitive() 创建基本对象的代码 参数枚举  基本对象

            CubeObj =GameObject.CreatePrimitive(PrimitiveType.Cube);

           //给此对象 添加刚体,用于物理感应。

            CubeObj.AddComponent<Rigidbody>();

            //设置这个游戏对象的名称

            CubeObj.name = "CubeXX";

            //设置此模型的材质的颜色 游戏中设置头发的颜色,就可以用下面的代码实现

            CubeObj.renderer.material.color =Color.yellow;

            //设置模型的位置。

            CubeObj.transform.position = new Vector3(1f, 1f, 1f);
     

    1GameObject.CreatePrimitive()  创建游戏初始对象,参数可为立方体,球体,圆柱体。

    2. ADDCOMPENT<类型>() 用于给该对象 添加组件

    3renderer.material.color   可设置对象材质球的颜色。

    4. transform.position  设置对象的位置。

     

     

    克隆一个对象

           INSTANTIATE() 需要三个参数   第一个 为克隆的对象,第二个参数为位置,第三个参数位置为角度。


    销毁对象以及 销毁对象多少时间后

    DESTROY (对象)   立即销毁对象

    DESTROY(对象,多少时间销毁)

            Object AttackClone = Instantiate(AttackObj, new Vector3(1, 1, Random.Range(1, 5)), transform.rotation);

            Destroy(AttackClone, Time.deltaTime);

    获取对象的基本三种方式(其他的还有很多)

    GameObject.Find();  通过对象名查找对象,可以有父级 CUBE/CUBE1  /这里就是指子级。
     

     GameObject.FindWithTag(); 通过标签 查找单个对象多个的话就取第一个创建的对象

    GameObject.FindGameObjectsWithTag() 通过标签获取多个对象 。比如某个区域怪物的数量。

     

         // Destroy(GameObject.Find("Cube/Capsule"), 2f);

            Destroy(GameObject.FindWithTag("MyTag"));

           ObjList= GameObject.FindGameObjectsWithTag("MyTag");

           foreach (GameObject item in ObjList)

           {

               item.name = Random.Range(1f, 5f).ToString();

           }

     

    父类子类,对象体之间的方法调用

    •gameObject.SendMessageUpwards(“DesObject”, “销毁”),像父类或自身发送方法和信息参数。只要父类或者自身有方法都会调用。问题来了,有多个父类呢也会调用
     
    •gameObject.BroadcastMessage(“DesObject”, “销毁”);向子类或者自身发送方法消息参数。多个子类也一样。

    •gameObject.SendMessage (“DesObject”, “销毁”);像自身发送消息。
     
     
    用程序设置位置角度,以及长度

            SphereObj.transform.position = new Vector3(-3, 2, -3);
            SphereObj.transform.localEulerAngles = new Vector3(5f, 6f, 7f);
            SphereObj.transform.localScale = new Vector3(5f, 6f, 7f);
     
     
    •gameObject.transform.Rotate()   设置对象方向,和速度。
    •gameObject.transform.RotateAround() 三个参数,围绕对象的位置,旋转方向 ,速度。
     
    gameObject.transform.Rotate(Vector3.right, Time.deltaTime * 5);
       gameObject.transform.RotateAround(CubeT.position, Vector3.up, 1f);
    三维坐标方向
    •Vector3.right: x轴方向
    •Vector3.up  Y轴方向
    •Vector3.foward Z轴方向。
  • 相关阅读:
    asp.net的Context.Cache缓存过期策略
    sql语句执行时算术运算导致溢出。
    sqlserver进行join的方式选择
    Apollo配置中心
    sqlserver的left join优化
    iis设置上传文件大小限制
    Android中的颜色值
    Network authentication method and device for implementing the same
    MongoDB GridFS
    MongoDB 正则表达式
  • 原文地址:https://www.cnblogs.com/seabrea/p/4433139.html
Copyright © 2011-2022 走看看