• [Unreal 게시판] kite demo가 쪼개져 있는 이유2016.06.07 PM 01:49

게시물 주소 FONT글자 작게하기 글자 키우기

Question>

언리얼4에서 제공하는 Kite 데모를 보면

이런식으로 라이팅만 있는 레벨/ 뒷배경만 있는 레벨/ 폴리지만 있는 레벨 등등
레벨이 여러개가 있는데

하나의 레벨에서 이루어지지않는 이유가 뭔가요???
물론 게임을 한다면 당연히 안에 들어가서 생기는 액션들이 있으니 그렇다해도

이건 그냥 영상아니에요?

이렇게 레벨이 다 특정하게 쪼개져있더라구요

역시 언리얼4에서 제공하는 랜드스케이프 데모는 하나의 레벨에 모두 배치가 되어있는데
이렇게 하나의 레벨에 수많은 스태틱매시와 폴리지등등.. 모든걸 하나의 레벨에 다 배치하면 생기는 문제는 뭘까요
또 KITE DEMO처럼
저렇게 따로만든 레벨들을 플레이할때 다 각자 있어야할 정확한 위치에 위치시켜서 합쳐지는건지 모르겟어요
KITE DEMO도 사실 하나의 레벨에 이루어져있는거고 저건 그냥 소스자료일뿐인데, 제가 그 레벨을 못찾는걸까요 ㅠㅠ

-------------------------------------------------------------

Answer>

쪼개져 있는 이유는 실시간 rendering 영상이라서 그런 겁니다.


VGA가 실시간으로 처리할 수 있는 삼각형의 개수는 한계가 있는데,
영상은 1초당 60 frame씩 실시간으로 rendering을 해야 하니,
VGA에 부담을 줄이기 위해서 전체 지형을 나눌 수 밖에 없는 겁니다.


혹시, 님께서
'어차피 하늘에서 보는 장면에서는 다 보일텐데, 나누는 의미가 없는 거 아닙니까?'라고
질문하실 수도 있는데요.


하늘에서 보는 장면의 경우,
원거리에 해당하는 LOD가 적용되기 때문에
삼각형 개수가 줄어든 유사 mesh로 대치되므로 VGA에 부담이 적습니다.
그래서, 전체 지형이 다 보여도 60 frame이 유지되는 것이고요.


지상에서 보는 장면은
camera가 가까이 있는 지역의 지형 mesh에 한해서만
근거리에 해당하는 LOD가 적용되어서
camera가 가까운 지역만 삼각형 개수가 늘어난 mesh로 보여지기 때문에
camera가 가까운 지역만 세부적으로 보이면서 60 frame이 유지되는 것이고요.


만약에 님이 가진 VGA가 엄~청~나게 좋은 거라면,
쪼갤 필요 없이 하나의 level에 모두 올려서 처리할 수도 있겠습니다.
하지만, kite demo 수준으로 봤을 때, 그 많은 걸 다 올리고도
60 frame으로 실시간 rendering을 할 수 있는 VGA는 현재 존재하지 않습니다.^^;;;;;


그래서,
현재 기술 수준의 VGA로 실시간으로 rendering을 하려면,
저렇게 쪼개서 여러가지 기술을 적용하는 수 밖에 없습니다.


lighting도 비슷한 이유로
원거리 상황과 근거리 상황에 따라 다른 처리를 하기 때문에 level이 따로 있는 걸로 알고 있습니다.


-------------------------------------------------------------

Question>

제가 진짜 초보라서 그래요.. 작업은 다른 레벨에서 하더라도 나중에는 다 한 레벨로 합쳐서 찍은거겠거죠?

-------------------------------------------------------------

Answer>

합치기는 하는데,
3DS max나 maya에서의 merge 기능으로 하나의 mesh로 만든다는 개념은
절~대~ 아니고요.^^;;;;


camera와 해당 영역과의 거리
또는 camera에 해당 영역이 보이냐 안보이냐에 따라 작동되는 logic에 의해서
합쳐져 보이도록 matinee와 blue print로 처리를 하는 거죠.


그러니까, 실질적으로는 한 level로 합쳐지지는 않습니다만,
중심이 되는 level이
하부 level들을 load/unload하면서,
합쳐져 보이게 처리를 하면서 촬영을 한다는 겁니다.


자세한 건 아래 내용을 보시고요.

http://docs.unrealengine.com/latest/KOR/Engine/LevelStreaming/WorldBrowser/index.html

https://wiki.unrealengine.com/Blueprint_Manual_Level_Streaming

level streaming에 익숙해지시게 되시면,
제가 쓴 글의 의미를 아시게 될 거라고 생각합니다.







Tag:
안기훈, Keehoon Ahn, 언리얼, Unreal, UDK, iPhone, iPad, app, 앱, iOS
댓글 : 0 개
친구글 비밀글 댓글 쓰기