“2.5D”환경이란 무엇입니까?


31

"2.5D"라는 용어의 의미를 이해하지 못합니다. 두 가지에 대한 다른 정의와 기사를 읽었지만 2.5D와 3D 환경의 차이점에 대해 특히 혼란스러워합니다. 2.5D가 3D와 같은 부분을 이해하지만 2.5D가 다른 부분은 얻지 못합니다.

그렇다면 게임이 2.5D라는 것은 무엇을 의미합니까? 예를 들어 게임이 2.5D로 표시됩니까?

마리오


10
내가 아는 한 스프라이트가 3D 모양을 시뮬레이션하는 데 사용될 때 2.5D입니다. 고정 카메라를 가지고 있지만 여전히 3D 지오메트리로 작업 할 때마다 여전히 3D 게임입니다. 스크린 샷에서 Mario는 3D 모델 인 것처럼 보이므로 게임은 완전한 3D로 보입니다. 일반적인 3D 파이프 라인에서 3D를 에뮬레이트하는지 또는 실제로 3D 지오메트리를 렌더링하는지에 관한 것입니다.
그림 쇼

@ 그림 쇼 2.5D는 엔진이 3D 모델로 2D가 될 수 있다는 의미입니까? 2D 엔진과 3D 엔진으로 이런 종류의 게임을 만들면 상대방이 있다고 확신합니다. 그들은 무엇인가? 3D 성능 비용?
mathieug

4
2.5D는 2D 이미지 (스프라이트)를 거의 독점적으로 사용하여 3D처럼 보이지만 세상을 렌더링하는 것을 의미합니다. 2D로 완전히 렌더링 된 2.5D 게임의 예는 Clash of Clans와 같은 아이소 메트릭 게임을 확인하지만 3D 게임처럼 보입니다. 월드 3D 모델을 사용하기 시작하면 3D가되고 2.5D 용어는 더 이상 적용되지 않습니다. 이것은 카메라가 3D를 렌더링하는지 여부와 관련이 없다는 것을 의미합니다. 3D는 투영 또는 카메라 동작이 아니라 형상입니다.
그림 쇼

이 질문은 특정 게임의 기능에 관한 것이므로 주제가 아닌 것 같습니다. "2.5D"용어의 정의 또는 의미가 적절한 지 (단지) 묻는 질문 (그러나 우리는 이미 떠 다니는 느낌이 들지만) 특정 게임이 아닌지 묻는 질문 게임 제작과 관련이 있습니다. 2.5D 게임을 만들어야하는지, 왜 객관적이지 않은지 묻습니다.
Josh

3
@JoshPetrie 무엇? 그의 이해가 모호함으로 이어지는 예를 추가하면 질문이 일반적으로 유용하지 못하게하는 방법은 무엇입니까? 이 경우 (핵심 문제는 완벽하게 유효하지만 OP로 인해 약간 부풀어 오름이 있음), 질문은 열려 있어야합니다. 복제본이 있으면 복제본으로 닫습니다.
ClassicThunder

답변:


60

이미 알고 있듯이 2D3D 라는 용어 는 유클리드 세계 공간의 공간 차원 수를 나타냅니다. 이 차원은 서수 여야합니다. 반 차원 과 같은 것은 없으므로 2.5D 라는 용어 는 실제로 의미가없는 용어이며 본질적인 의미는 없습니다. 즉, 2.5는 2와 3 사이의 "어딘가에"이므로 2.5D는 일반적으로 "2D와 3D 사이의"어딘가에있는 것을 의미합니다.

개인적으로 저는 게임의 그래픽 공간 공간과 논리 공간 공간의 차원이 다른 경우를 말합니다. 특히 여기에는 두 가지 변형이 있습니다.

  • 2D 논리 및 3D 그래픽 . 예를 들어, 2D 게임 메커니즘과 물리를 갖춘 플랫 포머이지만 3D 메시와 투시 카메라로 렌더링됩니다. Pac-Man, Breakout 등과 같은 클래식 아케이드 게임의 대부분의 리메이크가이 범주에 속합니다. 아래 사진 : 파인애플 스매쉬 크루

