사실 3d임

아예 전용 필터도 있음
(※수정 데드셀은 섀이더가 아니라 3디를 도트화 한다음 이미지로 만들어서 움짤화 한거임)
툴 사용 결과물
근데 초기 3d 게임도 사실 2d 였으니 쌤쌤 아닐까?
https://gall.dcinside.com/mgallery/board/view/?id=aoegame&no=16490887


초창기 FPS의 대표격 게임들인 이드 소프트웨어 의 울펜슈타인 3D (1992)와 둠(1993) 은 사실 3D 게임이 아니다.

게임기&컴퓨터의 메모리 내에서 게임의 모든 공간은 평면으로 처리된다.
그리고 이 평면 공간에 입체감을 부여하고자 꼼수를 쓰는데,

그리고 그 거리의 길고 짧음에 따라, 플레이어의 화면에 비춰지는 타일들의 크고 작음을 결정한다.

이 과정이 순식간에 이루어져,
그 결과물로 플레이어의 눈에는 깊이감 있는 화면이 보이게 되는 것이다.
일명 레이캐스팅(Raycasting) 이라 불리는 렌더링 기법이다.
그렇다면 둠 은?
둠은 울펜슈타인 3D보다 훨씬 진보된 모습을 보여준다.
적들이 높은 곳, 낮은 곳에서 보이고 계단도 있다!
아무리 봐도 3차원 공간으로 보인다.
하지만 이것도 3차원이 아니다.
플레이어가 분명히 적의 머리 너머를 쏘고 있는데,
아무 문제 없이 총알이 적에게 맞는 것이 보이는가?
이것 역시 실제 높낮이의 구분 없이 눈속임을 이용하기에 벌어지는 현상이다.
둠은 울펜슈타인의 레이캐스팅보다 진보된 렌더링 기법으로 이진 공간 분할법 (Binary Space Partitioning)을 사용한다.

개발자가 2차원 맵을 디자인하면

둠 엔진은 이 공간을 잘게 잘게 쪼개서

데이터 트리를 형성한다.
간단한 작은 공간을 예로 설명해보자.



또 그 둘을 다시 둘로 나누고, 계속 나눠서 게임 엔진이 수용할 수 있는 작은 공간들의 집합으로 만든다.

그리고 이 각각의 공간들을 데이터 트리로 만든다.
공간을 둘로 나누고 그 둘을 또 둘로 나눈다고 했던 것에서 볼 수 있듯, 이렇게 하면 서로 제일 가까운 공간들이 자연히 제일 가까운 가지에 배열된다.

플레이어가 이 공간에 들어섰을 때, 프로세서는 그 공간만큼을 렌더링하고 저장한다.

그리고 트리의 가장 가까운 다음 가지로 이동해서, 또 그 공간만큼을 렌더링하고 저장한다.

이렇게 렌더링하고 저장하기를 반복하다가,
한 가지가 차지하는 공간이 앞에 가로막혀 화면상에 보이지 않으면 그 공간은 렌더링하지 않고 넘어간다.

이 절차를 플레이어의 시야 안에 들어오는 공간을 완벽하게 렌더링할 때까지 반복한다.
이것도 게임에 들어가는 연산을 최대한 줄여 최적화하기 위한 수단이었다.
따로 물체의 위치를 삼차원 정렬하거나 하는 추가적 연산 과정 없이, 데이터 트리를 올바른 순서로 지나는 것 만으로 공간을 정확하게 렌더링할 수 있다.
뭔소린지 모르겠으면 그냥 꼼수 써서 효율적으로 화면을 그렸구나 하고 생각하면 된다

깊이감 있는 천장과 바닥으로 보이는 것은 사실 플레이어 시점에서 깊이감 있어보이도록
프로세서에게 평소보다 더 멀리 있는 것처럼 렌더링하라고 지정된 타일들일 뿐이고,

실제 메모리 상에서는 전부 2차원 평면이다.
둠이 정말 게임을 3차원 공간으로 연산하고 있었다면 공간을 공간 위에 올릴 수 있었을 것이다.

실제 메모리 상에서는 전부 2차원 평면이다.
둠이 정말 게임을 3차원 공간으로 연산하고 있었다면 공간을 공간 위에 올릴 수 있었을 것이다.
이것이 둠가이가 높낮이에 상관없이 적을 맞출 수 있는 이유다. 적들이 실제로 높은 곳에 있는 게 아니라,
그렇게 보이도록 만들어졌을 뿐이기 때문이다.
그리고 시점을 위아래로 올리거나 내릴 수 없는 이유이기도 하다.
진짜 3차원 게임이 아니라 3차원으로 보이도록 만들어진 2차원 게임이기 때문이다.

