커스텀 이벤트

그래프 안에서 발동시킬 수 있는 사용자 제작 커스텀 이벤트입니다.

Windows
MacOS
Linux

Custom Event 는 표준 Event 와 비슷하나, 사용자가 생성하고 EventGraph 안에서 발동시킬 수 있다는 점이 다릅니다. 개별 네트워크의 실행 도입점을 정의할 뿐, 코드에서의 호출에 따라 실행되지는 않습니다. 그 대신, 콘솔 명령 CEKE, 또는 Remote Event 호출 등 EventGraph 다른 부분에 의존하여 명시적으로 실행됩니다.

커스텀 이벤트

Custom Event (커스텀 이벤트)를 통해 블루프린트 시퀀스 내 어디서나 호출할 수 있는 자신만의 이벤트를 만들 수 있습니다. 한 특정 노드의 입력 실행핀에 다수의 출력 실행 선을 연결하고자 하는 경우, 커스텀 이벤트 가 그래프의 망을 단순화시켜 줍니다. 심지어 블루프린트 그래프 중 하나에 커스텀 이벤트 를 구성한 다음 다른 그래프에서 호출하는 것도 가능합니다.

그 작업방식은 꽤나 간단합니다:

  • Custom Event 를 만들어 이름을 짓습니다.

  • 이벤트에 있어야 할 입력 파라미터를, 기본값과 함께 구성합니다.

  • 커스텀 이벤트를 호출하는 특수 함수 노드를 만듭니다.

  • 필요한 입력 파라미터가 있으면 물려줍니다.

커스텀 이벤트 생성하기

  1. 컨텍스트 메뉴에서 우클릭한 후 커스텀 이벤트 추가... 를 선택하여 Custom Event 노드를 만듭니다.

    add_custom_event.png

  2. 이벤트에 새 이름을 지어주구요.

    name_custom_event.png

  3. 새 이벤트에 대한 디테일 패널에서는, 이벤트가 서버상에서 호출되었을 때 모든 클라이언트에 리플리케이트 시킬지를 설정하거나 입력 파라미터를 추가할 수 있습니다.

    new_details_custom_event.png

입력 파라미터를 추가하려면:

  1. 디테일 패널의 Inputs (입력) 섹션에서 버튼을 클릭합니다.

    new_input_custom_event.png

  2. 새 입력에 이름을 짓고 드롭다운 메뉴를 사용해서 유형을 설정합니다. 이 예제에서는 MyStringParam 라는 이름의 String 입력 파라미터가 있습니다.

    named_new_variable.png

  3. 파라미터 항목을 펼쳐 기본값을 설정할 수도 있습니다.

    set_default_parameter.png

노드 끝에서의 이 파라미터에 대한 핀 위치를 변경하려면, 펼쳐진 디테일 패널 항목에 있는 위아래 화살표를 사용해 주시기 바랍니다.

이제 다른 이벤트 또는 실행 노드와 마찬가지로, 다른 노드를 커스텀 이벤트 의 출력 실행 핀에 붙일 수 있고, 그 커스텀 이벤트 가 트리거되면 그 망의 실행이 시작됩니다. 이 커스텀 이벤트 예제는 화면에 String 을 출력합니다.

small_custom_event.png

커스텀 이벤트 호출하기

커스텀 이벤트 와 거기에 연결된 망이 생성되었으나, 보통의 이벤트 와는 달리 커스텀 이벤트 발동을 위해 미리 설정된 조건은 없습니다. 커스텀 이벤트 호출을 위해서는, 우클릭 컨텍스트 메뉴에서 Call Function > [Custom Event Name] (함수 호출 > [커스텀 이벤트 이름]) 을 선택하면 됩니다.

call_ce_context_menu.png

call_custom_event_node.png

커스텀 이벤트 에 설정된 입력 파라미터는 커스텀 이벤트 에 전해줄 수 있도록 새 노드의 입력 데이터 핀으로 나타납니다. 필요한 대로 입력 데이터 핀을 다른 데이터 핀이나 변수에 데이터 선으로 연결해 줍니다.

이벤트 유형별로 그래프마다 한 번씩만 호출 가능한 보통의 이벤트 와는 달리, 커스텀 이벤트 는 그래프 전반에 걸쳐 몇 번이든 호출 가능합니다. 이런 식으로 커스텀 이벤트 는 선을 직접 연결해 줄 필요 없이 다수의 실행 출력을 하나의 실행 입력으로 분기시키는 것이 가능합니다.

connected_custom_event.png

이 예제에서 IsSuccess 부울 변수가 False 이면 에러 메시지가 출력됩니다. 이 그래프에는 Branch 노드 뒤 시퀀스에 Print String 노드를 연결한 것과 같은 함수가 들어 있습니다만, 그래프의 다른 섹션도 Print String 노드를 활용할 수 있는 함수성이 추가되었고, 두 망 섹션이 그래프 안에 서로 붙어있을 필요도 없습니다.

커스텀 이벤트 문제해결

커스텀 이벤트 노드 위에 [커스텀이벤트] 이름으로 된 함수를 찾을 수 없습니다." 라는 경고! 창이 뜨는 경우, 블루프린트컴파일 하면 됩니다.

custom_event_warning.png

커스텀 이벤트 의 입력 파라미터 갯수를 변경하면, 블루프린트 를 컴파일할 때 그 커스텀 이벤트 를 호출하는 모든 노드에 에러가 뜹니다.

parameter_change_error.png

커스텀 이벤트 를 호출하는 모든 노드를 새로고쳐 줘야 합니다. 개별 노드나 선택된 노드 그룹을 새로고치려면, 그 위에 우클릭한 다음 Refresh Nodes (노드 새로고침)을 선택하면 됩니다.

refresh_nodes.png

그래프에 있는 모든 노드를 새로고치려면, 파일 메뉴에서 Refresh All Nodes (모든 노드 새로고침) 하면 됩니다.

refresh_all_nodes.png

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