이벤트 디스패처

한 블루프린트에서 호출된 이벤트가 다른 블루프린트의 이벤트를 실행시키는 법에 대한 예제입니다.

Windows
MacOS
Linux

Event Dispatcher (이벤트 디스패처)가 호출되면, 그 이벤트 디스패처를 구현한 블루프린트 내 바인딩된 이벤트 역시도 같이 실행됩니다. 다른 말로 이벤트 디스패처가 호출될 때마다, 거기에 바인딩된 이벤트 역시 호출되어 하나의 소스로 다수의 이벤트를 한꺼번에 실행시킬 수 있다는 뜻입니다.

여기서는 이벤트 디스패처 구성 및 이벤트 디스패처에 이벤트를 바인딩하는 법을 보여드리겠습니다.

이 예제에서는 플레이어가 키를 누르면 덤불 안에 화염 파티클 이펙트가 스폰되도록 하겠습니다.

이 가이드에서는 시작용 콘텐츠 포함블루프린트 삼인칭 템플릿을 사용하겠습니다.

  1. 콘텐츠 브라우저 에서 Content/ThirdPersonBP/Blueprints 폴더 아래 ThirdPersonCharacter 블루프린트를 엽니다.

    EventD_1.png

  2. 내 블루프린트 창 아래 Add Event Dispatcher (이벤트 디스패처 추가) 버튼을 클릭한 다음 이름을 StartFire 라 합니다.

    EventD_2.png

  3. 그래프 창에 우클릭 하고 F Key Event 를 추가합니다.

  4. StartFire 이벤트 디스패처를 끌어 그래프에 놓고 Call (호출)을 선택합니다.

    EventD_3.png

  5. F Key Event 를 Call StartFire 이벤트 디스패처에 연결합니다.

    EventD_4.png

    F 키가 눌릴 때마다, 이 이벤트 디스패처에 바인딩된 이벤트를 가진 블루프린트 역시 실행될 것입니다.

  6. 컴파일, 저장 후 블루프린트를 닫습니다.

  7. 콘텐츠 브라우저 에서 Content/StarterContent/Props 아래 SM_Bush 를 끌어 레벨에 놓습니다.

    EventD_5.png

  8. 메인 툴바에서 블루프린트 버튼을 클릭한 뒤 레벨 블루프린트 열기 를 선택합니다.

    EventD_6.png

  9. 그래프 안에 우클릭 한 뒤 SM_Bush 에 대한 레퍼런스 생성 노드를 선택합니다.

    EventD_7.png

    레벨 안의 SM_Bush 에 대한 레퍼런스를 구하는 것입니다.

    위에 나열된 노드가 안보이나요? 레벨 안의 SM_Bush 를 선택한 다음 다시 해 보세요.

  10. 그래프에 우클릭 한 다음 Event Begin PlayGet Player Character 노드를 추가합니다.

  11. Get Player Character 노드를 끌어놓고 Cast To ThirdPersonCharacter (ThirdPersonCharacter 에 형변환) 노드를 검색 추가합니다.

    EventD_8.png

    그러면 ThirdPersonCharacter 블루프린트 안의 이벤트, 함수, 변수, 프로퍼티에 접근할 수 있게 됩니다.

    블루프린트 형변환 노드 관련 상세 정보는 블루프린트의 형변환 문서를 참고하세요.

  12. As Third Person Character 핀을 끌어놓고, Assign Start Fire 노드를 검색 추가합니다.

    EventD_9.png

    노드가 두 개 생기는데, Bind EventCustom Event 입니다. 캐릭터 블루프린트에서 이벤트 디스패처가 호출될 때마다, 이벤트를 바인딩해 뒀기 때문에, Custom Event 와 거기에 연결된 것이 실행됩니다. 이벤트 디스패처에 바인딩된 이벤트가 있는 블루프린트 역시도 실행됩니다.

  13. Custom Event 에서 Spawn Actor from Class 노드를 추가합니다 (ClassBlueprint_Effect_Fire 로 설정).

  14. SM_Bush 에서 Get Actor Transform 을 놓고, 액터 스폰 노드에 대한 Spawn Transform 으로 사용합니다.

    EventD_10.png

    노드를 전부 연결한 그래프 모습은 위와 같을 것입니다.

  15. 컴파일 후 레벨 블루프린트를 닫고, 플레이 를 클릭하여 에디터에서 플레이합니다.

    EventD_11.png

    F 키를 누르면, 화염 이펙트가 덤불 안에 스폰됩니다.

이벤트 디스패처 및 사용 예제 관련 상세 정보는, 아래 관련 토픽 부분을 참고하시기 바랍니다.

Tags
Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback