로딩 시간이없는 게임은 어떻게 작동합니까?


34

우리는 레벨이나 체크 포인트로 나누어지지 않은 광범위한 게임에 대해 이야기하고 있습니다. 예를 들어 3D 모험.

답변:


45

간단한 대답 : 게임은 덩어리로 나뉘며 덩어리를 돌아 다니면서 덩어리를 볼 수 있기 전에 끊임없이 등 뒤에 짐을 싣고 있습니다. 모든 간단한 대답은 구현에서 무수한 트레이드 오프를 측정하는 복잡한 솔루션입니다 ...하지만 아이디어를 얻습니다.

당신이 수십 또는 수백 마일 떨어진 곳을 볼 수 있다고 생각되는 게임의 경우, 모든 것이 가짜입니다. 실제로는 비트 맵일 뿐이며, 중간 범위는 매우 가벼운 메시입니다. 실제 물건은 당신이 그것을 얻기 전에 가짜 물건 위에로드되고 배치됩니다.

청크가 언로드되면 진행중인 모든 객체 또는 퍼즐의 상태를 저장하여 돌아올 때 마지막으로 본 위치로 재설정됩니다.

이 모든 것이 주요 질문을 우회하므로 실제 대답은 다음과 같습니다. 게임을 처음 시작할 때는 항상 로딩 시간이 있지만 "항상 게임을 시작하는 데 시간이 걸리므로"인식하지 못합니다. 시네마틱 로딩 뒤에 숨겨져 있거나 GUI에서 플레이하는 동안 발생합니다.


5
Minecraft와 같은 게임을 제외하고 청크가 실제로 더 많이로드 될 때.
liamzebedee

19
또는 메모리에 완전히 들어가거나 절차 적으로 콘텐츠를 생성하는 게임 또는 또는 특별한 경우가 항상 있습니다. =)
Jari Komppa

5
일반적으로 엘리베이터를 타는 것과 같은 게임 내 로딩 화면이 있어야합니다. 이 작업을 수행하는 가장 일반적인 방법 중 하나는 긴 복도 또는 메트로 에어 록입니다. 이 작업을 수행하는 깔끔한 방법은 렌더링 된 장면 뒤에 숨기는 것입니다. 전쟁의 신을 한 적이 있습니까? 카메라가 정체 상태가 될 때마다 긴 복도 또는 에어 록 타입로드를 수행합니다. 문자 및 충돌은 여전히 메모리에, 세계 지리는 : 업데이트지고
제임스

3
@Liam Ep Minecraft는 Patrick의 간단한 답변이하는 일을 정확하게 수행합니다. 그것은 당신의 주위에 덩어리를 적재합니다. 게임에서 순간 이동하면 당신이 기대하지 않은 덩어리가로드되는 것을 볼 수 있습니다. 당신이 방황하면 그것들을 언로드하고 상태를 디스크에 저장합니다. "수십 또는 수백 마일 떨어진"부분에 대해서는, 마인 크래프트에 안개가 있으며, 단지 시야를 수백 미터로 제한하고 더 멀어지지 않습니다.
Scott Chamberlain

4
내가 몰두 한 게임을하는 동안이 답변에 대해 생각하면 슬퍼합니다. 당신은 저를 탐험하기를 기다리는 세상이 없다고 말하려고합니다! 생성, 렌더링 및 탐색을 기다리고 있습니다 !! 바아!
KRB

12

이전 답변은 거의 모든 것을 못 박았습니다. 또한 언급 할 가치가있는 것은 Dungeon Siege I입니다.

다음은 개발자 중 한 사람이 실제로 작동시키는 데 필요한 아키텍처와 일반적인 함정을 다루는 논문입니다.

http://www.floatingorigin.com/mirror/continuous-world.htm

실제로 그런 것을 구현하려면 꼭 읽어야한다고 말하고 싶습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.