파인애플 스매쉬 크루는 2D 세계에서 진행되지만 3D로 렌더링됩니다.

  • 3D 논리 및 2D 그래픽 . 그 예로는 3D 게임 월드가 있지만 2D 아이소 메트릭 뷰로 렌더링되는 Gnomoria 또는 SimCity 2000과 같은 게임이 있습니다. 아래 그림 : Xenonauts

Xenonauts 지상 공격은 3D 그리드에서 발생하지만 2D 스프라이트를 사용하여 완전히 렌더링됩니다.

이 용어의 또 다른 일반적인 사용 (내가 사용하는 것은 아니지만)은 3D와 광고판 2D 그래픽 의 조합을 이용하는 게임을 말합니다 . 이 경우이 용어는 게임의 논리적 차원을 전혀 설명하지 않습니다. 사실상 모든 3D 게임은 파티클 시스템, 먼 오브젝트 프록시 및 월드 내 UI 오버레이를 포함하여 어떤 방식 으로든 빌보드를 사용합니다. 따라서이 용어는 일반적으로 배경이 아닌 객체의 상당 부분이 2D 그래픽을 사용하고 2.5D와 3D의 경계가 다소 흐릿한 경우에만 사용됩니다.


17
그건 그렇고, 분수 차원과 같은 것이 있지만 게임 개발 용어 "2.5D"와는 아무런 관련이 없습니다. 그것은 프랙탈과 다른 이상한 토폴로지 형태를 연구 할 때 나타납니다. 예를 들어, Quadratic Koch 표면 (유형 2)의 Hausdorff 치수 (프랙탈 치수를 정의하는 일반적인 방법)는 정확히 2.5입니다.
Lily Chung

9
@IstvanChung 예, 기술적으로 당신은 옳고 그것을 언급하는 것을 고려했지만 문제를 혼란스럽게 할 것이라고 생각했습니다. 저는 n 차원 유클리드 공간 외부의 토폴로지 공간에 대해 알아야 할 게임 개발자가 거의 없다고 생각합니다. 만약 그렇다면, 프랙탈에 대해 이야기하고 있지 않다는 것을 이해할 것입니다.
bcrist

1
@Parap 그리고 ... 완료!
bcrist

2
@bcrist 만약 내가 두 번째로 투표 할 수 있다면, 누군가 내 두뇌의 힘으로 나를 위해 투표 할 것입니다.
Pharap

2
나는이 논리적 대 그래픽 구별을 정말로 좋아한다. 여기의 대부분의 답변 / 의견은 2.5D가 2D 그래픽을 의미한다고 가정하지만 실제로 3D 그래픽을 생각하는 경향이 있습니다. 그래서 논리 대 그래픽 차이는 2.5D의 두 개념을 포괄 할 수있는 좋은 방법입니다
jhocking

27

내가 아는 첫 번째 게임은 "2.5D"라는 용어가 Doom이었습니다 (Wolfenstein 3D도 어떤 의미에서 자격을 갖추 었음에도 불구하고).

Wolfenstein 3D는 기본적으로 3D 프리젠 테이션이있는 2D 게임이었습니다. 2D 미로를 탐색하고 모든 바닥이 평평하고 모든 천장이 같은 높이에 있었으며 창문이 없었으며 문이 바닥에서 천장까지오고 옆으로 열렸으며 다른 물체의 위나 아래에있을 수 없었습니다. 이 게임은 레이 캐스팅을 사용하여 화면의 각 열에 대해 벽이 그 방향으로 얼마나 멀리 떨어져 있는지, 벽의 질감은 무엇인지 알아 냈습니다. 벽 질감의 기둥은 거리에 반비례하는 높이로 그려졌으며 위와 아래의 공간은 바닥 채우기와 천장 채우기로 페인트되었습니다. 적과 물체는 제한된 수의 측면을 가진 스프라이트였으며 크기는 다시 거리에 비례합니다.

