「Unity/MonoBehaviour」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→csの処理順序) |
(→csの処理順序) |
||
行51: | 行51: | ||
{ | { | ||
Debug.Log("DefaultExecutionOrderScene"); | Debug.Log("DefaultExecutionOrderScene"); | ||
− | |||
} | } | ||
} | } | ||
行60: | 行59: | ||
{ | { | ||
Debug.Log("DefaultExecutionOrder2Scene"); | Debug.Log("DefaultExecutionOrder2Scene"); | ||
− | |||
} | } | ||
} | } | ||
</pre> | </pre> |
2021年10月15日 (金) 17:27時点における版
MonoBehaviourとは
オブジェクトの基底クラス
オブジェクトを取ってくる方法
GameObject.Findを使うか、プロパティを使う。
プロパティを使う場合
- 以下SceneをMainCameraなどに貼り付ける
- MainCameraのInspectorを開き、PropertyObjectSceneのuserNameなどに文字を入れる
- MainCameraのInspectorを開き、PropertyObjectSceneのuserNameTextObjやuserNameTextに、Scene上に作ったTextオブジェクトをドラッグ
public class PropertyObjectScene : MonoBehaviour { public string userName; public int age; public GameObject userNameTextObj; public Text userNameText; public List<int> nums; // Start is called before the first frame update void Start() { // GameObjectからGetComponentして、設定する場合 userNameTextObj.GetComponent<Text>().text = userName; // Textへ直で、設定する場合 userNameText.text = userName; // ageを表示 Debug.Log("age=" + age); // リストなども使える foreach (int num in nums) { Debug.Log("num=" + num); } } }
GameObject.Findで取得
こちらを参照。 Unity/GameObject [ショートカット]]
csの処理順序
DefaultExecutionOrderを使う。
以下例では、DefaultExecutionOrder2Sceneの次に、DefaultExecutionOrderSceneが実行される。
[DefaultExecutionOrder(1)] // 大きいと遅く、小さいと早い、通常は0 public class DefaultExecutionOrderScene : MonoBehaviour { void Start() { Debug.Log("DefaultExecutionOrderScene"); } } [DefaultExecutionOrder(-1)] // 大きいと遅く、小さいと早い、通常は0 public class DefaultExecutionOrder2Scene : MonoBehaviour { void Start() { Debug.Log("DefaultExecutionOrder2Scene"); } }