μ λν°μμ λ²νΌμ ν¨μ μ°κ²° ν λ, λ³μ 2κ° μ΄μμΈ ν¨μλ μ΄λ»κ² μ°κ²°ν΄μΌν¨?
보면 λ³μκ° μκ±°λ, νλμΈ ν¨μλ€λ§ μ°κ²°ν μ μλ ν¨μ λͺ©λ‘μ λ¨λλΌκ΅¬.
2κ° μ΄μμΈ κ²λ€μ μλ μλλκ±°μΌ?
μ±gptμκ² λ¬Όμ΄λ΄
μ λν°μμ λ²νΌμ ν¨μλ₯Ό μ°κ²°ν λ, λ³μ 2κ° μ΄μμ΄ νμν ν¨μλ₯Ό μ°κ²°νλ λ°©λ²μ λ κ°μ§κ° μμ΅λλ€. μ€κ° ν¨μλ₯Ό λ§λ€μ΄μ μ°κ²°νκΈ° λ²νΌμ μ°κ²°ν ν¨μλ₯Ό μ§μ μ ννμ§ μκ³ , λ³μ 2κ° μ΄μμ λ°λ μ€κ° ν¨μλ₯Ό λ§λλλ€. μ€κ° ν¨μμμλ λ°μ λ³μλ₯Ό μ¬μ©νμ¬ μ€μ ν¨μλ₯Ό νΈμΆνκ³ , κ·Έ κ²°κ³Όλ₯Ό λ°νν©λλ€. μ΄ν λ²νΌμ μ€κ° ν¨μλ₯Ό μ°κ²°ν©λλ€. μλ₯Ό λ€μ΄, λ€μκ³Ό κ°μ΄ μ€κ° ν¨μλ₯Ό λ§λ€ μ μμ΅λλ€. c#public void OnButtonClick(){ // λ³μ 2κ°λ₯Ό λ°λ μ€μ ν¨μ νΈμΆ ActualFunction(var1, var2);}private void ActualFunction(int var1, f
private void ActualFunction(int var1, float var2) { // var1κ³Ό var2λ₯Ό μ¬μ©νλ μ½λ }
} UnityEventλ₯Ό μ¬μ©νμ¬ μ°κ²°νκΈ° UnityEventλ λ€μν λ§€κ°λ³μλ₯Ό κ°μ§ μ μλ μ΄λ²€νΈλ₯Ό μμ±ν μ μλ ν΄λμ€μ λλ€. λ³μ 2κ° μ΄μμ λ°λ ν¨μλ₯Ό UnityEventλ‘ λννμ¬ λ²νΌμ μ°κ²°ν©λλ€. μλ₯Ό λ€μ΄, λ€μκ³Ό κ°μ΄ UnityEventλ₯Ό μ¬μ©νμ¬ μ°κ²°ν μ μμ΅λλ€.
using UnityEngine.Events;[System.Serializable]public class MyEvent : UnityEvent { }public MyEvent myEvent;private void OnEnable(){ if (myEvent == null) { myEvent = new MyEvent(); } myEvent.AddListener(ActualFunction);}private void OnDisable(){ myEvent.RemoveListener(ActualFunction);}
private void ActualFunction(int var1, float var2) { // var1κ³Ό var2λ₯Ό μ¬μ©νλ μ½λ } μ΄μ λ²νΌμ MyEventλ₯Ό μ°κ²°ν μ μμ΅λλ€. λ²νΌμ ν΄λ¦νλ©΄ ActualFunctionμ΄ νΈμΆλκ³ , μΈμλ‘λ λ²νΌκ³Ό μ°κ²°λ MyEventμ μ§μ λ κ°μ΄ μ λ¬λ©λλ€.
ν .. μ°Ύμ보λ, λ°λ‘λ μ°κ²° μλλꡬλ§, λ΅λ³ κ³ λ§μ‘!
μ λ리μ€λ
μΈμ€νν°μμμ μλκ³ μ½λμμμλ κ°λ₯ν¨. - dc App