Doom은 Wolfenstein 3D와 매우 유사한 기술을 사용했지만 더 많은 3D 경험을 얻기 위해 남용했습니다. 지도는 여전히2D는 2D 이진 공간 분할을 사용하여 표시됩니다 (따라서 .BSP 맵 파일 이름). 탭을 눌렀을 때 오토 맵에서 본 것은 맵의 직접적인 2D 렌더링이었습니다. 그러나 각 부문은 독립적 인 "바닥 높이"와 "천장 높이"를 가졌으며 가장자리는 상단 및 하단 측면 텍스처를 가졌습니다 (그들은 주변의 일부보다 천장 높이가 낮거나 바닥 높이가 높을 때 사용). 이로 인해 계단, 창문, 플랫폼, 수영장 및 기타 효과가 가능해졌습니다. 엔진은 결국 벽에 부딪 치기 전에 통과 된 여러 섹터의 목록과 해당 텍스처를 유지할 수 있어야했습니다. 그러나 여전히 실제 3D 아키텍처를 가질 수 없었습니다. 바닥 부분을 사용하여 점액을 가로 질러 "브릿지"를 만들 수는 있지만 어떤 것도 아래에 놓을 수는 없습니다.다리. 게임에서의 위치는 여전히 X와 Y입니다. 플레이어가 자신의 키를 넘어서는 유일한 컨트롤은 물건에서 떨어지고 엘리베이터는 바닥 높이를 변경하도록 스크립트 된 섹터입니다. 적들은 여전히 ​​스프라이트 (더 많은 측면을 가지고 있다고 생각하지만) 충돌 탐지는 2 차원에 불과하기 때문에 높이가 "자동 조준"되고 게임에 3D 모델이 없었습니다.

Heretic과 Hexen은 때때로 "2.75D"라고 불릴 정도로 한 단계 더 발전된 Doom 파생 엔진을 사용했습니다. 그들은 건축상의 한계와 스프라이트에 기반한 적이 거의 같았지만 플레이어가 위아래로 볼 수있는 기능을 추가했습니다 (보기까지 기울이지 만 엔진은 고장날 수 있습니다). (높이를 독립적으로 변경).


1
+1, 사람들이 레이 캐스팅을 언급 할 때 2.5D라는 용어 만 들었습니다. 좋은 설명입니다!
Ruben

5
+1이 답변은이 용어의 최초 역사적 사용과 관련하여 정확합니다.
R ..

이것은 가장 (실용적으로) 정답입니다. 왜 그것이 첫 번째가 아닌지 잘 모르겠습니다…
Sarge Borsch

이 답변은 역사적으로 정확할 수 있지만 업계 표준으로 인정되거나 정의 된 정의는 아닙니다. 오늘날 2.5D로 묘사 된 모든 게임은 보편적으로 3D 모양의 2D 렌더링으로 이해됩니다.
Ted Bigham 1

Heretic과 같은 게임의 룩업 / 다운에 대한 제한은 객체 높이가 X 좌표가 아닌 화면 Y 좌표에만 반영되어 장면의 모든 수직선이 수직으로 렌더링된다는 사실에 기초한 것으로 생각합니다. 얕은 각도에서 위 또는 아래를 바라 보면 눈에 띄지 않지만 가파른 각도에서는 매우 불쾌합니다. 나는 가파른 각도가 엔진을 망칠 것이라고 생각하지는 않지만 단지 환상입니다.
supercat

11

2.5D

주로 비디오 게임 산업에서 2.5D ( "2 차원 및 2 차원"), 3/4 투시 및 의사 -3D ar 용어는 일련의 이미지를 유발하는 데 사용되는 2D 그래픽 프로젝션 및 유사한 기술을 설명하는 데 사용됩니다. (또는 장면) 실제로 3D (3D) 인 것처럼 보이지 않거나 2D 평면으로 제한된 다른 3D 비디오 게임에서 게임을하는 모습을 시뮬레이션합니다.

내 경험에서 정의가 강조되는 것은 대화하는 사람의 나이에 달려 있습니다.

  1. 나이가 많은 게이머는 1 차 정의를 사용하는 경향이 있습니다. " 2D 그래픽 프로젝션 및 유사한 기술을 사용하여 일련의 이미지 (또는 장면)가 실제로 "

  2. 더 어린 게이머는 2 차원 평면에 제한된 다른 차원의 비디오 게임에서 2 차 정의 " 게임 플레이 "를 사용합니다 .

개인적으로 나는 두 번째 정의를 사용합니다. Trine, Donkey Kong 및 Super Mario Bros Wii U는 모두 2.5D라고 생각합니다. 또한 2.5D Steam 태그 는 두 번째 정의를 사용합니다. 나는 이것이 전형적인 게이머가 개념을 어떻게 정의하는지에 대한 좋은 리트머스 테스트 라고 생각합니다.) 따라서 나는 두 번째 정의가 더 정확하다고 생각합니다 .

