【Unity细节】论复合函数在Start生命周期中的调用顺序和时间


在这里插入图片描述


👨‍💻个人主页:@元宇宙-秩沅

hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

本文由 秩沅 原创

😶‍🌫️收录于专栏:unity细节和bug

😶‍🌫️优质专栏

⭐【软件设计师高频考点暴击】


⭐关于物体的动画碰到其他碰撞器后停止播放的问题⭐


文章目录

    • ⭐关于物体的动画碰到其他碰撞器后停止播放的问题⭐
    • 🎶描述
    • 🎶原因
    • 🎶解决
    • ⭐相关文章⭐
    • 👍每天一学


🎶描述


在这里插入图片描述

  • 此时我想等待个三秒后再隐藏面板
  • 但是最后结果为面板一直显示无法隐藏
  • 加了协程也不管用,难道Start函数不是按顺序执行的?
    在这里插入图片描述

🎶原因


  • UIManager.GetInstance().ShowPanel(“LoginPanel”);
    该方法里面含有异步加载,那么异步加载就涉及新开了一个线程,所有时间不在一个主线程上

  • Debug.Log(UIManager.GetInstance().panelDic.Count);
    打印这个字典里的数量还是为0 的原因因为,字典的添加是在上一个方法的异步加载里面所以时间不在一个线程上面
    在这里插入图片描述

  • 所以运行时,明明逻辑语句在,第一个语句后面,运行之后结果还是0,字典里面为空


🎶解决


在这里插入图片描述

  • 将需要执行的语句放在协程方法的后面

解决了点个赞,关注下吧✅


⭐相关文章⭐

⭐【2023unity游戏制作-mango的冒险】-开始画面API制作

⭐【unity游戏制作-mango的冒险】-场景搭建

⭐“狂飙”游戏制作—游戏分类图鉴(网易游学)

⭐本站最全-unity常用API大全(万字详解),不信你不收藏



你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!

👍每天一学


👨‍💻十大常见的生命函数


👨‍💻Reset()://重置函数,


调用情况和时间:
编译器不运行的情况下 和 使用脚本组件Reset功能的时候, 挂脚本的时候

调用次数: 1次


👨‍💻 Awake(); //苏醒函数


调用情况和时间:

1.点击运行的时候

2.组件从失灵到激活的时候,但只调用一次

3.Instantiate方法调用的时候

调用次数: 1次


👨‍💻OnEnable(); //组件调用函数


调用情况和时间: 组件从失灵到激活的时候,可多次实现

调用次数:只要组件有失灵到激活的状态就可调用 ,


👨‍💻Strat():


调用情况和时间: 当游戏物体被激活,或者脚本组件被激活时调用 , (点击运行的时候也是会被激活)

调用次数: 1次


👨‍💻FixedUpdate(每帧)


一般用作物理更新

调用情况和时间: FixedUpdate一般适用在相关物理引擎中。它的频 率是0.02秒,是固定的。

调用次数: 大概每秒50次左右、

FixedUpdate & Update & LateUpdate的 区别详解


👨‍💻UpData(每帧) ;


一般用作游戏逻辑更新 update取决于电脑显卡的性能,好的话,快,不行的话就慢,所以相比Fixed Update它具有随机性。

调用情况和时间: 在以上生命周期函数之后,每帧调用一次

调用次数: 大概每秒60次左右

变量赋值生效顺序:

变量声明直接赋值 > 检视面板赋值 > Awake > Enable > 外部赋值 > Start


👨‍💻LateUpate(每帧):


一般用作相机更新 它的执行顺序在update的后面,一般适用于相机的跟随,物体运动在update中,相机跟随在LateUpdate,这样会减少误差,避免出现不必要的瑕疵。

调用情况和时间: 在Update调用之后,并且也是每秒60帧左右(适用于物体移动后的视角跟随)

调用次数: 大概每秒60次左右


👨‍💻OnGUI(每帧)


  • 它一般与界面化,渲染,UI等有关,实时执行,比如想在幕布上弄个按钮button

👨‍💻OnDisable():


调用情况和时间: 和OnEnable差不多,但是Disable是组件从完好到失活的状态, (相当于关闭组件的时候)

调用次数: 组件从激活到失灵的时候调用(二者前提是在游戏运行的时候)


👨‍💻OnApplicationQuit()


调用情况和时间: 当所有游戏物体退出时调用,适用于打包的时候

调用次数: 满足以上情况便调用


👨‍💻OnDestroy();


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/160882.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【云服务器】对比传统服务器,为什么说云服务器更具优势?

