Unity脚本生命周期

news/2024/11/15 15:47:49/文章来源:https://www.cnblogs.com/WorY2019/p/18353160

生命周期函数的概念

所有继承MonoBehavior的脚本,最终都会挂在到GameObject游戏对象上

生命周期函数,就是该脚本对象依附的GameObject对象从出生到消亡整个生命周期中

会通过反射自动调用一些特殊函数

Unity帮助我们记录了一个GameObject对象依附了哪些脚本

会自动的得到这些对象,通过反射去执行一些固定名字的函数

 

生命周期函数

 

生命周期函数的访问修饰符一般为private和protected,因为不需要外部再调用生命周期的函数 都是Unity自己帮助我们调用的

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Lesson01 : MonoBehaviour
{// 当对象(自己这个类的对象)被创建时才会调用该生命周期函数private void Awake(){// 在Unity中打印信息的两种方式// 1.没有继承MonoBehavior类的时候 (假设没有继承的话,为了挂载这里只能继承)Debug.Log("123");//Debug.LogError("出错了");//Debug.LogWarning("警告!!");// 2.继承了MonoBehavior的时候 有一个现成的方法可以使用print("1234567");}// 对于我们来说 想要当一个对象被激活时 进行一些逻辑处理,就可以使用这个函数private void OnEnable(){print("已激活!");}private void Start(){print("start");}// 该函数主要是用于 进行物理更新// 它是每一帧 执行的 但是这里的帧 和游戏帧有些不同// 它的时间间隔 是可以在project setting中的Time中设置的private void FixedUpdate(){print("FixedUpdate");}// 主要用于处理游戏核心逻辑更新的一个函数private void Update(){print("Update");}// 一般这个函数适用于处理摄像机更新相关内容的// Update和LateUpdate之间 Unity进了一些处理 处理我们动画相关的更新private void LateUpdate(){print("LateUpdate");}// 如果我们希望在一个对象被禁用时做一些处理,就可以在该函数中写逻辑private void OnDisable(){print("OnDisable"); }private void OnDestroy(){print("OnDestroy");}
}

生命周期函数支持继承多态

下面代码虽然没有继承MonoBehaviour,依然能够挂载到物体上面,因为他的父类是MonoBehaviour的子类,这也体现了多态。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Lesson01Son : Lesson01
{protected override void Awake(){base.Awake();print("子类的Awake");}
}

 

注:@唐老狮

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

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

相关文章

掌握 Nuxt 3 的页面元数据:使用 definePageMeta 进行自定义配置

title: 掌握 Nuxt 3 的页面元数据:使用 definePageMeta 进行自定义配置 date: 2024/8/11 updated: 2024/8/11 author: cmdragon excerpt: 摘要:本文详细介绍Nuxt 3框架中definePageMeta的使用方法,包括如何为页面组件定义元数据,如布局、过渡效果、路由中间件等。通过具体…

HTB-Permx靶机笔记

Permx靶机笔记 概述 permx靶机是HTB的简单靶机,这台靶机整体考验渗透人员的信息搜集能力,可以收只有信息搜集的快速,才能快速拿到它的flag。 整体是比较简单的靶机 靶机连接:https://app.hackthebox.com/machines/PermX 一、nmap扫描 1)端口扫描 nmap -sT --min-rate 1000…

BMC Genomics | 火龙果的转录组和代谢组分析揭示了果皮和果肉颜色形成的机制

阐明火龙果果肉和果皮变色的候选基因和关键代谢产物,是培育具有优良新口味和高营养价值的火龙果的必要条件。在这里,使用转录组(RNA-Seq)和代谢组分析(UPLC-MS/MS)鉴定了属于两种不同量天尺属物种的三种火龙果的结构和调控基因以及与果皮和果肉颜色相关的关键代谢物。作者综合…

USB协议详解第3讲(USB描述符-设备描述符)

我们第一个学习要点就是USB描述符,所谓描述符其实就是C语言里面的结构体或者数组,数组包含的信息说明当前的设备具有哪些特征。USB描述符有设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符,HID设备有HID描述符、报告描述符和物理描述符。我们先学会每个描述符…

Windows如何保证所有软件在D(其他)盘

Windows如何保证所有软件在D(其他)盘首先使用你电脑有两个固态硬盘就是盘符自己分区也可以 C盘我们只用于电脑的系统资源管理其他所有数据包括默认安装的文件都在D盘或者自定义的盘 win+R 输入 regedit 进入注册表根据下面路径依次点开,找到CurrentVersion,或者复制路径,粘贴…

【笔记】【THM】Malware Analysis(恶意软件分析)

二进制安全入坟【笔记】【THM】Malware Analysis(恶意软件分析) 探索恶意软件的世界,分析恶意软件如何感染系统并造成破坏。 恶意软件分析就像猫捉老鼠的游戏。恶意软件的作者一直在设计新的技术来躲避恶意软件分析师的眼睛,而恶意软件分析师也一直在寻找识别和抵消这些技术…

《逆行人生》电影迅雷下载3.69GB/MP4(百度云磁力资源共享)HD高清版

在光怪陆离的电影世界里,总有一些作品能够触动人心,让人在欢笑与泪水中重新审视生活的意义。《逆行人生》就是这样一部电影,它不仅仅是一部简单的现实题材作品,更是一次对人性光辉和社会现实的深刻探讨。由徐峥执导并主演,这部电影汇聚了冯兵、贾冰、王骁、丁勇岱等众多实…

[图文直播]Windows操作系统部署Jenkins

前言 首先说明一下我为什么选择在Windows操作系统上部署Jenkins是吧,主要基于虽然从长远上看,我是有进行跨平台开发的需求,但至少在可预见的三到五年时间内,我的潜在客户也都是在windows操作系统上。至于跨平台,规划上要有,但正如天龙八部里天龙寺内面对鸠摩智打算拿拈花…

C# 打包

目前打包比较好用的版本是 Advanced_Installer_v16.9.0_Chs .net 4.62 安装的命令行参数 /passive /norestart 安装后启动配置

时间序列分析

平稳性检验 时序图 自相关系数图 纯随机性检验方法性工具 差分运算延迟算子线性差分方程AR模型

Cisco Firepower 4100 Series FTD Software 7.4.2 ASA Software 9.20.3 发布下载 - 思科防火墙系统软件

Cisco Firepower 4100 Series FTD Software 7.4.2 & ASA Software 9.20.3 发布下载 - 思科防火墙系统软件Cisco Firepower 4100 Series FTD Software 7.4.2 & ASA Software 9.20.3 发布下载 - 思科防火墙系统软件 Firepower Threat Defense (FTD) Software 请访问原文链…