[언리얼 엔진 4.8] 블루프린트 입문 - 01. 라이트 점등/소등 본문
언리얼 엔진 공식 유튜브 튜토리얼 시리즈 [ https://youtu.be/gHdwOiR0D0A ] 학습 후 필기 복습
직전까지 진행한 [ 레벨 제작 소개 ] 의 내용과 겹치는 부분이 많아, 클래스 블루프린트 내용으로 빠르게 넘어갈 수 있도록 정리하였다.
언리얼엔진4 에서 블루프린트는 비주얼 스크립팅 도구로, 프로그래밍 언어를 통한 코드 없이 시각적 편의를 위해 개발되었다.
C++과 매우 친화적이기 때문에 프로그래머가 C++로 클래스를 만들어 블루프린트에 불러오거나, 백엔드나 네트워크 구축은 C++로 작업하고 디자이너나 아티스트는 시스템 정리와 플레이 관련 기능을 작업하는 등의 분업 또한 가능하다.
블루프린트에서 파란색 연결선은 오브젝트들의 레퍼런스들을 연결한 선이고, 하얀색 연결선은 실행을 나타내는 선이다.
한개의 이벤트에 여러개의 액션이 발동될때, 순서가 뒤엉키는 문제를 방지하기 위해 언리얼엔진4 블루프린트는 순차적 발동 방식을 채택하였다고 한다. 추후 다른 강좌에서 시퀀스 노드를 통해 노드의 발동 순서도 직접 정의해줄 수도 있다고 한다.
구조물 안에 들어가면 라이트가 켜지고 나오면 라이트가 꺼지는 블루프린트를 만들어보기 위해 이미지와 같은 구조물을 만든다.
PointLight 를 끄거나 켜기는 디테일 패널 Rendering 항목의 Visible 체크박스를 통해 설정할 수 있으며, 이를 통해 Visible 이 라이트의 점등/소등을 조작하는 기능의 키워드라는 것을 알 수 있다.
레벨 블루프린트를 열어 Pointlight 를 선택한 상태에서 포인트라이트 레퍼런스를 생성해 준다.
핀을 드래그해 ( 특정 레퍼런스를 드래그해서 생성하는 노드는 모두 레퍼런스와 관련된 액션이다. ) visab ( 여기까지만 ) 을 검색하면 Toggle Visibility 2가지 종류가 보이며, 같은 ( Toggle 기능 ) 역할을 할 수 있지만 Toggle Visibility (LightComponent) 를 선택한다.
is Visibility 는 현재 라이트가 보이는지 여부를 판단하는 함수이고, Set Visibility 는 게임 내 액터가 라이트의 가시성을 조정하게 만든다.
Toggle Visibility 와 Event BeginPlay 의 하얀색 연결선을 연결해주면, 게임을 시작하자마자 등이 켜지게 된다. (블루프린트를 통해)
언리얼 엔진 공식 유튜브 튜토리얼 시리즈 [ https://youtu.be/gHdwOiR0D0A ] 학습 후 필기 복습
방에 들어갔을때 등이 켜지려면, 레벨 상에서 ' 방에 들어간다 '는 시점을 정해 행동 기준을 명확히 정의하는 것이 필요하며 이런 행동을 볼륨 이라고 한다. 볼륨은 기본적으로 3차원 공간을 일걷으며, 언리얼엔진4 에서는 뭔가 진입하거나 나가는 판정을 할 수 있는 레이어가 존재한다. ( Trigger )
구조물의 입구를 월드 아웃라이너에서 눈 아이콘을 끈 상태에서 Box Trigger 을 적절히 배치해준다.
TriggerBox 를 선택한 상태에서 레벨 블루프린트에 들어가 좌클릭 - Add Event for Trigger Box ( Trigger Box 에 이벤트 추가 ) - Collision - Add On Actor Begin Overlap 과 Add On Actor End Overlap 두개를 추가한다.
Collision 은 월드 내 오브젝트와의 충돌 시점을 정할 때 사용한다. ( 볼륨과의 충돌을 정의할 때도 사용한다. )
이미지의 OnActorBeginOverlap 노드의 Other Actor 핀은 트리거를 오버랩할 수 있는 액터를 지정할 수 있으며, 이 블루프린트 스크립트보다 심화된 버전으로 만든다면 특정 유형의 액터만이 연결된 Toggle Visibility 를 발동할수 있게도 지정할 수 있다. ( 총 게임 등에서 사용 가능 )
두 노드의 오버랩 시점이 절대 겹치지 않기 때문에 이미지와 같이 한개의 핀에 두개의 노드를 연결시킬 수 있다.
Delay 옆에 붙어있는 F는 Delay 가 함수라는 사실을 보여주고 있으며, 함수는 이미지처럼 기존 선을 끊지 않은 상태에서 추가하여도 자동으로 연결해준다.
Retriggerable Delay 는 보다 복잡한 블루프린트에 적합하다.
이미지와 같이 점등과 소등에 0.5초의 딜레이를 만들어주고 컴파일한 후 테스트해본다.
'Tool > Unreal Engine 4' 카테고리의 다른 글
[언리얼 엔진 4.8] 블루프린트 입문 - 03. 클래스 블루프린트에 컴포넌트 추가 (0) | 2019.01.05 |
---|---|
[언리얼 엔진 4.8] 블루프린트 입문 - 02. 클래스 블루프린트 (0) | 2019.01.05 |
[언리얼 엔진 4.7] 레벨 제작 소개 - 11. 소품, 라이트 추가 (완성) (0) | 2019.01.04 |
[언리얼 엔진 4.7] 레벨 제작 소개 - 10. 블루프린트 문 (2/2) (0) | 2019.01.04 |
[언리얼 엔진 4.7] 레벨 제작 소개 - 09. 블루프린트 문 (1/2) (0) | 2019.01.04 |