个人主页:【😊个人主页】 系列专栏:【❤️其他领域】 文章目录 前言云服务器云服务器的优势成本可扩展性可靠性和安全性 总结 前言 2006年搜索引擎大会上,“云服务器”的概念孕育而生,时至今日云服务器与传统服务器的…

高德Go生态建设与研发实践

序 高德在构建Go生态演化过程中,已经实现了QPS从0到峰值千万的飞跃,本篇文章主要介绍在此过程中积累的一些技术决策及性能优化和重构经验。阅读本文读者会有以下3点收获: 1.高德Go生态发展历程及现状分析 2.高德云原生Serverless落地情况&…

【教3妹学编程-算法题】117. 填充每个节点的下一个右侧节点指针 II

2哥 : 3妹,听说你昨天去面试了,怎么样啊? 3妹:嗨,别提了,让我回去等通知,估计是没有通知了, 还浪费我请了一天假。 2哥 : 你又请假了啊, 你是怎么跟你那个严厉的老板请假…

Leetcode-1 两数之和

暴力穷举 class Solution {public int[] twoSum(int[] nums, int target) {int[] num new int[2];for(int i0;i<nums.length-1;i){for(int ji1;j<nums.length;j){if(nums[i]nums[j]target){num[0]i;num[1]j;}}}return num;} }HashMap&#xff0c;记录下标和对应值&…

leetcode刷题 - SQL - 简单

目录 1. 175组合两个表 左外连接 2. 181. 超过经理收入的员工 3. 182. 查找重复的电子邮箱 4. 196. 删除重复的电子邮箱 5. 197. 上升的温度 日期作差 6. 511. 游戏玩法分析 I 7. 577. 员工奖金 null条件运算 8. 584. 寻找用户推荐人 9. 586. 订单最多的客户 10. 595. 大的国家…

【Python3】【力扣题】217. 存在重复元素

【力扣题】题目描述&#xff1a; 【Python3】代码&#xff1a; 1、解题思路&#xff1a;遍历每个元素&#xff0c;判断元素个数是否大于1。&#xff08;此方法不适用。超出时间限制&#xff09; class Solution:def containsDuplicate(self, nums: List[int]) -> bool:# 超…

【Linux】基本命令

和光同尘_我的个人主页 一直游到海水变蓝。 --余华 Linux基本命令 &#x1f56f;️前言基础指令lspwdcdtouchmkdirrmdirrmman**cp**mvcat**less指令**输出重定向 >追加重定向 >>输入重定向 <headtail&#xff08;查看日志常用&#xff09;管道时间相关指令dateca…

4K Video Downloader Pro v4.28.0(视频下载器)

4K Video Downloader Pro是一款专业的视频下载软件&#xff0c;支持从YouTube、Vimeo、Facebook、Instagram、TikTok等主流视频网站下载高质量的4K、HD和普通视频。它的操作流程简单&#xff0c;只需复制视频链接并粘贴到软件中即可开始下载。此外&#xff0c;该软件还提供了多…

【UE】从UI拖拽生成物体 —— 更改位置与定点销毁

本篇在上一篇博客&#xff08;【UE】从UI中拖拽生成物体-CSDN博客&#xff09;基础上继续增加更改生成的Actor的位置与定点销毁Actor的功能。 目录 效果 步骤 一、修改生成好的Actor位置 解决问题一&#xff1a;从UI拖出多个actor后&#xff0c;只能对第一个拖出的actor的…

[C++ 中]:6.类和对象下(static成员 + explicit +友元函数 + 内部类 + 编译器优化)

(static成员 explicit 友元函数 内部类 编译器优化&#xff09; 一.static 成员&#xff1a;1.概念引入&#xff1a;1-1&#xff1a;定义全局变量记录个数&#xff1f; 2.如果有多个类需要分开去记录类对象的个数&#xff1f;2-1&#xff1a;可不可以声明成员变量解决&#…

Ubuntu下安装vscode,并解决终端打不开vscode的问题

Visual Studio Code安装 1&#xff0c;使用 apt 安装 Visual Studio Code 在官方的微软 Apt 源仓库中可用。按照下面的步骤进行即可&#xff1a; 以 sudo 用户身份运行下面的命令&#xff0c;更新软件包索引&#xff0c;并且安装依赖软件&#xff1a; sudo apt update sud…

2.Docker基本架构简介与安装实战

1.认识Docker的基本架构 下面这张图是docker官网上的&#xff0c;介绍了整个Docker的基础架构&#xff0c;我们根据这张图来学习一下docker的涉及到的一些相关概念。 1.1 Docker的架构组成 Docker架构是由Client(客户端)、Docker Host(服务端)、Registry(远程仓库)组成。 …