RuntimeInitializeOnLoadMethodAttributeclass in UnityEngine / 继承自:Scripting.PreserveAttribute描述 允许在运行时加载游戏时不通过用户操作 初始化一个运行时类方法。 游戏加载后,将调用标记为 [RuntimeInitializeOnLoadMethod]的 方法。这是在调用 Awake 方法后进行的。注意:标记为 [RuntimeInitializeOnLoadMethod] 的...
Unity5带的新特性 RuntimeInitializeOnLoadMethodAttribute 可以在不实例化的情况下执行脚本函数,对于游戏的初始化工作很有帮助。 // Demonstration of RuntimeInitializeOnLoadMethod and the argument it can take. using UnityEngine; class MyClass { [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLo...
在第一个场景的Awake方法调用后,Start方法调用前输出字符串After first Scene loaded和RuntimeMethodLoad: After first Scene loaded。 RuntimeInitializeLoadType参数 RuntimeInitializeOnLoadMethod方法标记的参数可以指定方法调用的时机: AfterSceneLoad:场景载入后调用 BeforeSceneLoad:场景载入前调用 AfterAssembliesLoaded:在...
4、HideInInspector 可以让public变量在Inspector上隐藏,无法在Editor中进行编辑 5、MultilineAttribute 支持输入多行文本 6、RangeAttribute 限定输入值的范围 7、RequireComponent 组件依赖,使用该组件后自动添加依赖组件 8、RuntimeInitializeOnLoadMethodAttribute 9、SerializeField 强制对变量进行序列化,即使变量是private 10...
Unity 5.0开始增加了RuntimeInitializeOnLoadMethodAttribute,这样就很方便在游戏初始化之前做一些额外的初始化工作,比如:Bulgy参数设置、SDK初始等工作。 先来看一下它的生命周期 sing UnityEngine;publicclassExampleClass : MonoBehaviour {privatevoidAwake()
8、RuntimeInitializeOnLoadMethodAttribute 9、SerializeField 强制对变量进行序列化,即使变量是private 10、SpaceAttribute 增加空位 11、TooltipAttribute 提示信息,当鼠标移到Inspector上时显示相应的提示 12、InitializeOnLoadAttribute 13、InitializeOnLoadMethodAttribute ...
目标元素可以是程序集、类、构造函数、委托、枚举、事件、字段、接口、方法、可移植可执行文件模块、参数、属性 (Property)、返回值、结构或其他属性 (Attribute)。简单的说,通过attribute可以对目标元素(比如说一个类,或者一个变量)进行扩展。 attribute使用规则:...
PlayerSettings 类被标记为 SerializableAttribute,这意味着你可以在 Unity 的 Inspector 窗口中创建一个 PlayerSettings 类型的字段,然后设置其属性。还可以将 PlayerSettings 对象保存到场景或资源文件中,以便在不同的场景之间或不同的游戏实例中使用。
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] static void OnRuntime3() { Debug.Log("On Run Time 3"); } [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)] static void OnRuntime4() { Debug.Log("On Run Time 4"); ...
RuntimeInitializeOnLoadMethod不用作为组件添加到对象也可以直接自动调用初始化方法。要求方法为静态,类、方法可以为私有。当开始游戏就会调用,但有多个这种特性的方法调用顺序是不能确定的。 SelectionBase带这个特性的GameObject,如果点击本身就一定选中本身,即便父对象也有这特性;如果子对象没有带这个特性,则当在场景点击子...