网页浏览总次数

星期五, 三月 01, 2024

Unity常用API方法和类(带代码)-1(打印函数,生命周期函数)

Unity脚本API (官方文档)

https://docs.unity3d.com/cn/2020.2/ScriptReference/index.html

写文档时使用引擎版本 Unity2020.3.48f1c1

 

Unity常用API 17个模块


 

 

 

 

 

 

 

 

















Unity C#脚本 创建模板


 











默认内容


 

 

 

 












修改成自己的覆盖进去即可


 
















创建一个C#脚本 直接是自定义的模板 ,Inspertor中看中文不乱码


 

 

 










启动vs中的引用数量提示

工具->选项->所有语言->CodeLens  启动CodeLens


 













启动后效果


 

 

 

 

 

 



打印函数


 

 

 

 

 



生命周期函数(事件函数)
































事件函数脚本源码


using System.Collections;

using System.Collections.Generic;

using UnityEngine;

 

public class No2_EventFunction : MonoBehaviour

{

    public float value = 10;

 

    //对变量的赋值顺序(先左后右)

    //变量声明并直接赋值 Inspector面板赋值 Awake OnEnable Start 从类的实例中进行外部赋值

    //外部赋值前提是这个类实例已经有了(已经调用过了Start),所以外部赋值会后于自身的Start

 

    private void Reset()

    {

        //不运行的时候 在编辑器中运行

        //第一次挂载脚本 或 使用reset命令时调用一次

        //初始化所有值

        Debug.Log("调用了Reset()");

    }

 

    private void Awake()

    {

        //游戏运行后

        //运行后加载场景中的所有资源的时候调用一次,GO被首次激活的时候调用一次,

        //GO上有多个脚本 都有Awake(),调用顺序随机

        //GO激活 脚本失活 也会执行

        Debug.Log("调用了Awake()");

    }

 

    private void OnEnable()

    {

        //游戏运行后

        //运行后调用一次 GO或者脚本被激活调用一次

        //生命周期中 Awake之后 Start 之前调用

        //对象池 用来初始化 变量值

        Debug.Log("调用了OnEnable()");

        value = 10;

    }

 

    void Start()

    {

        //游戏运行后

        //运行后调用一次 GO或者脚本被激活调用一次 首次调用一次

        //GO上有多个脚本 都有Start,调用顺序随机,

        //Enable 之后  Update第一帧开始前调用

        Debug.Log("调用了Start()");

    }

 

    void Update()

    {

        //GO激活脚本激活时 一直调用

        //每帧都调用一次 一般是 60次/s

        Debug.Log("调用了Update()");

    }

 

    private void LateUpdate()

    {

        //GO激活脚本激活时 一直调用

        //每帧都调用一次 一般是 60次/s

        //在Update后调用

        //一般xx跟随 被跟随的在Update中处理 跟随的在LateUpdate中处理

        Debug.Log("调用了LateUpdate()");

    }

 

    private void OnDisable()

    {

        //对应OnEnable

        //游戏运行后

        //GO或脚本失活 GO被销毁时调用一次

        Debug.Log("调用了OnDisable()");

    }

 

 

    private void OnApplicationQuit()

    {

        //在程序退出之前所有GO都调用这个函数一次

        //编辑器中停止播放时调用一次

        //网页视频关闭时调用一次

        //在OnDisable前调用

        Debug.Log("调用了OnApplicationQuit()");

    }

 

    private void OnDestroy()

    {

        //场景或游戏结束 调用一次

        //编辑器中停止播放时调用一次

        //网页视频关闭时调用一次

        //当前脚本被移除调用一次

        //当前脚本挂载的GO被删除调用一次

        //用户销毁GO

        Debug.Log("调用了OnDestroy()");

    }

}

没有评论:

发表评论