블루프린트 콘텐츠 예제

Blueprint 콘텐츠 예제에 제공된 샘플에 대한 개요입니다.

Windows
MacOS
Linux

콘텐츠 예제 프로젝트 안에는 블루프린트 시스템의 강력함과 유연성에 대한 데모가 되는 Blueprint 맵이 여러가지 있습니다. 플레이어 컨트롤을 정의하든, 헬쓰/픽업 시스템을 구현하든, 아니면 그냥 플레이어가 다가가면 열리는 문을 만들든, 이 맵에서 선보이고 있는 예제를 통해 추구하고자 하는 바를 어떻게 하면 이룰 수 있을지에 대한 개념을 잡을 수 있을 것입니다.

이 글에서는 각 맵에 어떠한 예제가 포함되어 있는지와 관심있는 부분으로 점프하여 스크립트 작업을 바로 시작할 수 있도록 어디서 찾을 수 있는지를 설명합니다. 하지만 블루프린트 에 익숙치 않으신 분들은 시스템의 핵심적인 면을 다루는 Blueprints_Overview 맵부터 시작해 보시는 것이, 사용법을 원활하게 익히는 데 도움이 될 것으로 생각합니다.

각 표의 예제 이름 부분을 클릭하면 (적용 가능한 경우) 예제가 어떻게 구성되었는지에 대한 추가 자료를 찾아볼 수 있습니다.

Blueprints_Overview 맵

blueprint_ce_header.png

Blueprints_Overview 맵에서 다루는 블루프린트 관련 필수 요소는: 컴포넌트, 컨스트럭션 스크립트이벤트 그래프 사용하기, 변수 와 그 값 편집/설정 방법, 단순한 수학식, 여러가지 유형의 플로우 컨트롤 노드를 사용한 블루프린트 흐름 제어 등입니다. 앞으로 블루프린트 작업을 하면서 엄청나게 자주 사용하게 될 것들이니, 천천히 섹션별로 살펴보시기 바랍니다.

예제

데모 내용

1.1 Hello World Example

