레벨 스트리밍이라하면 기본적으로 심리스같이 내 주변의 맵들을 자동으로 로드해오는 것으로 인지하기 쉽지만
언리얼에서의 레벨 스트리밍은 맵 대 맵으로의 이동도 지원을 합니다
예를 들어 처음에 타이틀용 레벨을 읽어 왔다가 어떤 입력을 하면 로비 맵으로 넘어간다고 했을 때 어떻게 만들어야
할까-
지금은 애석하게 됐지만 라그나로크2 오베 당시 나름 신선했던 통짜레벨 타이틀/로그인 화면
상용 언리얼3 라면 별로 고민할 문제는 아니지만 UDK 에서 하려면 아직 분석이 부족해서 당장 쉽게 보이는건 레벨 스
트리밍을 사용하는게 가장 합리적으로 보이죠
레벨 스트리밍을 추가하려면 일단 컨텐츠 브라우저 창에서 Levels 탭을 선택하고
메뉴바에서 Level 을 고르고 Add Existing Level... 을 선택하면 기존에 생성되어있던 맵을 골라 스트리밍 리스트에
추가 할 수 있습니다.
레벨 스트리밍에서는 퍼시스턴트 레벨이라는게 필요한데 게임이 실행되고 나서 내내 사용되진 않지만 개념적으로
존재해야 되는 레벨을 만들어줘야 됩니다. 보통 아무것도 없는 넓은 공간을 하나 만들어주죠..
레벨 스트리밍 http://udn.epicgames.com/Three/LevelStreamingHowToKR.html
레벨 브라우저 http://udn.epicgames.com/Three/LevelBrowserReferenceKR.html
퍼시스턴트 레벨을 만들고 (보통 샘플로 들어있는 거의 모든 맵이 퍼시스턴트가 기본이니 따로 설명은 필요 없음..)
추가할 때 자동적으로 시야에 보일 때, 혹은 무조건 로드해놓는다던가 키즈멧에서 사용할지 선택하는게 나오는데
여기서는 키즈멧을 고르기로 합니다
추가를 했으면
키즈멧을 열고 New Action > Level > Stream Level 을 추가하여 Level Name 에 스트리밍할 레벨의 이름을 적어
줍니다
키즈멧 http://udn.epicgames.com/Three/KismetReferenceKR.html
맵이 유효하면 빨간 x 에서 초록색 나이키(;)로 변합니다
이제 가상의 Entry 레벨에서 시작하자마자 타이틀 레벨로 넘어가게끔 키즈멧을 만들어 보면-
레벨이 시작되자마자 스트림 레벨이 로드되도록 (키즈멧이 2중으로 있어야 됩니다)
퍼시스턴트 레벨의 키스멧에서 스트림 레벨을 불렀으니 이쪽으로 들어오겠죠 :)
스트림 레벨이 시작되자마자 그 레벨의 키즈멧의 Load and Visible 로 out 이 되고 (Beginning of Level 은 작동 안함)
해당 레벨에 걸려있는 이벤트가 수행되면 됩니다, 그리고 레벨 이동이니까 플레이어를 적당한 위치로 텔레포트 시켜줘
야 겠지요 (혹은 새로 스폰하던가)
저 같은 경우에는 그냥 번거로워서 스크립트 처리 했습니다. 뭐 한번 만들면 거의 건들 필요가 없는 부분이니까요-
이야 ㅠ.ㅠ 이제 정식적으로 로비도 있고 타이틀도 있는 UDK 예제들 많이 나오겠네요 이거만 보면 쉽게 되니까!
이그 -_- 폰트 크기만 키웠더니 완전 구리네;;
원한다면 로고(스폰서 로고 ㅋㅋ) -> 타이틀(로그인) -> 캐릭터 선택(로비) -> 인게임 까지도 간단히 제작가능-
'프로그래밍 > Unreal Engine 3' 카테고리의 다른 글
UDK > IDE (0) | 2012.05.23 |
---|---|
Achetype 의 사용과 정적 데이터 입력 (0) | 2012.05.22 |
Level Streaming (0) | 2012.04.02 |
FootPlacement (0) | 2012.03.23 |
UDK > Unreal Frontend > Launch 실패 (2) | 2012.03.15 |
댓글