이벤트 바인딩 및 언바인딩

이벤트 디스패처의 이벤트 목록에 이벤트를 추가하거나 제거하기 입니다.

Windows
MacOS
Linux

bind_node.png

Event Dispatcher (이벤트 디스패처)는 거기에 바인딩된 이벤트가 없는 경우 호출을 해도 아무런 효과가 없습니다. 이벤트 디스패처란 것은 일련의 이벤트 목록이 연결된 것으로 간주하면 됩니다. 이 목록에 이벤트를 추가하려면 Bind Event 노드를, 제거하려면 Unbind Event 노드를 사용하면 됩니다. Unbind All Events 노드로 현재 이벤트 디스패처에 바인딩된 모든 이벤트를 언바인딩 하는 것도 가능합니다.

각 이벤트는 Bind Event 노드를 여러 번 실행한대도 한 번만 바인딩됩니다. 또한 블루프린트 클래스레벨 블루프린트 양쪽에 있는 이벤트 모두 같은 이벤트 목록에 추가되므로, Unbind All Events 노드는 블루프린트 클래스레벨 블루프린트 양쪽의 이벤트 바인딩을 해제합니다.

  • 블루프린트 클래스 에서 Unbind All Events 노드가 실행되면, 해당 클래스의 모든 인스턴스에 대해 블루프린트 클래스레벨 블루프린트 에서 바인딩된 이벤트를 해제합니다.

  • 레벨 블루프린트 에서 Unbind All Events 노드가 실행되면, Target 에 제공된 것에 대해서만 블루프린트 클래스레벨 블루프린트 에서 바인딩된 이벤트를 해제합니다.

Bind, Unbind, Unbind All Nodes 생성하기

Bind Event, Unbind Event, Unbind All Events 노드의 생성 프로세스는 매우 유사합니다. 아래에서는 Bind Event 노드를 생성하는 법을 살펴보겠으나, Unbind EventUnbind All Events 노드는 적합한 단계에서 각자에 해당하는 메뉴 항목을 선택하는 것으로 생성 가능합니다.

블루프린트 클래스에서

  1. 내 블루프린트 탭에서 이벤트 디스패처의 이름을 끌어 작업중인 그래프에 놓습니다.

  2. 뜨는 메뉴에서 Bind 를 선택합니다.

    dispatcher_bind_menu.png

또는:

  1. 그래프에서 우클릭합니다.

  2. 뜨는 컨텍스트 메뉴에서 Event Dispatcher (이벤트 디스패처)를 펼칩니다.

    event_dispatcher_context.png

  3. Event Dispatcher 아래 Bind Event to [이벤트 디스패처 이름] 을 선택합니다.

    event_dispatcher_context_bind.png

레벨 블루프린트에서

  1. 이벤트 디스패처의 호출 대상이 되었으면 하는 레벨 내 액터에 대한 레퍼런스를 추가 합니다.

    target_step1.png

  2. 레퍼런스 노드의 출력 핀을 끌어 놓아 컨텍스트 메뉴를 표시합니다.

    empty_context_menu.png

  3. 컨텍스트 메뉴에서 Event Dispatcher > Bind Event to [이벤트 디스패처 이름] 을 선택합니다. "Bind [이벤트 이름]" 을 검색하면 빠르게 찾을 수 있습니다.

    bind_node_level.png

    Call 노드의 Target 핀에 이미 액터 레퍼런스가 연결된 채 나타납니다.

    bind_dispatcher_wired_level.png

태그

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