첫 번째 블루프린트 생성 및 실행
액터 블루프린트를 만들고 BeginPlay와 Print String을 연결해 컴파일·배치·실행까지 직접 확인합니다.
이제 블루프린트 에디터의 주요 인터페이스를 살펴보았으므로 첫 블루프린트를 만들고 실행합니다.
기본 블루프린트를 생성하고 간단한 메시지를 출력해 이벤트 그래프의 실행 흐름을 확인합니다.
우리가 만들 첫 번째 블루프린트는 게임이 시작될 때 화면에 간단한 환영 메시지를 띄우는 액터 블루프린트가 될 것입니다.
처음에는 복잡한 게임 로직보다 생성, 저장, 배치, 실행의 전체 루프를 확인하는 것이 중요하다.
- Parent
Actor처럼 배치 가능한 부모 클래스를 고른다.
- Component
Mesh나 Light 등 필요한 요소를 붙인다.
- Graph
BeginPlay 같은 이벤트에 테스트 동작을 연결한다.
- Level
월드에 배치하고 플레이로 결과를 확인한다.
새로운 액터 블루프린트 생성하기
언리얼 엔진에서 블루프린트를 만드는 방법은 매우 간단합니다.
콘텐츠 브라우저(Content Browser)를 엽니다.
이 패널은 언리얼 엔진 프로젝트의 모든 에셋(Asset)을 관리하는 곳입니다.
콘텐츠 브라우저의 빈 공간에서 마우스 오른쪽 버튼을 클릭합니다.
컨텍스트 메뉴에서 블루프린트 클래스(Blueprint Class)를 선택합니다.
부모 클래스 선택(Pick Parent Class) 창이 나타나면, 다양한 블루프린트의 종류 중 Actor를 선택합니다.
Actor는 게임 월드에 배치될 수 있는 모든 오브젝트의 기본 클래스입니다.
새로 생성된 블루프린트 파일의 이름을 BP_WelcomeMessage라고 입력한 후 엔터를 누릅니다.
이제 콘텐츠 브라우저에 BP_WelcomeMessage라는 이름의 새로운 블루프린트 에셋이 생성된 것을 확인할 수 있습니다.
블루프린트 에디터 열기 및 이벤트 노드 추가
생성된 BP_WelcomeMessage 블루프린트 에셋을 더블클릭하여 블루프린트 에디터를 엽니다.
앞서 본 패널 구성이 표시됩니다.
우리는 게임이 시작될 때 메시지를 출력하고 싶으므로, 게임 시작 이벤트를 담당하는 노드를 추가해야 합니다.
이벤트 그래프(Event Graph) 패널로 이동합니다.
이벤트 그래프의 빈 공간에서 마우스 오른쪽 버튼을 클릭하여 컨텍스트 메뉴를 엽니다.
검색창에 BeginPlay를 입력합니다.
Event BeginPlay 노드를 선택하여 그래프에 추가합니다.
Event BeginPlay노드는 이 블루프린트가 게임 월드에 배치되고 게임이 시작될 때(또는 시뮬레이션이 시작될 때) 딱 한 번 실행되는 특수한 이벤트 노드입니다.
메시지 출력 노드 연결하기
첫 블루프린트는 생성, 이벤트 연결, 메시지 출력, 컴파일, 레벨 배치까지 이어져야 실제 실행 결과를 확인할 수 있습니다.
- 1액터 생성
Actor 기반 블루프린트를 만들고 이름을 역할 중심으로 정합니다.
- 2이벤트 연결
Event BeginPlay에서 실행선이 시작되도록 노드를 배치합니다.
- 3출력 확인
Print String으로 실행 여부와 메시지 내용을 화면에서 확인합니다.
- 4레벨 배치
컴파일과 저장 후 레벨에 액터를 배치해야 BeginPlay가 실행됩니다.
이제 Event BeginPlay 노드가 실행될 때 화면에 메시지를 출력하도록 만들어봅시다.
메시지 출력은 Print String 노드를 사용합니다.
Event BeginPlay 노드의 오른쪽에 있는 실행 핀(Execution Pin)을 마우스로 클릭한 채 드래그합니다.
마우스를 떼면 검색창이 나타나는데, 여기에 Print String을 입력하고 해당 노드를 선택합니다.
Print String노드는 개발자가 디버깅 목적으로 화면에 문자열 메시지를 쉽게 출력할 수 있도록 도와주는 매우 유용한 노드입니다.
Print String 노드의 In String입력 핀에 주목해주세요.
이곳에 출력하고 싶은 메시지를 입력할 수 있습니다.
기본적으로 Hello라고 적혀 있을 텐데, 클릭하여 내용을 나 혼자 언리얼 블루프린트 시작!으로 변경합니다.
이제 Event BeginPlay 노드의 실행 핀과 Print String 노드의 실행 핀이 흰색 선으로 연결되어, 게임 시작 시 Print String 노드가 실행되도록 설정되었습니다.
블루프린트 컴파일 및 저장
블루프린트 변경 사항을 적용하려면 컴파일(Compile) 과정이 필요합니다.
컴파일은 여러분이 만든 비주얼 스크립팅 로직을 언리얼 엔진이 이해할 수 있는 형태로 변환하는 과정입니다.
BeginPlay와 Print String을 연결한 것만으로는 끝이 아닙니다. 컴파일, 저장, 레벨 배치, 플레이 확인까지 지나야 블루프린트가 실제 월드에서 동작합니다.
- Compile
그래프 변경을 엔진이 실행할 수 있는 상태로 반영합니다.
- Save
완성한 블루프린트 에셋을 프로젝트에 저장합니다.
- Place Actor
레벨에 액터를 배치해 BeginPlay가 호출될 대상을 만듭니다.
- Play
플레이 모드에서 화면 메시지가 보이는지 확인합니다.
- EventBeginPlay
Event exec out 게임 시작 시 1회 실행
- FunctionPrint String
Function In String 언리얼 블루프린트 시작! screen 좌측 상단 출력
- 점검안 보일 때 초기 확인 기준
점검 1 컴파일 버튼 옆에 성공 표시가 있는지 확인합니다. 2 BP_WelcomeMessage가 현재 레벨에 배치되어 있어야 합니다. 3 Print String의 In String 값이 비어 있지 않아야 합니다.
블루프린트 에디터의 좌측 상단에 있는 컴파일(Compile) 버튼을 클릭합니다.
컴파일이 성공하면 버튼 옆에 초록색 체크 표시가 나타납니다.
그 옆에 있는 저장(Save) 버튼을 클릭하여 작업 내용을 저장합니다.
블루프린트를 레벨에 배치하고 실행하기
마지막으로, 우리가 만든 블루프린트가 게임 내에서 작동하도록 레벨에 배치해야 합니다.
블루프린트 에디터를 닫고 언리얼 엔진 메인 에디터로 돌아옵니다.
콘텐츠 브라우저에서 BP_WelcomeMessage 에셋을 찾아 마우스로 드래그하여 뷰포트(Viewport)로 끌어다 놓습니다.
이제 메인 에디터 상단의 플레이(Play) 버튼을 클릭하여 게임을 시작합니다.
게임을 실행하면, 화면 좌측 상단에 우리가 입력했던 나 혼자 언리얼 블루프린트 시작!이라는 메시지가 잠시 나타났다가 사라지는 것을 확인합니다.
이벤트 그래프와 출력 문자열이 정상적으로 연결된 상태입니다.
BeginPlay와 Print String을 제대로 연결해도 에셋 저장, 레벨 배치, 플레이 대상이 빠지면 화면 출력은 나타나지 않습니다.
- 그래프 연결
BeginPlay의 흰 실행 핀이 Print String의 실행 입력으로 이어져 있는지 확인합니다. exec wire
- 컴파일과 저장
컴파일 성공 표시를 본 뒤 저장해야 레벨에서 최신 그래프가 실행됩니다. 초록 체크 표시
- 레벨 배치
콘텐츠 브라우저의 에셋만으로는 BeginPlay가 호출되지 않으므로 뷰포트에 배치합니다. placed actor
- 플레이 확인
현재 레벨을 플레이하고 메시지 지속 시간이 너무 짧지 않은지 Print String 값을 봅니다. viewport
이번 절에서는 블루프린트를 생성하고 간단한 로직을 구현해 실행하는 과정을 실습했습니다.
컴파일, 배치, 실행 결과 확인이 기본 작업 흐름입니다.
마무리 점검 다이어그램
처음 만드는 액터 블루프린트는 생성, 노드 연결, 컴파일, 배치, 실행 확인을 작은 단위로 끊어 검증합니다.
- 1Create
Actor 기반 블루프린트를 만들고 이름을 정한다.
- 2Connect
BeginPlay 뒤에 최소 출력 노드를 연결한다.
- 3Compile
오류 없이 컴파일하고 저장 상태를 확인한다.
- 4Play
레벨에 배치한 인스턴스가 실행되는지 본다.
- 5생성 실패 신호
Parent Actor가 아닌 부모를 고르면 레벨 배치와 컴포넌트 구성이 의도와 달라집니다.
- 6연결 실패 신호
Exec wire BeginPlay 실행선이 끊기거나 출력 노드가 두 번 호출되면 결과가 없거나 중복됩니다.
- 7실행 실패 신호
Level instance 컴파일이 성공해도 레벨에 인스턴스가 없으면 BeginPlay는 실행되지 않습니다.
첫 번째 블루프린트가 실제로 실행되는지 확인하는 검수표를 추가합니다.
블루프린트가 실행되지 않는다면 노드보다 먼저 레벨 배치와 컴파일 상태를 확인한다.
- Place actor 레벨에 BP 액터
배치
- Compile Blueprint 오류 없
컴파일
- Play PIE 실행
- Print/String BeginPlay 도달 여부
확인
| 점검 | 기준 |
|---|---|
| 실행 안 됨 | 레벨에 인스턴스가 없는지 확인 |
| 값 안 바뀜 | Set 노드 실행과 target 확인 |
| 핵심 | 처음 실행 검수는 배치 여부부터 시작한다 |
첫 블루프린트 실습은 에셋 생성, 이벤트 연결, 컴파일, 레벨 배치, 플레이 확인이 하나의 루프로 이어져야 합니다.
에셋을 만들었다고 실행되는 것이 아니라, 레벨에 놓인 인스턴스가 이벤트를 받아야 한다.
- Blueprint asset 클래스 설계도 작성
- Instance 레벨에 배치된 실제 액터
- BeginPlay 플레
시작 시 인스턴스에서 호출
- Visible result 이동, 출력, 색 변경
확인
| 점검 | 기준 |
|---|---|
| 혼동 | asset 편집과 level instance 실행은 다름 |
| 검수 | Viewport에 배치된 인스턴스 선택 |
| 판단 | 실행 결과가 화면이나 로그에 드러나야 한다 |