unity常用生命周期函数以及执行顺序详解

2023-11-04

执行顺序:Awake-->OnEnable-->Start-->FixedUpdate-->Update-->LateUpdate-->OnGUI-->OnDisable-->OnDestroy-->OnApplicationQuit

频繁执行的函数:OnEnable/OnDisable/OnApplicationFocus/OnBecameInvisible/OnBecameVisible 



    /// <summary>
    /// 当游戏对象被唤醒的时候执行,不管你身上的脚本组件是否禁用该函数都会执行.
    /// </summary>
    private void Awake()
    {
        Debug.Log("Awake");
    }
    /// <summary>
    /// 当组件或者游戏对象可用的时候执行
    /// </summary>
    private void OnEnable()
    {
        Debug.Log("OnEnable");
    }
    /// <summary>
    /// 当程序启动的时候执行   可应用与初始化.
    /// </summary>
    private void Start()
    {
        Debug.Log("Start");
    }
    /// <summary>
    /// 固定帧更新 默认每帧0.02秒. 
    /// </summary>
    private void FixedUpdate()
    {
        Debug.Log("FixedUpdate");
    }
    /// <summary>
    /// 每帧执行一次.
    /// </summary>
    private void Update()
    {
        Debug.Log("Update");
    }
    /// <summary>
    /// 在Update每帧执行完之后执行   用于摄像机跟随.
    /// </summary>
    private void LateUpdate()
    {
        Debug.Log("LateUpdate");
    }
    /// <summary>
    /// 渲染或处理GUI界面时调用.
    /// </summary>
    private void OnGUI()
    {
        Debug.Log("OnGUI");
    }

    /// <summary>
    /// 当组件或者游戏对象禁用的时候执行
    /// </summary>
    private void OnDisable()
    {
        Debug.Log("OnDisable");
    }
    /// <summary>
    /// 当游戏对象销毁的时候执行.
    /// </summary>
    private void OnDestroy()
    {
        Debug.Log("OnDestroy");
    }
    /// <summary>
    /// 应用程序退出的时候执行  作用于应用程序退出的时候将消息发送给所有的游戏对象.
    /// </summary>
    private void OnApplicationQuit()
    {
        Debug.Log("OnApplicationQuit");
    }
    /// <summary>
    /// 当玩家获取或失去焦点的时候发送给所有游戏对象.
    /// </summary>
    /// <param name="focus">是否获取了鼠标焦点</param>
    private void OnApplicationFocus(bool focus)
    {
        if (focus)
        {
            Debug.Log("获取了焦点");
        }
        else
        {
            Debug.Log("失去了焦点");
        }

    }
    /// <summary>
    /// 当游戏对象不在摄像机照射的范围内执行
    /// </summary>
    private void OnBecameInvisible()
    {
        Debug.Log("OnBecameInvisible");
    }
    /// <summary>
    /// 当游戏对象在摄像机照射的范围内执行
    /// </summary>
    private void OnBecameVisible()
    {
        Debug.Log("OnBecameVisible");
    }

FixedUpdate函数可以设置每帧的更新时间【见图】

各位可以复制代码自行测试。

此文章只是为了记录一下学习笔记,如有不足还望多多指点! 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