3D

3 차원으로 계산 된 3D 게임 그래픽이있는 모든 비디오 게임. 이것은 두 번째 2.5D 정의의 상위 집합입니다.


나는 플랫 포머 Shadow Complex가 매우 흥미로운 경우라는 것을 알았습니다. 상호 작용은 3D, 심지어 적의 위치에서도 발생할 수 있기 때문입니다. 그러나 총을 겨냥한 것은 3D의 투사가 스크린에서 배치 한 위치와 일치하는 2D 각도를 가리키는 것과 관련이있었습니다. 그런 다음 캐릭터는 그 각도를 투사하지 않고 총을 Z 축으로 향하게했습니다.
Seth Battin

6

2.5D는 3D로 보이는 2D를 말하는 편리한 방법입니다.
나는 예를 들어, 당신은 단지 2 차원 평면에 게임을 3 차원 엔진을 사용하지만, 제한, 경우에 당신이 정말로 정의의 라인을 흐리게 할 수 supose하지만 개인적으로 나는 그것이 뭔가 2.5D를 생각 하는데요 보이는 3D를하지만 역할 2D합니다.


감사. 내 프로젝트 아이디어는 3D처럼 보이지만 여전히 2D 또는 3D 엔진과 물건에 대해 궁금합니다. 내가 게시 한 스크린 샷을 중심으로 2.5D / 3D에 대해 더 말씀해 주시겠습니까?
mathieug

스크린 샷 (직장에서 차단됨)이 보이지 않아 댓글을 달 수 없습니다.
DFreeman

3

게시 한 게임 스크린 샷은 3D 게임입니다.

3D 게임에서 정점을 사용하여 객체를 그려 실제 3D 객체를 그립니다.

2D 게임에서 오브젝트는 스프라이트 / 스프라이트 시트 등에서 가져옵니다.

둘의 차이점은 어떻게 볼 수 있는지입니다. 스프라이트는 평평한 종이와 같습니다. 다른 피치 나 각도로 볼 수 없거나 스프라이트가 기울어집니다. 3D 객체에서는 카메라가 움직일 때 객체가 3D이기 때문에 객체의 다른 부분을 볼 수 있습니다.

2.5D 게임에서는이 두 세계를 결합합니다. 다른 각도를보기 위해 카메라를 움직일 수없고 3D가 아닌 게임을 만들지 않기 때문에 명심하십시오. 이것을 결정하는 것은 그 안에있는 객체입니다.

2.5D 게임의 좋은 예는 Ragnarok Online입니다. 2.5D를 만드는 이유는 세계가 대부분 3D 객체로 훼손된 것입니다. 건물, 조경 등은 질감이있는 3D 객체입니다. 오버 헤드 카메라를 회전시키면서 동시에이 물체의 다른면을 볼 수 있습니다. 건물 앞면과 왼쪽 / 오른쪽 / 지붕 영역을 볼 수 있습니다. 그러나 플레이어는 위쪽에 서있는 것처럼 보이는 2D 스프라이트입니다. 카메라를 너무 많이 돌리면 게임에서 해당 캐릭터가 서있는 것처럼 보이는 스프라이트 시트의 다른 셀을로드해야합니다. 캐릭터가 3D가 아니기 때문에 캐릭터의 다른 각도를 볼 수 없습니다. 카메라의 시야에 따라 각도가 동적으로로드됩니다.

http://sprites.technoized.com/images/sprite/ro/gm_m.png

게임의 스프라이트 시트입니다. 방금 살펴 본다면 2D 게임에서 나온 것으로 가정합니다. 혼자, 당신은 맞을 것입니다. 그러나 일단 3D 세계에 배치되면 2.5D 게임이됩니다.


