직접 블루프린트 통신

한 블루프린트에서 다른 블루프린트로 직접 정보를 전달하는 법 데모입니다.

Windows
MacOS
Linux

여기서는 직접 블루프린트 통신 을 통해 두 블루프린트 사이에 직접 정보를 전달하는 법을 다루겠습니다.

이 예제에서는 플레이어가 박스를 통과하면서 통신하여 파티클 이펙트가 발동되도록 하겠습니다.

여기서는 블루프린트 삼인칭 템플릿에 시작용 콘텐츠 포함 시키고 있습니다.

  1. 콘텐츠 브라우저 에서 Content/StarterContent/Shapes 폴더를 엽니다.

  2. Shape_Cube우클릭 한 다음 애셋 액션 아래 다음을 사용하여 블루프린트 생성... 을 선택합니다.

    DirectCom1.png

    확인창이 뜨면 Ok 를 클릭하여 블루프린트를 생성합니다.

  3. Shape_Cube 블루프린트 안에서 좌상단 컴포넌트 창의 스태틱 메시 를 선택합니다.

  4. 디테일 패널에서 Collision Presets (콜리전 프리셋)을 OverlapOnlyPawn (폰만 겹침)으로 설정합니다.

    DirectCom2.png

    그러면 과 거기서 확장된 캐릭터 만 박스를 통과하게 됩니다.

  5. 내 블루프린트 창에서, 변수 추가 버튼을 클릭한 다음 이름을 TargetBlueprint 라 합니다.

    DirectCom3.png

    직접 통신 대상 블루프린트가 됩니다.

  6. 변수에 대한 디테일 패널에서, Variable Type (변수 유형)을 Blueprint_Effect_Fire 로 하고 Editable (편집가능) 설정합니다.

    DirectCom4.png

    통신하고자 하는 블루프린트를 구성하고 변수를 공개적으로 (이 블루프린트 밖에서도) 편집가능하도록 했습니다.

  7. 내 블루프린트 창에서 스태틱 메시 를 선택한 다음, 디테일 패널에서 On Component Begin Overlap (컴포넌트 겹침 시작시) 이벤트를 추가합니다.

    DirectCom8.png

    그러면 노드가 추가되고 이벤트 그래프 가 열려, 여기서 큐브에 들어설 때 벌어질 일에 대한 스크립트를 짜면 됩니다.

  8. 타깃 블루프린트Get P FireGet Fire Audio 를 끌어놓고, 다음과 같이 Activate 노드에 연결합니다.

    DirectCom10.png

    타깃 블루프린트 안의 파티클 이펙트와 오디오 컴포넌트에 접근하여 활성화시키고 있습니다.

  9. 콘텐츠 브라우저 에서 Blueprints 아래 Shape_Cube 블루프린트를 끌어 레벨에 놓습니다.

    DirectCom5.png

  10. 콘텐츠 브라우저 에서 Content/StarterContent/Blueprints 아래, Blueprint_Effect_Fire 블루프린트를 엽니다.

  11. 컴포넌트 창에서 P_Fire 를 선택한 다음 디테일 패널에서 Auto Activate (자동 활성화) 체크를 해제합니다.

    DirectCom6.png

    이 이펙트는 자동 활성화시키지 않습니다. 레벨에 있는 박스에 들어설 때 활성화시킬 것이기 때문입니다.

  12. Blueprint_Effect_Fire 블루프린트를 끌어 레벨에 놓습니다.

  13. 디테일 패널에서 Shape_Cube 블루프린트를 선택하고, 드롭다운을 사용하여 Blueprint_Effect_Fire 블루프린트를 선택합니다.

    DirectCom7.png

    레벨에 통신하고자 하는 Blueprint_Effect_Fire 블루프린트 인스턴스를 지정하고 있습니다. 레벨에 Blueprint_Effect_Fire 블루프린트 인스턴스를 여럿 배치한 경우, 그 인스턴스 각각이 드롭다운 메뉴에 표시되어 통신할 타깃 블루프린트 인스턴스를 선택할 수 있습니다.

    스포이드 아이콘을 클릭하면 드롭다운 메뉴가 아닌 레벨 안에서 직접 타깃 블루프린트 인스턴스를 선택할 수 있습니다. 지정한 변수 유형에 따라 블루프린트만 타깃으로 선택할 수 있다는 점 기억해 주세요.

  14. 플레이 버튼을 클릭하여 에디터에서 플레이, 캐릭터로 박스를 통과시켜 테스트합니다.

캐릭터가 박스에 들어서면 레벨에 화염 이펙트가 활성화되는 것이 보일 것입니다. 직접 블루프린트 통신 은 한 블루프린트에서 다른 블루프린트의 프로퍼티를 변경할 때만이 아닌, 변수 값 전달, 함수나 이벤트 호출, 기타 블루프린트에서 정상적으로는 불가능한 것들을 할 수 있습니다.

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