Legacy Documentation: Version 5.3
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

RuntimeInitializeOnLoadMethodAttribute.RuntimeInitializeOnLoadMethodAttribute

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

public RuntimeInitializeOnLoadMethodAttribute()
public RuntimeInitializeOnLoadMethodAttribute();
public RuntimeInitializeOnLoadMethodAttribute(loadType: RuntimeInitializeLoadType)
public RuntimeInitializeOnLoadMethodAttribute(RuntimeInitializeLoadType loadType);

Parameters

loadType RuntimeInitializeLoadType: Before or After scene is loaded.

Description

Allow an runtime class method to be initialized when Unity game loads runtime without action from the user.

#pragma strict
class MyClass {
	@RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)
	static function OnBeforeSceneLoadRuntimeMethod() {
		Debug.Log("Before scene loaded");
	}
	@RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)
	static function OnAfterSceneLoadRuntimeMethod() {
		Debug.Log("After scene loaded");
	}
	@RuntimeInitializeOnLoadMethod
	static function OnRuntimeMethodLoad() {
		Debug.Log("RuntimeMethodLoad: After scene loaded");
	}
}
using UnityEngine;

class MyClass { [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] static void OnBeforeSceneLoadRuntimeMethod () { Debug.Log("Before scene loaded"); }

[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)] static void OnAfterSceneLoadRuntimeMethod() { Debug.Log("After scene loaded"); }

[RuntimeInitializeOnLoadMethod] static void OnRuntimeMethodLoad() { Debug.Log("RuntimeMethodLoad: After scene loaded"); } }