나는 2.5D단지 인간의 해석 등이 이것에 대해 기술적 인 것이 아니기 때문에 오도하는 것이라고 생각 합니다. 예를 들어 3D 환경에서 모든 것 (텍스처 쿼드 등)에 Billboard 기법을 사용 하고 있다면 항상 앞쪽에서 회전한다면 게임은 무엇입니까? 어떤 사람들은 2.5D라고 말할 수 있지만 Z- 깊이가 있기 때문에 대부분의 팩은 3D라고 말할 것입니다. 기술적으로 3D 정점 (따라서 z 차원)을 사용하면 3D이고 X / Y 만 사용하면 (예 : Super Mario bros ) 2D입니다. 그러나 3D 환경 (캐릭터 포함)에서 2D (x / y) 만 사용하는 경우 여전히 해석상 3D이지만 2.5D 입니다.

2

2.5D는 종종 "아이소 메트릭"이라고하는 또 다른 방법입니다. 2D 그래픽은 3D 모양을 나타내지 만 실제로는 3D 좌표를 시뮬레이션하지는 않습니다. 아이소 메트릭 그래픽에 관한 Wikipedia 기사를 참조하십시오 : http://en.wikipedia.org/wiki/Isometric_graphics_in_video_games_and_pixel_art

요점은 2.5D / 아이소 메트릭에서 그래픽을 계산하기 위해 x와 y 축만있는 2D 좌표계를 사용하고 있다는 것입니다. 그래픽은 단순히 2D 스프라이트 일 수 있으며 일반적으로 세 개의면을 볼 수 있도록 그려지고 (x, y) 좌표를 사용하여 화면에 배치됩니다. 때때로 스프라이트는 3D로 모델링 한 다음 여러 각도에서 3D 모델의 2D 스프라이트를 만들어서 생성되기도합니다.

움직이는 물체는 특징적으로 볼 수있는 각도가 거의 없습니다. 등각 투영 뷰에서 문자를 회전 시키면 부드럽게 회전하지 않지만 정면, 3/4, 측면 등과 같은 여러 가지 각도가 나타납니다. 각 고유 한 화각에는 완전히 새로운 스프라이트 세트가 필요하기 때문입니다.

아이소 메트릭 게임은 일반적으로이 유형의 시스템의 한계 때문에 하나의 카메라 각도 만 지원합니다. 아이소 메트릭 게임의 또 다른 특징은 일반적으로 소실점이 없다는 것입니다. 실물로 물체를 볼 때 물체가 더 가까이 있으면 물체가 시야에서 더 크게 나타납니다. 물체가 멀어지면 작게 나타납니다. 등각 투영 게임에서 모든 객체는 공간의 어디에 있든지 동일한 크기로 나타납니다.

3D 게임을 비교하면 x, y 및 z의 3 축을 모두 시뮬레이션 할 수 있습니다. 매우 낮은 수준에서 컴퓨터는 x, y 및 z를 x에서 y로 변환하여 모니터에 표시하지만, 더 높은 수준에서는 아티스트가 실제로 3 축에서 점을 조작하여 개체를 나타냅니다. 컴퓨터에는 물체의 모양에 대한 모든 정보가 있기 때문에 물체가 어떤 각도에서 보이는지 동적으로 계산할 수 있으며 물체가 가까워지면서 작아 지거나 커질 수 있습니다.

일부 게임은 2.5D와 실제 3D가 혼합되어 있습니다. 내가 생각할 수있는 예는 3D 배경과 2D 스프라이트를 특징으로하는 Disgaea 시리즈입니다.


2

더 잘 정의 된 정의가 무엇인지 잘 모르겠지만 이전 회사의 직원은 "아이소 메트릭 3D처럼 보이지만 2D 스프라이트를 통해 렌더링되는 모든 게임"을 2.5D로 간주했습니다.

이제 왜 그렇게했는지 설명하겠습니다. 일반적으로 오브젝트가 많은 3D 세계를 렌더링하면 처리에 너무 많은 압력이 가해져 FPS 수가 줄어 듭니다. 이를 극복하기 위해 일반적으로 Maya와 같은 3D 렌더링 소프트웨어에서 오브젝트를 생성하고 스프라이트로 렌더링했습니다. 게임에서 사용할 수 있습니다. 렌더링하는 동안 각도가 고려되었다는 것은 말할 것도 없습니다. 이 기술에 대해 게시자와 이야기하기 위해 일반적으로이 용어를 사용했습니다. 2D 세계처럼 보이는 3D 세계는 여전히 기술적으로 3D입니다. 따라서 일반적으로이 방법에는이 용어를 사용하지 않았습니다. 나는 여기에 내 비트를 공유해야한다고 생각했다.


