BluePrint(블루프린트)
블루프린트 개념
블루프린트는 언리얼 에디터 안에서 노드 기반 인터페이스를 사용하여 게임 플레이 요소를 만드는 개념을 토대로 한 비주얼 스크립팅 시스템이다. 순서도와 같이 노드와 노드를 연결하여 프로그램의 논리표현을 한다.
블루프린트 작동방식
- 블루프린트엔 노드란 개념이 존재한다(노드란 블루프린트의 기본 단위이다).
- 노드와 노드사이에는 제어(명령)와 데이터가 전송된다.
- 제어(명령)와 데이터는 왼쪽에서 오른쪽으로 진행한다.
- input 및 output이 존재하는 노드는 왼쪽에 입력핀 오른쪽엔 출력핀이 있다.
데이터(메모리와 변수)
- 메모리 : 데이터를 저장하기 위한 공간
- 변수 : 데이터를 저장하기 위해 프로그램에 의해 이름을 할당 받는 값이 바뀌는 데이터
변수
변수 노드(get, set)
- get : 데이터를 가져와 읽는다(저장한다).
- set : 데이터를 쓰거나 가져온다.
사칙연산, 비교연산
블루프린트 종류
-
레벨 블루프린트 : 레벨 단위 글러벌 이벤트 그래프 역할을 하는 특수한 형태의 블루프린트이다. 레벨 전체적으로 관련된 이벤트 또는 레벨 내 특정 액터 인스턴스가 함수 호출이나 흐름 제어 연산 형태로 일련의 동작을 발동시키는 데 사용된다.
-
게임 모드 블루프린트 : 게임의 모드와 설정 등을 위해 사용된다.
-
클래스 블루프린트 : 콘텐츠 제작자가 기존의 클래스 위에 다른 함수성을 쉽게 추가할 수 있도록 해주는 애셋이다.
-
블루프린트 인터페이스 : 이름만 있고 구현은 없는 함수 하나 이상으로 된 집합으로, 이를 다른 블루프린트에 추가할 수 있다. 블루프린트에 인터페이스를 추가하면 그 블루프린트는 그 안에 들어있는 함수를 갖게 된다. 쉽게 말해, 블루 프린트 인터페이스를 통해 다양한 블루프린트는 서로간에 데이터를 공유하고 전송할 수 있다.
-
블루프린트 매크로 라이브러리 : 다른 블루프린트에 넣어 사용할 수 있는 매크로 또는 독립된 그래프 모음을 담는 그릇이다.
-
위젯 블루프린트 : 게임의 UI를 만들때 사용된다.
예제 문제
- 마우스 왼쪽 클릭 시 총알이 소모되고, 남은 총알의 수를 출력하시오.
- Max ammo = 10
- Fire! Ammo : 9/10
(Hint : mouse event, 사칙연산, 비교연산, format text를 이용해 풀기!)
- 마우스 왼쪽 클릭 시 총알이 소모되고, 남은 총알의 수를 출력하시오.
- Max ammo = 10
- Fire! Ammo : 9/10
- 남은 총알이 0일때 No! ammo : 0/10출력
(Hint : branch(b누르고 좌클릭) 이용해서 풀기!)
- 마우스 왼쪽 클릭 시 총알이 소모되고, 남은 총알의 수를 출력하시오.
- Max ammo = 10
- Fire! Ammo : 9/10
- 남은 총알이 0일때 No! ammo : 0/10출력
- R키를 누를시 총알이 재장전 되게해야함.
(Hint : key board event 를 이용해서 풀기!)