언리얼4엔진으로 게임 만들기 2 : 블루프린터 종류가 많네
언리얼4의 가장 큰 장점 블루프린터
언리얼3에서 언리얼4로 넘어오면서 많은 잇슈들이 있지만 그중 블루프린터가 있다.
비주얼하게 마치 맥스나 마야의 머터리얼 에디터처럼 비주얼하게 로직을 짤수있다.
에픽게임즈에서는 샘플로 디자이너혼자 게임을 만들었다고 홍보하지만 실제 해보면 프로그래머가 아닌 사람이 하기에는 처음에 적응하기 쉽지않다.
그래도 칼을 들었으면 무라도 썰어야지 하는 생각에 블루프린터로 게임을 계속 만들어본다.
처음 언리얼을 접하면 어디서 부터 시작해야되는지 난감하다 그래서 일단 요약으로 전체적으로 한번 훓어 보고 해야겠다는 생각에 문서와 동영상을 참조하면서 둘러보았다.
1. 레벨 아웃라이너
기존에있는 레벨(월드, 씬), 언리얼에서는 레벨이라고 한다 한글판에서는 1번에 월드 아웃라이너 라고 되어있지만 대부분 레벨 아웃라이너라고 부른다
저기 나와있는 레벨 아웃라이너는 하나의 레벨에 뭔가를 만든다면 저부분에 해당 리스트들이 차곡차곡 쌓여서 레벨에 특정 배치물을 검색하거나 할때 살펴본다
2. 컨텐츠 브라우저
컨텐츠 브라우저에 모든것들을 담겨있다고 보면 된다.
언리얼에서 생산된 리소스들은 에셋이라는 명칭으로 불려지는데 실제 파일명도 uasset이라는 명칭으로 저장된다 에셋은 컨텐츠브라우저에 있는 리소스를 말하는거니 잘기억해두면 문서를 볼때 편하다
저부분에 폴더를 만들어서 머터리얼부터 블루프린터 파티클 메쉬등 모든것들을 검색하고 찾을수있도록 되어있다.
3.레벨 템플릿
레벨에 어떤 기능을 추가할때 저부분을 가끔 사용지만 랜드스케이프(3D 높이맵) 과같은 오픈 월드 게임 만들때 저부분을 자주 사용하게 될듯 싶다.
우선 3가지정도만 알아도 충분하다고 생각이든다.
우선 게임을 만들려면 블루프린터라는 놈이 시급하니 그것부터 살펴보았다.
컨텐츠 브라우저에서 우클릭을 하면 만들수있는 팝업 메뉴가 나오는데 거기 어떤 블루프린트가 있는지 보았다
우선 눈에들어오는건 기본 에셋 생성에 블루프린트 클래스가 눈에 들어왔다. 자주 쓰이니깐 저기 있는게 아닌가 싶다.
애니메이션 탭을 보면 애니메이션 관련 에셋들이 많지만 애니메이션 블루프린트라는 항목이 있었다. 아마도 애니메이션을 설정하는게 아닐까 싶다 동영상 강좌를 보면 언리얼에서는 애니메이션 시스템을 페르소나 라는 시스템으로 부르는데 3D케릭터를 할때 만져보지 않을까 생각한다. 지금은 그냥 보기만...ㅡㅡ;
블루프린트 항목에는 블루프린트에 필요한 에셋만 모아놓은줄 알았는데 구조체, 열거형이 있었다. 실제 구조체와 열거형은 생각보다 많이 쓰인다 간단한 2D게임을 만들고있는 나도 구조체와 열거형이 필요해서 사용해봤는데 복잡하지않고 간단하다
블루프린트 매크로 라이브러리는 자주 쓰는 블루프린트를 매크로 형식으로 만들어서 거기 모아놓는 블루프린트 메크로 라이브러리 그룹이고 펑션 라이브러리 또한 블루프린트에서 만드는 펑션을 모아놓은 그룹이다
저중 블루프린트 인터페이스는 말그대로 블루프린트에 인터페이스만 존재해서 해당부분을 이용해 새롭게 만드는 상속과도 비슷한것이다. 아직 한번도 써복적이 없는데 써야되나 싶기도하고 생각이 들지만 블루프린트가 복잡해지면 쓰게될듯 싶다.
유저 인터페이스 항목에 슬레이트 위젯, 위젯 블루프린트 폰트등이 있는데
슬레이트는 언리얼 도큐먼트에도 나와있지만 코드로 UI를 구성하는 그런 방식이라서 권장 하지는 않는다고 나와있었다. 위젯 블루프린트는 UI를 만드는 블루프린터인데 UMG라고 명칭으로 UI를 심플하게 구성하고 거기서 해당 UI와 바로 동작하는 블루프린터를 작성할수있도록 연결되어져있는 시스템이다 실제로 도큐먼트의 샘플만 잘봐도 기능은 대충 쉽게 알수있을정도이다.
기타에 생소한것들이 몇개 눈에 보였다. 블랙보드 폴리지 유형은 무엇을 말하는지 잘모르겠다. 그외는 마티네는 언리얼3부터 있었던 애니메이션 씬을 만들수있는 그런 시스템이다. 비헤이비어 트리는 아직 AI를 넣지않아서 추후 살펴보겠지만 저부분도 블루프린트와 유사하게 상태시스템 기반으로 특정 행동을 할수있도록 만들어놓은 시스템이다. 터치 인터페이스 셋업은 언리얼4를 실행하면 터치 인터페이스가 나오는데 그부분을 개발하는 에셋이다. 터치에셋은 UMG시스템과 조금 다르다.
튜토리얼 블루프린터는 게임의 튜토리얼을 제작하기위해서 사용되어진다고 하고
피드백 효과 강제는 XBOX스틱이나 포스피드백(진동)이 되는 그런 기능
Media Player은 동영상 출력을 위한 용도인것 같은데 어떤 포멧을 지원하는지는 살펴봐야겠다.
PaperCharacter를 블루프린터로 만들고 키방향에따라 스프라이트 하고 공격하는 블루프린트를 작성해봤다.
저렇게 보면 뭔가 많은것들이 있어서 많은 일을 할꺼라 생각하지만 그냥 애니메이션 상태에따라서 스프라이트를 좌우 상하로 방향을 틀어주는 작업이다.;;
좀더 디테일하게 줌인해봤다.
저부분은 중복으로 작성되어있어서 나중에 단순하게 수정해야겠다고 생각이 든다;;
아직 블루프린터의 기능을 다모르고 그냥 막만들어봤다;;
애니메이션 처리;;
튜토리얼보고 UI를 만들어 보았다. 위젯 블루프린터를 열면 저런식으로 나온다
UI를 다 배치하고 나서 그옆에 디자이너 버튼 옆의 그래프를 누르면 위젯에 기능을 추가할수있다.
다음에는 블루프린트의 종류와 자주사용되는 것들 위주로 살펴봐야겠다.
언리얼3를 써봤던 경험이 있던지라 1주일정도 만지작만지작 해본거치고는 많이 한것같다. 언리얼4로 모바일게임을 만들때까지 안까먹게 틈틈히 남겨야겠다.