unity常用生命周期函数以及执行顺序详解 的相关文章

  • Unity的C#编程教程_52_类 Class 详解及应用练习(一)

    文章目录 C Classes for Behaviours Custom Classes 1 Custom Classes 2 Serialized Custom Class RPG Item Database Example 3 When
  • Unity之Animation动画

    Unity之Animation动画 Unity之Animation绘制动画 这篇文章做最简单的动画 让一个立方体从左边移动到右边 1 创建一个Unity的新工程 名为TestAnimation 点击Create And Open按键 打开工
  • Unity3D方向键控制人物移动的代码

    代码 var v Input GetAxis Vertical var h Input GetAxis Horizontal transform Translate transform forward Time deltaTime move
  • unity多个贴图shader

    在一个Material上放多个贴图的测试 比如一个plane上放四个贴图 Shader aaa Properties MainTex Texture 2D white MainTex2 Texture 2D white MainTex3 T
  • Unity 实现选框选中物体

    最近在看RTS游戏视频注意到了选框功能 就尝试做了一下 功能实现 脚本挂载到Camera上 要不然OnPostRender 函数无法调用 rectMat新建一个材质球 设置成默认的Sprites就可以了 using System Colle
  • Unity Cinemachine插件学习笔记,实现单目标和多目标之间切换

    Cinemachine在2017版中正式加入 结合Timeline可以轻松的制作出一下相机动画 相比Unity自带的标准相机 这个Cinemachine插件可操作的变量更多 不同虚拟相机 用来控制相机的 可以平滑转换等 具体可以参考上篇 U
  • 关于unity3的中关于创建方法的总结

    关于创建基本物体 有些情况会使用上 物体碰撞 游戏里怪物和英雄的触发事件上 创建一个简单物体 隐藏mesh可以作为简单的触法器使用 多次创建预制体Prefab 方法Instantiate original Object position V
  • Unity3d提升效率的高级技巧(二)

    11 在层次视图中选中某个游戏对象 按快捷键 Cmd Ctrl D 即可复制该对象 对于检视面板中的数组字段也可已同样的方式来复制元素 12 检视面板中所有的颜色字段都是支持复制和粘贴的 只需右键点击颜色字段既可选择操作 13 如果觉得在场
  • Unity3D 碰撞器和触发器

    对于碰撞器和触发器经常忘记用法 这次主要记录下以便于能够复习用 1 碰撞器 发生条件 1 碰撞的双方中一定至少要有一个Rigidbody存在 并且碰撞双方必须都要有碰撞体组件 2 碰撞双方若只有一个有刚体 那么那个刚体一定要处于运动的状态下
  • protobuf C#编译

    protobuf C 编译 标签 protobufc 2016 08 30 23 22 342人阅读 评论 1 收藏 举报 分类 工作记录 2 版权声明 本文为博主原创文章 未经博主允许不得转载 1 下载protobuf代码 https g
  • JPush极光推送Unity插件iOS设备无法获取DeviceToken

    前言 最近在使用JPush进行极光推送 Unity插件GitHub地址https github com jpush jpush unity3d plugin 问题描述 但是发现了一个问题 按照官方文档操作 最终仍然无法获取DeviceTok
  • 游戏开发unity编辑器扩展知识系列:一个方法添加至多个MenuItem

    代码如下 用多个MenuItem标记方法就可以了 MenuItem GameObject 生成带图片的Image false 100 MenuItem Assets 生成带图片的Image static void GenImageGameO
  • unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新

    unity3d 理解刚体 Rigidbody 和碰撞体 Collider 以及触发器 Is Trigger 边学边更新 分类 Unity3D 2014 04 01 16 50 2755人阅读 评论 2 收藏 举报 刚体 Rigidbody
  • unity本地分数排行榜简单解决方案(Json)

    具体效果 大体方法 创建一个分数类Score和一个分数类的容器List
  • 【Unity灯光与渲染技术】Global Illumination全局光照

    本系列主要参考Unity灯光与渲染技术教程Unity Lighting And Rendering 同时会加上一点个人实践过程和理解 分割线 这篇文章主要讲全局光照 在看教程的时候就有一个点不是很理解 就是作者开启物体的static这个选项
  • unity中的一些快捷键(齐)

    重命名的快捷键是F2 ALT 鼠标左键点击Hierarchy对象可以展开和收起对象的所有子物体 SHIFT 空格 可以对当前窗口进行放大缩小
  • Unity使用spine动画

    Unity使用spine动画 在 Unity 中 常常使用 Spine 来制作一些动画 引擎本身并不能直接播放 Spine 动画 需要额外导入一个 RunTime 插件库才能支持 官网插件导入 当然 也可以到 Spine 官网关于 Unit
  • 对Unity3D 静态批处理和动态批处理的理解

    Draw Call就是CPU调用图像编程接口 像OpenGL或者 DirectX 简单来说 Draw Call就是由CPU发起的一个命令 添加到一个命令缓冲区 当GPU完成了上一次的渲染任务之后 会从命令缓冲区的命令队列中再取出一个并执行
  • Mecanim Any State

    Any State表示任意状态 任意状态是 一个一直存在的特殊状态 他的存在是为了保证你在无意转移至某个你当前正处于的特殊状态而准备的 为你的状态机中的每个状态设置相同的对外转移是一个快捷的方式 假如有Walk Run Fly Die这四个
  • Unity3D的四种坐标系

    1 World Space 世界坐标 我们在场景中添加物体 如 Cube 他们都是以世界坐标显示在场景中的 transform position可以获得该位置坐标 2 Screen Space 屏幕坐标 以像素来定义的 以屏幕的左下角为 0