우리가 알고 있는 지금 형태의 완전한 3D 게임은 퀘이크(1996) 가 나올 때 쯤에야 구현되었다.
이런 게 일종의 최적화 이론 같은 건가... 신기방기...
지금은 널리 쓰이는 기법들이고 저 당시에 발견한 사람들이 게임개발의 기반을 닦은거지
즉 둠은 도트게임이다 이거군
옛날 게임은 진짜 용량 문제로 꼼수를 빙자한 온갖 노하우가 넘쳐났지
그니까 2d 처럼 보이는 3d라구여
전설의 게임 페르시아왕자도 실제동작사진 하나하나 찍어서 그래픽으로 만든거니 의외로 근본으로 돌아간 것일지도?
즉 둠은 도트게임이다 이거군
일단 울펜슈타인은 맞는 듯
이런 게 일종의 최적화 이론 같은 건가... 신기방기...
매너유저수민이
지금은 널리 쓰이는 기법들이고 저 당시에 발견한 사람들이 게임개발의 기반을 닦은거지
요즘 2d게임들이 굳이 안저래도 유니티나 언리얼같은거로 만들면 2d처럼 보이는 3d겜아닌가
그니까 2d 처럼 보이는 3d라구여
맞음 카메라 워크만 고정해놓으면 2d도 되고 3d도 됨 거기서 오는 입체감을 죽이던지 살리던지는 만드는 사람 마음인거고
윈도우판 둠에선 시점 변환도 가능 ...대체 뭐지 어떻게 한거지
아 완벽히 이해했어 콘
개쩌는구만
뭐라는거야!!!!!!!!!!!!
옛날로 회귀한 느낌이..
아, 3D 모델을 썼지만 3D로 보이지도 않는 2D게임이군!
옛날 게임은 진짜 용량 문제로 꼼수를 빙자한 온갖 노하우가 넘쳐났지
킹오파 13은 3d로 만들고 그걸 대고 도트찍었다던데 이제는 아예 도트화가 되는구나 ㄷㄷㄷ
3D 그래픽 2D 와드
진짜 대단하다
아 그렇구나!
진짜 id소프트가 3D 게임의 한 획을 그었음 id Tech 엔진 계보와 이 엔진에 뿌리를 두고있는 물리엔진들 알아보면 진짜 어마어마함
이런 글 조아
한정된 자원에서 원하는결과를 극복하기위한 노력들이지. 그런데 요즘엔 오히려 자원이 너무 많아서 낭비도 많다더만.
대충 이해했어
킹오파13이 3d모델 활용해서 정작 도트는 하나하나 다 찍었다던데 ㅋㅋ
신기하네
보여지는게 그렇다는 것이지 그래픽이 3D냐 2D냐는 별개 문제이긴 한데... 동시기에 나온 울펜슈타인이 직접적으로 영향을 받은 1인칭 핵앤슬래쉬 RPG인 울티마 언더월드는 높이도 있고 비행도 가능한 게임이지. 이걸 당시 스펙에 맞게 빠르게 돌아가도록 만든게 위에 언급된 기법들이고. 울펜슈타인은 어느정도 2차원이라고 할 수 있겠지만 둠은...정확하게는 높이 개념자체가 있긴 한 게임이라 2D라고 부르긴 뭐함 ㅋㅋ
https://youtu.be/ee4PUcpGSn8?t=3111 울티마 언더월드가 기술적 초기작임에도 제법 제대로 구현이 되어있어서 놀랍더라.
울티마 언더월드가 울펜3d랑 비슷한 시긴데 이쪽은 제대로된 3d 아니었나
그러고보니 다크포스1은 배경이나 게임 중 등장하는 우주선이 3D그래픽이었던 거 같은데.. 캐릭터는 스프라이트지만 얼추 풀3D에 근접한 게 아니려나?
저건 가짜도트인 데스우...
근데 솔직히 저런 도트는 수작업 도트랑 비교해서 도트 본연의 맛이 안남. 90년대 시절 슨크 수작업 도트나 캡콤 스파3 도트에서 느껴지는 수작업 도트 느낌은 저걸로 낼수가 없음.
n류개발자 카멕 형이 존로메로랑 걔쪽에 붙은 id 직원들이 놀고먹을 동안 저런 걸 만든건가
존 카멕은 천재다
전설의 게임 페르시아왕자도 실제동작사진 하나하나 찍어서 그래픽으로 만든거니 의외로 근본으로 돌아간 것일지도?
카라테카 - 페르시아 왕자가 로토스코핑 이었나 그용어 였던거 같음
오
"플레이어가 분명히 적의 머리 너머를 쏘고 있는데, 아무 문제 없이 총알이 적에게 맞는 것이 보이는가?" 이 부분은 둠은 위아래는 자동조준해서 그래. 본문 말대로 실제로 2D맵이긴 한데 위 아래는 있고, 높이 차이 많이 나면 자동조준 못해서 안맞음.
대단하구만
킹오파가 아예 이 기술로 틈새시장 노렸으면
있는데 망한걸로 암
KOF XIII이였나?
ㄴㄴ 13까지 3D위에 덧그린거임
저걸 하나하나 그린거
3d처리면 80년대 비행시뮬에서 이미.. 당시 하드웨어 스펙이 낮아서 2d를 확대축소해 입히거나 하는식의 대안도 쓰지못하는 진짜 순수한 3d 뼈대 그래픽 https://youtu.be/01bB-oCPyz4
3D가 아니라고 볼순없고 저것들이 지금 3D의 기반이 되었다고 보는게 맞음. 거리별로 크기를 달리하는건 원근투영방식이고 트리로 구역쪼개는건 지금도 하고있음. 다만 엔진이 대신해주기에 몰라도 개발이 되지만 알면 좋지.
던파 에테르나 몹이 저런식으로 도트가 찍혀진듯