언리얼을 만져보지 않은 분들이라도 블루프린트라는 단어는 많이 들어보셨을 것이다.
나도 강좌를 선택하기 전에는 블루프린트 강좌만 너무 많아서 언리얼은 블루프린트를 훨씬 많이 쓰는건가 라고 생각을 했었는데.. 현업에서는 당연히 C++를 훌씬 많이 쓰는것 같다.
블루 프린트
블루 프린트란 언리얼에서의 시각적인 프로그래밍을 얘기한다.
언리얼 엔진안에 내장되어 있는 '언리얼 전용' 에디터이기 때문에 빠르게 수정이 가능하고, 충돌이 덜하다고 한다.
(외부 툴이 아니기 때문에)
또 언리얼에서 제공하는 많은 기능들을 탐색해서 골라서 편하게 사용할 수 있다.
전문적인 프로그래밍을 배우지 않아도 쉽게 사용이 가능하다는 장점이 있다.
C++
언리얼 엔진은 C++를 통해서도 개발이 가능하다.
블루 프린트로 작성하는것보다 코드로 작성하는게 더 간결하고,
게임,언리얼 엔진 뿐만 아니라 여러곳에서 사용되기 때문에 참고할만한 레퍼런스들이 많다.
블루프린트는 언리얼 엔진에서 제공하는 기능들만 사용할 수 있는것과는 다르게,
C++을 이용하면 많은 기능들을 직접 구현할 수 있다.
C++로 기능을 만들어서 블루프린트로 제공하는것도 가능하다고 한다.
(아직 해보진 못했다.)
내 궁극적인 목표는 당연히 C++로의 개발이지만, 당장은 블루프린트로 시작을 해보기로 했다.
블루 프린트 맛보기
해당 버튼을 눌러서 블루프린트 에디터를 열어주자.
창이 많이 뜰수도 있는데, 옆에 거슬리는 창들은 다 꺼버렸다.
에디터에서 오른쪽 클릭을 하면 사용할 수 있는 상당히 많은 기능들이 나온다.
난 'Print String' 이라는 노드를 선택해서 생성해주었다.
읽어보면 스트링을 로그 및 화면에 띄워주는 노드다.
노드 안에 있는 아이콘에 대해 간단히 알아보자.
핀 (하얀색 화살표)
왼쪽 핀 - 이 노드가 언제 실행이 될지
오른쪽 핀 - 이 노드가 실행이 된 이후의 행동
데이터 핀(분홍색 동그라미)
왼쪽 데이터핀(분홍) - 입력 (인자 값)
오른쪽 데이터핀 - 출력 (리턴 값)
이제 이 노드가 실행이 되게 하려면, 이벤트가 있어야한다.
이벤트라고만 검색해봐도 꽤 많은 이벤트들이 나온다.
난 BeginPlay 이벤트를 Print String 노드와 연결시켜 주었다.
게임을 실행해보면, 좌측 상단에 쥐똥만한 사이즈로 뜬다.
로그창에도 똑같이 찍힌다.
박스 점프시키기
해당 메뉴에 들어가서 큐브를 클릭하고 드래그를 하면 큐브를 씬 안으로 가져올 수 있다.
씬에 배치하고 TestCube라는 이름으로 배치를 해주었다.
저렇게 클릭을 한 상태에서 블루프린트로 들어오면 TestCube에 대한 레퍼런스를 생성할 수 있다.
이제 TestCube를 참조했으니 이 안의 컴포넌트에 접근해서 점프를 시켜보자.
오른쪽 파란색 데이터핀을 누르고 쭉 드래그&드랍을 하면 TestCube에서 가져올수있는 노드들이 나온다.
컨텍스트에 따라라는 오른쪽 상단체크를 해줘야 한다. 없으면 다 나옴.
그리고 스페이스바라고만 쳐도 키보드이벤트가 뜨는데 ,
Pressed는 눌렀을때, Relased는 뗐을때 이벤트다.
이런식으로 조금 예쁘게(?) 다듬어서 Pressed 이벤트에 연결해주었다.
스페이스바의 Pressed이벤트가 실행되면, Add Impulse 노드에서 TestCube의 컴포넌트를 참조해 힘을 가한다.
원래는 질량에 따라서 가하는 힘을 조절해주어야 하는데,
Vel Change를 체크하면 질량에 상관없이 같은 힘을 가한다.
언리얼 블루프린트로 만든 감격스러운 첫 점프가 완성됐다.
'게임 엔진 > 언리얼' 카테고리의 다른 글
[언리얼 5] 공부 시작 - 설치와 뷰포트 (0) | 2023.06.25 |
---|
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!