์ฒ์์๋ ๋ค๋ฅธ ๋ชจ๋ ์คํฌ๋ฆฝํธ์ ์คํ์ ์ ์ดํ๋ ๋ฉ์ธ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ๋ค. Main Manager๋ฅผ ์ค์ฌ์ผ๋ก ๋ชจ๋ MonoBehaviour๊ฐ ์ฐ๊ฒฐ๋์ด ์๋ ์คํํ์ ๊ตฌ์กฐ์๋ค. ๋น์ฅ ๋ง๋ค๊ธฐ์๋ ์ง๊ด์ ์ด๊ณ ํธํ๋๋ฐ, ์ฝ๋๋ฅผ ์์ ํ ์๋ก ๊ฐ์ฒด์งํฅ์ด ๋ฌด๋์ง๊ณ ํธ์๋ฅผ ์ํ ์ ์ญ ๋ณ์๊ฐ ์ ์ ๋์ด๋๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ๋ค. ๊ตฌ์กฐ์ ๋ฌธ์ ์ธ์ง ์ด๊ธฐ์ ๊ฐ๋ฐ ๋ฐฉํฅ์ ํ๋ฆฝํ์ง ์์์์ธ์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ๊ณ ์น ๋ถ๋ถ์ด ๋ง์ ๋ฐฉ์์ด์๋ค.
์ด๋ฒ์๋ ๊ฐ MonoBehaviour๊ฐ ๋ฐ๋ก ์ด์ฉ๋๋ ๊ตฌ์กฐ๋ฅผ ์ ํ๊ฒ ๋์๋ค. ๊ฐ Behaviour๊ฐ ์์ํ๋, ์คํฌ๋ฆฝํธ๊ฐ ๋ก๋ฉ๋๊ณ Awake()๋๋ ์์๋ฅผ ์กฐ์ ํ๊ธฐ ์ํด ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ค.
์คํฌ๋ฆฝํธ ์คํ ์์ ์ค์ ์ ์ฌ์ฉํ๋ฉด MonoBehaviour ํด๋์ค์ ์ด๋ฒคํธ ํจ์ ํธ์ถ ์์๋ฅผ ์ง์ ํ ์ ์๋ค.
๋ฉ๋ด
Edit > Project Settings > Script Execution Order
๋๋
File > Build Settings > Player Settings > Script Execution Order
์ค์ ํ๊ธฐ
Default Time์ ์๋ ์ ์๋์ง ์์ ๋ชจ๋ ์คํฌ๋ฆฝํธ์ ์ ์ฉ๋๋ค.
Default Time ๋ด ์คํฌ๋ฆฝํธ๋ค์ ๋ก๋ฉ ์์๋๋ก ์คํ๋๋ค.
์์ชฝ๋ถํฐ ์์๋๋ก ์คํ๋๋ค. ์ฆ ๊ฐ์ด ์์์๋ก ๋จผ์ ์คํ๋๋ค.
ํ ์คํธ
1. MonoBehaviour๋ฅผ ์์๋ฐ์ ์คํฌ๋ฆฝํธ 3๊ฐ๋ฅผ ๋ง๋ ๋ค.
using UnityEngine;
public class TestManager1 : MonoBehaviour
{
private void Awake()
{
Debug.Log("Awake() " + this.name);
}
}
2. GameObject์ ์ถ๊ฐํ ๋ค ์คํํ๋ค.
ํด๋น ํ๋ก์ ํธ์์๋ ์ธ์คํํฐ์์ ๋ง์ง๋ง์ ์ถ๊ฐํ ์ปดํฌ๋ํธ๋ฅผ ๋จผ์ ๋ก๋ฉํ๋ค.
3. ์คํฌ๋ฆฝํธ ์คํ ์์ ๋ณ๊ฒฝํด์ฃผ๊ธฐ
4. ๊ฒฐ๊ณผ
์์ฝ - ์คํฌ๋ฆฝํธ ์คํ ์์๋ฅผ ์กฐ์ ํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ
์ง์ ์ปดํฌ๋ํธ๋ฅผ ์ญ์ ํ๊ณ ์ถ๊ฐํ๋ฉด์ ๋ก๋ฉ ์์๋ฅผ ์กฐ์ ํด๋ ๋ ๊ฒ ๊ฐ๊ธด ํ๋ฐ ์ ๋์ ์ธ ๊ธฐ์ค์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ๊ฑฐ๋์ ๋ํ ์ผํ ์์ ์กฐ์ ์ด ๋ฒ๊ฑฐ๋ก์ด ๋ฐฉ๋ฒ์ด๋ค.
๋ฐ๋ผ์ ํ๋ก์ ํธ ์ธํ ์์ ํธ์ถ ์์๋ฅผ ์ง์ ๋ณ๊ฒฝํ๋ ๊ฒ ๋ ๋ฐ๋์งํ ๋ฐฉ๋ฒ์ด๋ผ ์๊ฐํ๋ค. ์ด๊ฒ ๊ฐ์ฅ ํธํ๋๊น ๊ธฐ๋ฅ์ ๋ง๋ค์ด๋จ๊ฒ ์ง.
์ฐธ๊ณ ์๋ฃ
'๐ ํ์ต๊ณผ ๊ฐ๋ฐ ๊ธฐ๋ก > Unity' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Unity] 2D Sprite์ Outline ์ ํ๊ธฐ (0) | 2024.03.25 |
---|---|
[Unity] Serialization (0) | 2022.04.18 |
Mesh Collider ์ต์ ํ - Mesh Cooking (0) | 2022.03.31 |
Unity Assembly Version Validation ๊ด๋ จ ์๋ฌ (0) | 2022.02.01 |
Mapbox SDK ์ค์นํ๊ธฐ (0) | 2021.12.20 |