在第一个场景的Awake方法调用后,Start方法调用前输出字符串After first Scene loaded和RuntimeMethodLoad: After first Scene loaded。 RuntimeInitializeLoadType参数 RuntimeInitializeOnLoadMethod方法标记的参数可以指定方法调用的时机: AfterSceneLoad:场景载入后调用 BeforeSceneLoad:场景载入前调用 AfterAssembliesLoaded:在...
InitializeOnLoadMethod 第一次打开 Unity 编辑器运行一次,之后每次进入 Play 模式都运行一次 RuntimeInitializeOnLoadMethod 在每次进入 Play 模式时运行一次,还可以通过参数确定在加载场景之前还是之后调用方法。 RuntimeInitializeLoadType.AfterSceneLoad// 加载场景后RuntimeInitializeLoadType.BeforeSceneLoad// 在加载场景...
Debug.Log("RuntimeInitializeOnLoadMethod"); } } 输出结果 而它还有两个属性:RuntimeInitializeLoadType.BeforeSceneLoad | RuntimeInitializeLoadType.AfterSceneLoad usingUnityEngine;publicclassInitTest : MonoBehaviour { [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]staticvoidOnBeforeScen...
变量 loadType设置 RuntimeInitializeOnLoadMethod 类型。 构造函数 RuntimeInitializeOnLoadMethodAttribute创建加载场景时使用的运行时类。 继承的成员 Did you find this page useful? Please give it a rating: Report a problem on this page
Unity的RuntimeInitializeOnLoadMethod属性初探 先来看一下它的生命周期 代码语言:javascript 代码 sing UnityEngine;publicclassExampleClass:MonoBehaviour{privatevoidAwake(){Debug.Log("Awake");}privatevoidOnEnable(){Debug.Log("OnEnable");}privatevoidStart(){Debug.Log("Start");}[RuntimeInitializeOnLoadMethod...
using System;using System.Collections;using System.Collections.Generic;using UnityEngine;publicclassStartup:MonoBehaviour{staticGameObject m_GameObject;[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]staticvoidOnBeforeSceneLoadRuntimeMethod(){// 在场景加载之前,可以做一些与游戏无关的一些...
Unity 5.0开始增加了RuntimeInitializeOnLoadMethodAttribute,这样就很方便在游戏初始化之前做一些额外的初始化工作,比如:Bulgy参数设置、SDK初始等工作。 先来看一下它的生命周期 sing UnityEngine;publicclassExampleClass : MonoBehaviour {privatevoidAwake()
RuntimeInitializeOnLoadMethod也可以用于初始化一些数据。例如: [RuntimeInitializeOnLoadMethod] static void InitGameData() { GameData.Initialize(); } 1. 2. 3. 4. 5. 在上述代码中,InitGameData()方法被标记为默认的RuntimeInitializeLoadType.SubsystemRegistration。这意味着该函数将在子系统注册后执行。我们...
using System.Collections.Generic; using UnityEngine; public class Startup : MonoBehaviour { static GameObject m_GameObject; [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] static void OnBeforeSceneLoadRuntimeMethod() {
usingSystem.Collections.Generic; usingUnityEngine; usingUnity.Entities; publicclassBootstrap { [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] publicstaticvoidAwake() { } [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)] ...