随机推荐

  • gcc的使用方法

    gcc 在x86平台ubuntu应用程序下编译 和arm linux gcc 在arm裸机下编译 的常用选项 注 vc6 0 在x86平台windows应用程序下编译 gcc的使用方法 gcc 选项 文件名 gcc常用选项 v 查看gcc编
  • C语言实现数据结构代码(四)-图-图的遍历

    一 深度优先搜索遍历 DFS 1 基本思想 类似于树的先序遍历 首先访问出发点v 并将其标记为已访问过 选取与v邻接的未被访问的任意一个顶点w 访问w 选取与w邻接的未被访问的任一顶点访问 以此重复进行 当一个顶点所有的邻接顶点都被访问过时
  • 取服务器视频文件,视频从云服务器获取视频文件

    视频从云服务器获取视频文件 内容精选 换一换 支持将华为云服务器上的音视频文件通过内网方式上传到与服务器在同一区域的视频点播服务中 但您需要先将服务器当前使用的DNS切换为华为云的内网DNS 具体请参见怎样切换内网DNS 然后使用视频点播服
  • MATLAB 文件及文件夹操作

    1 matlab中读取一行多个字符的文本 fid fopen while feof fid tline fgetl fid row col size tline print findstr tline print vein findstr
  • 代码保护软件VMProtect用户手册主窗口之主菜单

    VMProtect是一种很可靠的工具 可以保护应用程序代码免受分析 但只有在应用程序内保护机制正确构建且没有可能破坏整个保护的严重错误的情况下 才能实现最好的效果 下载VMProtect最新试用版 接下来为大家介绍关于VMProtect中主
  • PerfView专题 (第十二篇):对 C# 下的 SDK 类库进行监控(大结局)

    优质资源分享 学习路线指引 点击解锁 知识定位 人群定位 Python实战微信订餐小程序 进阶级 本课程是python flask 微信小程序的完美结合 从项目搭建到腾讯云部署上线 打造一个全栈订餐系统 Python量化交易实战 入门级 手
  • 计算机拒绝访问移动硬盘,移动硬盘拒绝访问怎么办

    在有些时候我们的移动硬盘拒绝访问了 这该怎么办呢 那么下面就由学习啦小编来给你们说说移动硬盘拒绝访问的解决方法吧 希望可以帮到你们哦 移动硬盘拒绝访问的解决方法一 第一线不宜太长 要插在主机后面的USB插口 插上移动硬盘 2 桌面右键单击
  • iOS 打包出错, 编译出错,证书问题,上传AppStore

    1 ERROR ITMS 90046 90085 Invalid Code Signing Entitlements Your application bundle s signature contains code signing ent
  • 利用gitlab pages和hexo搭建一个个人博客

    AI boy原创 转载请注明出处 1 使用github pages存在的问题 目前网上有很多利用github pages和hexo搭建个人博客的教程 但是github目前拒绝了百度蜘蛛的爬取 因此如果希望自己的博客能够被百度收录 就需要采用
  • 前端开发中的 json 和 xml 还有JavaScript的异步加载

    1 xml XML文档中的数据采用元素像 HTML 的段落一样展现
  • 基于Golang和WebSocket打造自已的反向代理

    当我们在开发的时候 有时想要把自已开发的接口暴露给其他开发者或者第三方的服务 方便我们调试和排查问题 那就需要某种机制把我们本地的服务接口暴露到互联网上 本文将要介绍如何通过Golang和WebSocket来实现这一功能 为什么我们需要开发
  • 1032 挖掘机技术哪家强python3无超时

    改进后的代码成功率在90 文章目录 1 最初代码 2 改进代码 1 最初代码 usr bin env python coding utf 8 File 1032 py Time 2020 04 08 17 02 03 Author Schi
  • nginx 之 pcre 安装

    1 下载pcre wget https nchc dl sourceforge net project pcre pcre 8 43 pcre 8 43 tar gz 2 解压 3 进入解压目录 4 执行如下命令 configure ena
  • 【pytorch】pytorch使用记录(持续更新)

    1 找不到moule xxx 当训练模型在重新加载用于评估的时候出现少了一个module前缀 这个问题通常是由于训练的时候采用了数据并行操作 而评估模型的时候却没有用到 因此 只需要在训练代码中补充 net nn DataParallel
  • 深入理解Java中的字符串驻留机制

    引言 在Java编程中 字符串是最常用的数据类型之一 而Java的字符串驻留 intern 机制则是字符串处理中一个重要且经常被忽视的话题 本文将带您深入探讨Java中字符串驻留机制的原理和影响因素 什么是字符串驻留机制 字符串驻留机制是指
  • VAF Variance Accounted For(方差贡献率)

    VAF是指方差贡献率 是一种用于衡量 评估 模型预测能力的指标 即模型的预测结果与实际结果的相关程度 VAF越高 说明模型对实际数据的解释能力越好 模型预测结果越接近实际结果 计算公式 V A F 1
  • 禅道api调用(爬虫方式)

    目录 获取所有进行中的项目信息 url postman Java代码 实体类 逻辑处理 根据项目id获取指定项目下所有未关闭的任务id url postman Java代码 总结 在Java中 我们可以使用各种库和框架来创建自己的爬虫程序
  • 百度你不知道的技巧使用

    百度搜索引擎 技巧使用 例如 python 屏蔽广告 python 能够减小搜索范围 pythonfiletype pdf 搜索文件 intailpython 进行精准匹配 pythoninurl video 匹配带视频的关键词
  • 解决 ResourceWarning: unclosed <socket.socket fd=628, family=AddressFamily 警告问题 unittest ddt data 数据驱动

    文章目录 1 问题 2 办法 1 问题 ResourceWarning unclosed
  • unity常用生命周期函数以及执行顺序详解

    执行顺序 Awake gt OnEnable gt Start gt FixedUpdate gt Update gt LateUpdate gt OnGUI gt OnDisable gt OnDestroy gt OnApplicati