곡선 평면을 가진 2.5D 플랫 포머의 물리


9

XNA에서 2D 평면을 따라 이동하도록 제한되는 3D 모델을 사용하는 2.5D 플랫 포머를 만들고 있습니다 ( Trine과 동일 ).

그러나 더 까다로워지기 위해 2D 평면 자체가 구부러 질 수 있기를 바랍니다. 고려 Klonoa의 재생을 (만 10 초 동안 볼 필요) : 플레이어가 2D 평면에 있었지만, 비행기 자체 효과적으로 3D 공간을 통해 여행에 플레이어를 허용, 산의 측면 주위에 포장 할 수 - 모든 동안을 플랫 포머의 일반 2D 평면으로 제한됩니다.

이런 게임에서 물리학에 어떻게 접근해야합니까?

  • 2D 물리 엔진 또는 3D 물리 엔진을 사용해야합니까?
  • 이 상황을 염두에두고 실제로 설계된 물리 엔진이 있습니까?
  • 이것을 위해 설계되지 않은 것의 경우 : 물리 엔진이 나와 협력하도록하려면 어떤 핵이나 트릭이 필요합니까?

2
나는 '곡선'이 물리학 적 관점에서 순수한 시각적 인 것으로 생각합니다. 그것은 2D로 보입니다. 유일한 트릭은 GFX 공간으로 변환하거나 물리 공간으로 변환하는 것입니다.
감속

답변:


9

이와 같은 플랫 포머는 본질적으로 2D 플랫 포머입니다. 2.5D 효과, 심지어 산 주위의 컬링조차도 2D로 제한된 세계의 시각 화일뿐입니다. 물리 엔진은 아마도이 세상에서만 작동하고 시각화하지는 않을 것이므로 2D 물리 엔진이면 충분합니다.

즉, 일부 3D 효과에 관심이있을 수 있습니다. "Bionic Commando : Re-armed"게임에서 패배 한 적 캐릭터는 플랫폼에서 '롤'되어 래그 돌 물리를 실제로 3D로 만듭니다. 또한 대부분의 3D 물리 엔진을 사용하면 하나 이상의 축을 따라 이동을 제한 할 수 있습니다 (도로와 움직이는 캐릭터 사이에 조인트를 만드는 것과 같은 약간의 조정이 있더라도).

모든 3D 효과에 완전한 물리 엔진이 필요한 것은 아닙니다. 완벽한 3D 엔진을 사용하지 않고도 폭발 후 파편이 떨어지는 것과 같은 사소한 일에 대해 자신의 3D 구현을 코딩 할 수 있습니다.

3 차원에서 물리 계산이 필요하지 않으면 2D 엔진으로 시작하는 것이 좋습니다. 그렇지 않으면 3D 엔진을 선택하고 관련이있는 두 축에서만 계산을 제한합니다.


2

당신의 물리학이 플랫 플레이어 공간 밖에서 일어날 수 있는지에 달려 있습니다.

고스트 온라인이 말했듯이 파편과 래그 돌 애니메이션은 2.5D 게임에서 2D 물리학의 전형적인 예입니다.

또 다른 예는 총알입니다. 게임에 발사체가있는 경우 2D 공간의 곡률을 따르거나 경계를 벗어나더라도 곧장 여행합니까?

또한 실제 2D 공간을 곡선 3D 시각화에 올바르게 매핑하는 것은 (실수하면 수정) .. 쉽지 않습니다. 스플라인이 많거나 비슷한 것이 포함 된 인젝 티브 프로젝션 기능이 필요합니다.

곡선 형 2D 게임 공간을 갖는 것은 훌륭한 추가 기능이지만 코드에는 약간의 오버 헤드가 필요합니다. 그것이 Trine에 그런 것이없는 이유 일 수 있습니다. 그러나 게임은 어쨌든 재미 있지 않습니까? 그런 기능에 대해 두 번 생각합니다.

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