1

일반적으로 "2.5-D"라는 용어는 서로 다른 두 가지 게임 스타일 중 하나를 나타냅니다.

다음 중 하나를 의미 할 수 있습니다.

1) 2D 렌더링 기술을 사용하지만 3 개의 공간 크기를 제어하는 ​​게임. 일반적으로 그래픽 트릭을 사용하여 마치 실제로 3D로 렌더링 된 것처럼 보입니다. 이것은 90 년대에 매우 흔했지만 오늘날에는 그리 많지 않았습니다. (예 : "DOOM", "Duke Nukem 3D", "Wolfenstein 3D")

2) 완전히 3D로 렌더링되었지만 하나 이상의 2D 평면을 따라 독점적으로 제어되는 게임. 이 스타일은 오늘날에도 여전히 인기가 있습니다. (예 : "Little Big Planet", "New Super Mario Bros.", "Trials HD")

한 가지 주목할 점은 모델 뷰 컨트롤러 아키텍처 패턴을 사용할 때 첫 번째 게임 스타일에는 3 차원 데이터를 나타내는 "모델"과 2 차원 사용자에게만 표시하는 "뷰"가 있다는 것입니다. 두 번째 스타일의 게임은 다른 방법입니다.


0

2.5D에서는 2D 자산 / 렌더링 기술을 사용하여 3D 환경의 느낌을줍니다.

이제 이러한 정의를 통해 다음과 같은 모호한 시나리오에서 약간의 정교함이 필요합니다.

게임 A

3D 그래픽을 사용하면 고정 카메라 각도로 GPU 가속 및 모든 (게임 오브젝트는 이미지가 아니라 메시 임) 가속됩니다. 더 나쁘게 만들면 투영은 직교, 고전적인 63.43 도입니다. 그래픽이 2D가 아니라는 것을 한 눈에 알아볼 수있는 유일한 방법은 3DGC는 매우 조심스럽게 렌더링한다는 점을 제외하고는 렌더링에 사용 된 투영과 상관없이 손으로 그리는 스프라이트와 쉽게 구분되기 때문입니다. 다른 렌더 기법, 매개 변수, 쉐이더 등을 실험 해 볼 수 있으며 3D 메시라는 사실을 숨기려 고생 할 것입니다.

게임 B

게임 A의 포트이지만 3D 그래픽을 잘 처리하지 않거나 전혀 처리하지 않는 하드웨어가있는 플랫폼을 대상으로합니다. 그런 다음 포트는 메시를 스프라이트로 교체합니다. 예를 들어 충돌에는 여전히 3D 경계 상자를 사용하고 게임 논리는 대부분 터치하지 않았거나 전혀 터치하지 않았으므로 렌더링 코드 만 변경되었으므로 오브젝트에는 x, y 및 z 값이있는 위치 속성이 있습니다.

게임 B의 스프라이트는 게임 A의 3D 에셋의 렌더링이며, 더 모호하게하기 위해 게임 A는 복잡한 쉐이더가 필요한 작업을 수행하지 않으므로 모든 GPU의 99 %에서 프레임을 게임과 구별 할 수 없습니다 게임 A의 프레임 B

2.5D에서 게임 개체 간의 상호 작용은 3D의 환상을 손상시킬 수없는 상황으로 제한됩니다. 예를 들어, 포옹하는 두 문자를 나타내려면 두 문자가 상호 작용하는 단일 이미지 파일을 만들어야합니다. 문자 당 하나의 이미지 만 사용하여 포옹 동작을 나타내는 것은 너무 어렵거나 불가능하기 때문입니다. 어쩌면 캐릭터 본체를 여러 부분으로 나눠서 올바른 순서로 그릴 수 있습니다. 3D에서는이 문제가 존재하지 않습니다 (다른 문자가 있습니다. 두 문자가 올바르게 포즈되어 다른 문자의 메시에 침투하지 않습니다).

이제 이것을 시각화하기 위해 게임 A와 B에 상황에 따라 플레이어 캐릭터가 다른 게임 객체를 통과 할 수있는 버그가 있다고 생각하면 2.5D와 3D를 쉽게 구분할 수 있습니다.


