---
title: Unity EventTrigger 정보
slug: world-sdk-guide-kr/unity-eventtrigger
docTags: 
createdAt: 2024-09-02T08:34:13.135Z
---

이벤트 트리거는 Unity 이벤트 시스템으로부터 이벤트를 수신하고 등록된 함수를 호출합니다.

ZEPETOScript에서 Unity 이벤트 트리거를 사용하려면 아래에 주어진 형식을 따라야 합니다.

먼저, 테스트 목적으로 UI > 패널을 씬에 추가합니다.

::Image[]{src="https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-TWCfIp1gFAkNXaqWNG7ta-20240904-102419.png" size="54" width="634" height="1100" position="center" showCaption="false"}



추가된 패널의 검사기에서 \[구성 요소 추가]를 클릭하고 이벤트 트리거 구성 요소를 추가합니다.

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-kowTbqgz-BU4oqeKjk0pu-20240904-102419.png)



## 예제 스크립트

먼저, 이벤트 트리거와 관련된 클래스를 가져옵니다.

:::CodeblockTabs
TypeScript

```typescript
import { EventTrigger, EventTriggerType } from 'UnityEngine.EventSystems';
import { Entry } from 'UnityEngine.EventSystems.EventTrigger';
```
:::

이벤트 트리거를 위임하기 위한 코드를 작성합니다. 위임을 통해 콜백 메서드를 정의하고 다른 메서드를 대신 호출할 수 있습니다.

:::hint{type="success"}
**👍 위임의 개념**

- 위임자는 함수 포인터의 일종으로 볼 수 있으며, 이는 함수를 참조하고 호출할 수 있는 객체입니다.
- 변수처럼 함수를 전달하거나 반환할 수 있으며, 다른 함수의 매개변수로도 전달될 수 있습니다.
- Unity에서는 이벤트 처리를 위해 위임자가 널리 사용됩니다. 예를 들어, 특정 이벤트가 발생할 때마다 자동으로 호출되도록 메서드를 위임자에 연결할 수 있습니다.
:::



:::CodeblockTabs
TypeScript

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { EventTrigger, EventTriggerType } from 'UnityEngine.EventSystems';
import { Entry } from 'UnityEngine.EventSystems.EventTrigger';
  
export default class EventTriggerSample extends ZepetoScriptBehaviour {
 
    Start() {
        const trigger = this.gameObject.GetComponent<EventTrigger>();
 
        // Create eventsystem entry
        const entry = new Entry();
 
        // Specify event type & delegation
        entry.eventID = EventTriggerType.PointerClick;
        entry.callback.AddListener(() => {
            console.log("click")
        });
 
        // Register event entry
        trigger.triggers.Add(entry);
 
    }
}
```
:::



아래에 표시된 화면을 참조하십시오.

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-O0O3hwH_bVE4NRbl2UvZC-20240904-102419.png)



이벤트 트리거에 대한 전체 코드 예제를 확인하십시오.

:::CodeblockTabs
EventTriggerSample

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { EventTrigger, EventTriggerType } from 'UnityEngine.EventSystems';
import { Entry } from 'UnityEngine.EventSystems.EventTrigger';
 
export default class EventTriggerSample extends ZepetoScriptBehaviour {

    Start() {
        const trigger = this.gameObject.GetComponent<EventTrigger>();

        // Create eventsystem entry
        const entry = new Entry();

        // Specify event type & delegation
        entry.eventID = EventTriggerType.PointerClick;
        entry.callback.AddListener(() => {
            console.log("클릭")
        });

        // Register event entry
        trigger.triggers.Add(entry);

    }
}
```
:::



Unity에서 지원하는 이벤트 유형과 EventTrigger에 대해 더 알아보려면 아래 링크를 클릭하세요.

:::hint{type="info"}
**📘 지원되는 이벤트**
[https://docs.unity3d.com/kr/current/Manual/SupportedEvents.html](https://docs.unity3d.com/kr/current/Manual/SupportedEvents.html)
:::

:::hint{type="info"}
**📘 EventTrigger**
[https://docs.unity3d.com/kr/530/ScriptReference/EventSystems.EventTrigger.html](https://docs.unity3d.com/kr/530/ScriptReference/EventSystems.EventTrigger.html)
:::