Hello World 예제 - 기본적인 블루프린트 를 사용하여 레벨에 떠다니는 텍스트를 표시합니다 (예: 레벨 플레이시 "Hello World" 라는 텍스트가 떠다닙니다.

1.2 Components Example

컴포넌트 예제 - 하나의 블루프린트 에서 다수의 컴포넌트 를 사용하는 방법을 보여주는 예제입니다 (예: 하나의 블루프린트 에 스프라이트, 스태틱 메시, 라이트가 전부 사용되었습니다).

1.3 Variables Example

변수 예제 - 변수public 또는 private 설정하는 방법과 그 편집 방법을 보여줍니다 (예: 라이트 컬러가 디테일 패널을 통해서, 또는 블루프린트 에서만 변경 가능합니다).

1.4 Construction Script Example

컨스트럭션 스크립트 예제 - 컨스트럭션 스크립트블루프린트컴포넌트 를 켜고/끄는 방법을 보여줍니다 (예: 블루프린트 에서 체크박스를 사용하여 컴포넌트 를 켜고 끕니다).

1.5 Event Graph Example

이벤트 그래프 예제 - 컨스트럭션 스크립트이벤트 그래프 는 머티리얼 편집 없이 메시의 색을 맞추는 데 사용됩니다 (예: 사용자는 디테일 패널을 통해 로켓의 색을 정의합니다).

1.6 Simple Math Example

간단한 수학 예제 - 이 블루프린트 에서는 이벤트 틱 을 사용하여 시간에 따른 간단한 덧셈을 하고 있습니다 (예: 매 초마다 0 에서부터 세어 올라가는 타이머가 표시됩니다).

1.7 Flow Example

플로우 예제 - 오브젝트의 이동, 컬러, 이펙트를 변경하기 위해 여러가지 유형의 플로우 컨트롤 을 사용하는 블루프린트 입니다 (예: 동전의 이동 방향, 컬러, 이펙트가 디테일 패널을 통해 적용되고 있습니다).

Blueprints_Advanced 맵

BlueprintAdvanced_Header.png

Blueprints_Advanced 맵은 컨스트럭션 스크립트이벤트 그래프 를 사용해서 콘텐츠를 생성하는 방법에 대해 보다 깊이 들어갑니다.

컨스트럭션 스크립트 예제

Construction Script (컨스트럭션 스크립트) 섹션에서는: 지정된 반경에 메시를 임의로 스폰시키는 방법, 액터의 피벗에 따른 메시 자동 스폰 방법, 메시 대칭 스폰 방법, 커스터마이징 가능한 스포트라이트용 컴포넌트 전체 생성 방법을 알아봅니다.

예제

데모 내용

1.1 Randomly Scattered Meshes Example

임의로 메시 흩뿌리기 예제 - 지정된 반경 내 스태틱 메시를 임의로 스폰시키는 방법입니다 (예: 반경 내 바닥 잔해나 돌멩이를 임의로 스폰시킵니다).

1.2 Automatic Wall Example

자동 벽 예제 - 액터의 피벗 포인트에서 메시 행을 확장시키는 방법입니다 (예: 길이 스케일 조절이 가능한 담장입니다).

1.3 Automatic Ring Example

자동 고리 예제 - 지정된 수의 메시를 고리 형태로, 각 메시의 위치에 따라 회전시켜 배치시키는 방법입니다 (예: 메시가 고리 형태로 균일한 간격과 일정한 방향을 보도록 배치되어 있습니다).

1.4 Customizable Spotlight Example

커스터마이징 가능한 스포트라이트 예제 - 컨스트럭션 스크립트 를 사용하여 스포트라이트를 이루는 요소 전체를 하나의 액터로 합치는 법입니다 (예: 전원 상태, 라이트 색, 방향, 반경의 커스터마이징이 가능한 스포트라이트).

이벤트 그래프 예제

Event Graph (이벤트 그래프) 예제에서는: 타임라인을 통한 스태틱 메시 애니메이션, 플레이어 이동을 추적하도록 액터 자동 회전, 블루프린트 사이에 변수 전달, 트리거 발동시 자동으로 열리는 문 생성, 다양한 유형의 픽업 제작 방법을 알아봅니다.

예제

데모 내용

2.1 Timeline Animation Example

타임라인 애니메이션 예제 - 타임라인 을 사용하여 이벤트 트랙 을 가진 스태틱 메시 애니메이션을 통해 지정된 지점에서 이미터를 스폰시키는 방법입니다 (예: 튕기는 공 애니메이션을 만듭니다).

2.2 Actor Tracking Example

액터 추적 예제 - 액터가 일정 반경 안에 들어온 플레이어를 향해 회전하도록 만드는 법입니다 (예: 스포트라이트가 플레이어에 반응하여 따라다닙니다).

2.3 Button Trigger (Blueprint Interface) Example

버튼 트리거 - 블루프린트 인터페이스 를 사용하여 한 블루프린트 에서 다른 블루프린트로 변수를 전달하는 방법입니다 (예: 버튼으로부터 켜짐/꺼짐 변수가 애니메이션이 적용된 기어 세트에 전달됩니다).

2.4 Opening Door (Trigger) Example

문 열기 (트리거) 예제 - 트리거타임라인 으로 문을 자동으로 여닫는 방법입니다.

2.5 Child Blueprints Example

자손 블루프린트 예제 - 같은 부모 클래스 에서 파생된 여러가지 유형의 픽업을 구현하는 방법입니다 (예: 집어들면 각기 다른 기능을 하는 생명력, 동전, 컵케이크에 대한 픽업입니다).

Blueprint_Communication 맵

BlueprintCommunication_Header.png

블루프린트 작업을 할 때, 다른 블루프린트 에 있는 함수를 실행하거나 특정 변수를 접근해야 할 수도 있기에, 필요에 따라 각기 다른 통신 방식이 제공됩니다. Blueprint_Communication 맵에서는 직접 블루프린트 통신, 이벤트 디스패처, 블루프린트 인터페이스 등을 통해 하나의 블루프린트 에서 다른 블루프린트 로 정보를 전달하는 여러가지 방법을 보여줍니다.

블루프린트 통신 예제

직접 블루프린트 통신 또는 블루프린트 통신 섹션에서는 블루프린트 로의 형변환(cast) 또는 타게팅을 통해 블루프린트 사이에 정보를 주고 받는 기본적인 방법을 확인할 수 있습니다.

예제

데모 내용

1.1 Basic Communication (Target Blueprint)

기본적인 통신 (타겟 블루프린트) - Custom Event 를 통해 라이트 블루프린트 를 껐다 켰다 토글하는 버튼 블루프린트 예제입니다.

1.2 Basic Communication (Actor Casting)

기본적인 통신 (액터 형변환) - 오버랩 이벤트를 사용하여 특정 클래스의 블루프린트 를 감지하는 법입니다 (예: 배터리를 연결하여 켜지고 꺼지는 전구입니다).

1.3 Communication (Actor Casting To Child Blueprints)

통신 (자손 블루프린트로 형변환되는 액터) - 부모의 함수성은 공유하지만 독립적인 함수성을 갖기도 하는 자손 블루프린트 사용 방법입니다 (예: 에너지 값이 각기 다른 배터리를 연결하여 켜지고 꺼지는 전구입니다).

1.4 Communication with All Actors of a Specific Class

모두 특정 클래스의 액터인 경우의 통신 - 특정 클래스의 액터 다수를 가지고 통신하는 방법입니다 (예: 각기 다른 함수성을 지닌 전구 다수를 한꺼번에 켭니다).

이벤트 디스패처 예제

Event Dispatcher (이벤트 디스패처) 예제에서는 블루프린트레벨 블루프린트 사이의 통신을 위한 또다른 방법을 다룹니다. 추가적으로 하나 이상의 이벤트를 이벤트 디스패처바인딩 하는 것으로, 이벤트 디스패처 가 호출되면 해당 이벤트에 묶인 다수의 이벤트가 한꺼번에 발동되도록 할 수 있습니다.

예제

데모 내용

2.1 Using Event Dispatchers

이벤트 디스패처 사용하기 - 레벨 블루프린트 안에서 이벤트 디스패처 를 사용하여 이벤트를 호출하는 방법입니다 (예: 이벤트 디스패처 를 사용하여 라이트를 켜고 끕니다).

2.2 Binding Event Dispatchers to A Custom Event

커스텀 이벤트에 이벤트 디스패처 바인딩하기 - 레벨 블루프린트 안에서 커스텀 이벤트에 이벤트 디스패처 를 바인딩하는 방법을 보여줍니다 (예: 시간에 따라 오브젝트를 회전시키는 버튼 토글입니다).

2.3 Binding Event Dispatchers to A Custom Event on Spawn

스폰된 액터가 소멸되면 호출되는 이벤트 디스패처 로 트리거를 활성화/비활성화시키는 방법을 보여줍니다 (예: 버튼을 누르면 폭탄이 스폰되며, 스폰된 것이 터지기 전까지는 다른 폭탄이 스폰되지 않습니다).

블루프린트 인터페이스 예제

다수의 블루프린트 에 (차량과 나무처럼) 완벽히 별개의 개체지만 (발사체에 맞으면 일정한 형태의 대미지를 입는 등의) 기본적인 속성을 공유하는 경우가 있을 수 있습니다. 블루프린트 인터페이스 를 통해 차량과 나무 모두 대미지를 입었을 때에 대한 반응을 통신 및 공유하도록 할 수 있으면서도, 그 자체적으로 각기 다른 컴포넌트와 함수성을 가지도록 할 수 있습니다.

예제

데모 내용

3.1 Blueprint Interface (Array of Blueprints)

블루프린트 인터페이스 (블루프린트 배열) - 배열을 통해 각기 다른 클래스의 블루프린트 다수와 통신하는 방법을 보여줍니다 (예: 하나의 스위치로 다양한 라이트를 켜고/끄고 오브젝트를 회전시킵니다).

3.2 Blueprint Interface (Interactive Blueprints)

블루프린트 인터페이스 (상호작용형 블루프린트) - 입력에 따라 플레이어 블루프린트 에서 액터 블루프린트 로 통신하는 방법입니다 (예: 상호작용형 스위치, 크랭크, 체인 풀리가 달린 레버 등입니다).

3.3 Blueprint Interface (Projectile Collision)

블루프린트 인터페이스 (프로젝타일 콜리전) - 블루프린트 인터페이스 를 사용하여 특정 유형의 액터가 맞았는지를 검사하는 방법입니다 (예: 세 가지 오브젝트가 불 또는 물에 맞았을 때 각기 다르게 반응합니다).

Blueprint_Input_Examples 맵

BlueprintInput_Header.png

Blueprint_Input_Examples 맵에는 2D 횡 스크롤, 내려보기식 2D 스페이스 슈팅, 3D 비행 UFO 등 세 가지 스타일의 게임에서 블루프린트 를 통해 플레이어 입력을 만드는 법에 대한 예제가 제공됩니다.

예제

데모 내용

1.1 2D Input (Side Scrolling Character)

2D 입력 (횡스크롤 캐릭터) - 좌우 이동 및 점프가 가능한 2D 횡스크롤 게임 예제 쇼케이스입니다.

1.2 2D Input (Space Shooter)

2D 입력 (스페이스 슈팅) - 좌우 이동 및 프로젝타일 발사가 가능한 2D 스페이스 슈팅 게임 예제 쇼케이스입니다.

1.3 Physics Driven Input (UFO Example)

물리 구동형 입력 (UFO 예제) - WASD 이동, 이륙 및 착지, 스피드 부스터, 광선형 유괴장치 등의 기능을 탑재한 우주비행선 스타일 게임 예제 쇼케이스입니다.

Blueprint_Mouse_Interaction 맵

BlueprintMouse_Header.png

Blueprint_Mouse_Interaction 맵에서는 블루프린트 를 통한 마우스 입력 (또는 모바일 터치 입력) 처리법은 물론, 오브젝트가 마우스나 터치 입력에 반응하도록 만드는 방법을 보여줍니다. 여기 예제에서는 오브젝트를 클릭하여 화면 위로 끌고다니면 움직이는 컴포넌트와 상호 영향을 주고받을 수 있습니다.

이 맵에 대한 좀 더 자세한 정보:

예제

데모 내용

1.1 블루프린트 마우스 상호작용

게임에서의 마우스와 터치 입력 활용 방법에 대한 데모입니다.

Blueprint_HUD 맵

BlueprintHUD_Header.png

Blueprint_HUD 맵에는 HUD 블루프린트 로 HUD 요소는 물론 기본적인 일시정지 메뉴를 생성하는 방법에 대한 예제가 제공됩니다. 생명력/대미지 및 픽업 시스템, 웨이포인트 목표물 마킹 시스템을 만드는 방법도 보여줍니다.

이 맵에 대한 상세 정보는 여기서 찾을 수 있습니다:

예제

데모 내용

1.1 블루프린트 HUD 예제

기본 일시정지 메뉴 형태로 클릭가능 버튼이 포함된 간단한 게임내 HUD 데모입니다.

블루프린트 스플라인 맵

blueprintSplines_ce_header.png

콘텐츠 예제 중 블루프린트 스플라인 맵은 스플라인 컴포넌트블루프린트 를 사용해서 여러가지 다양한 방식으로 사용할 수 있는 경로를 만드는 법을 보여줍니다. 단순히 스플라인 컴포넌트를 블루프린트에 추가한 뒤 그 블루프린트 인스턴스를 선택하는 것으로, 레벨 내 스플라인 편집이 가능합니다. 그런 다음 뷰포트 안에서 스플라인 키를 선택한 다음 다른 액터처럼 이동, 회전, 스케일 위젯으로 조정할 수 있습니다.

제공된 콘텐츠 예제는 블루프린트 스플라인 을 컨스트럭션 스크립트에서 사용해서 스태틱 메시 오브젝터로 된 길을 만드는 법 또는 게임플레이 도중 스플라인 경로나 스플라인 메시를 동적으로 변경하여 콘텐츠나 애니메이션을 만드는 법을 보여드립니다.

컨스트럭션 스크립트 예제

아래 예제에서는 스플라인 컴포넌트를 블루프린트의 컨스트럭션 스크립트에서 사용하여 뷰포트에서 실시간으로 길이나 크기 조정이 가능한 스태틱 메시를 만드는 법을 보여드립니다.

예제

데모 내용

1.1 블루프린트 스플라인 컴포넌트

뷰포트에서 스플라인 컴포넌트를 쉽게 편집하는 법을 보여줍니다 (뷰포트 안에서 스플라인 컴포넌트의 네 스플라인 지점을 이동합니다).

1.2 스플라인을 따라 컴포넌트 배치

블루프린트가 스플라인 컴포넌트에서 다양한 정보를 획득하는 법을 보여드립니다 (스플라인 길이를 따라 스태틱 메시 컴포넌트를 배치하면서 그 방향은 배치한 방향을 보도록 합니다).

1.3 스플라인 메시 컴포넌트

또다른 유형의 스플라인 컴포넌트인 스플라인 메시는 스태틱 메시 애셋을 늘이고 구부리는 데 사용됩니다 (예로 뷰포트에서 위젯을 사용하여 늘이고 회전시킬 수 있는 파이프를 들 수 있습니다).

동적인 예제

Dynamic Examples (동적인 예제)에는 게임플레이 도중 스플라인 컴포넌트를 동적으로 업데이트하여 배경 오브젝트의 움직임이나 심지어 플레이 가능 캐릭터 애니메이션까지도 가능한 방법을 보여드립니다.

예제

데모 내용

2.1 스플라인을 경로로 사용

파티클 이펙트가 따라가는 데 사용할 수 있는 스플라인 컴포넌트 예제입니다.

2.2 시뮬레이션 도중 스플라인 변경

스플라인 컴포넌트를 게임플레이 도중 동적으로 생성하는 법을 보여줍니다 (플레이나 시뮬레이트시 줄에 걸린 랜턴들의 애니메이션).

2.3 스플라인 메시 애니메이션

스플라인 컴포넌트는 스플라인 메시가 따라가는 경로로 사용할 수도 있습니다 (땅에서 스플라인 경로를 따라 자라나는 덩굴).

2.4 폰 애니메이션용 스플라인 메시

스플라인 메시를 사용한 폰 애니메이션을 보여줍니다 (플레이 가능한 헤엄치는 물고기 애니메이션에 스플라인 메시가 사용).

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

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

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

네이버 카페
공식 포럼