게임 B, 2.5D 렌더, 스프라이트는 위치 벡터의 z 값으로 정렬됩니다. 이 예에서 양수 z는 작동 중지되고 음수 z는 작동됩니다. z 축과 y 축은 평행하지만 z의 배율은 y의 0.5 배입니다. 보이는 영역이 10y에서 -10y이면 같은 영역에 20z에서 -20z가 있습니다. z가 더 큰 객체는 후자가 그려 지므로 z가 더 낮은 객체 앞에있는 것으로 보입니다. 그림자가 바닥보다 우수한 레이어에 있지만 다른 모든 객체보다 열등한 레이어에 있기 때문에 플레이어 캐릭터의 그림자는 이상하게 보입니다. 따라서 플레이어 캐릭터 그림자는 절대 큐브 위에 있지 않습니다.

2.5D 렌더


게임 A, 3D 렌더링. 심도 버퍼 (z 버퍼라고도 함)는 픽셀 정밀 심도 테스트에 사용됩니다. 따라서 물체가 다른 물체를 완전히 막을 필요는 없으며, 삼각형조차 다른 물체를 완전히 막을 필요가 없으며 픽셀 정밀도 심도 테스트가 있습니다. 우리는 어떤 방식 으로든 게임 오브젝트를 회전시킬 수 있으며, 상호 작용할 때 실제 결과를 얻을 수 있습니다.

3D 렌더링

이력서 : 2.5D에서 스프라이트는 다른 스프라이트의 앞 또는 뒤에 있습니다. 3D에서 메쉬는 삼각형으로 만들어 지지만 깊이를 테스트 할 때 삼각형이 최소 단위가 아니므로 픽셀 정밀도를 가질 수 있습니다. 물론 고정 된 카메라 각도에 대한 자산이 생성 되었기 때문에 2.5D에서의 카메라 회전은 불가능합니다. 반면 3D 게임에서는 카메라의 각도가 3D 게임에서 디자인에 의해 제한되는 경우 또 다른 주제입니다.


2D 그래픽 만 렌더링 할 수있을 때 3D 세계에있는 느낌을주는 여러 가지 트릭이 있습니다. 저는 버려진 프로젝트의 일부 자산을 사용하여 신속하게 제작 된 예제 만 제시했습니다.

왜 항상 3D를 사용하고 2.5D를 잊어 버리지 않습니까?

글쎄, 개발자가 왜 2.5D 접근 방식을 선호 할 수 있는지에 대한 몇 가지 예를 생각해 볼 수 있습니다.

  • 3D API (Direct3D, OpenGL, 기타가 있음)를 모르거나 좋아하지 않을 수 있습니다.
  • 대상 플랫폼이 3D 그래픽 (이전 데스크톱 컴퓨터, 2D 콘솔)을 제대로 처리하지 못할 수 있습니다.
  • 팀은 놀라운 스프라이트를 수행 할 수 있지만 3D 모델은 수행 할 수 없습니다.

2.5D를 사용하여 3D 그래픽의 결과를 대략적으로 계산할 수 있습니까?

성능 및 프로그래밍 복잡성 지평이 있습니다. 그 지평에 가까워지면 프로젝트가 2.5D로 가능한지 또는 풀 3D로 가야하는지 의심하기 시작합니다. 예를 들어, 2.5D (이론상)에서 z- 버퍼링을 사용할 수 있지만 비디오 메모리 비용을 지불 할 수 있습니까 (강력한 모바일 장치가 아닌 온보드 그래픽이있는 오래된 데스크탑 컴퓨터)? 모든 스프라이트의 z 마스크를 저장하기 위해 추가 이미지를 저장하는 데 드는 스토리지 비용을 지불 하시겠습니까?

2.5D의 좋은 후보는 RPG 게임이고 Baldur의 Gate 시리즈 또는 RTS는 Age of Empires 1과 2를 생각합니다 (AoE 3은 완전히 3D이며 쉽게 구별 할 수 있음).

유용한 참고 자료 :

Z- 버퍼링 : http://en.wikipedia.org/wiki/Z-buffering

직교 투영법 : http://glasnost.itcarlow.ie/~powerk/GeneralGraphicsNotes/projection/orthographicprojection.html

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