Phaser의 아케이드, P2 및 닌자 물리의 차이점


33

나는 초보자이며 다음을 사용하여 게임 개발을 배우려고합니다. Phaser를 . 현재 Phaser는 Arcade, P2 및 Ninja의 3 가지 물리 시스템을 제공하고 있습니다. 그러나 나는 그들 사이의 차이점을 알지 못하며 특정 물리 시스템을 사용해야하는 시나리오에서 알고 싶습니다.

이 물리 시스템에 대한 통찰력을주세요.


1
Phaser는 Arcade Physics 시스템, Ninja Physics 및 P2.JS (전신 물리 시스템)와 함께 제공됩니다. Arcade Physics는 고속 AABB 충돌 전용입니다. 닌자 물리 (Ninja Physics)는 복잡한 타일과 슬로프를 허용하고 레벨 풍경에 적합하며 P2.JS는 구속 조건, 스프링, 다각형 지원 등을 갖춘 전신 물리 시스템입니다.
congusbongus

그리고 이제 P2.JS와 비슷하지만 더 나은 유료 Box2D 백엔드도 있습니다.
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

답변:


39

의견에서 언급했듯이, 그들의 사이트는 이미 세 가지 시스템이 무엇이며 어떤 시스템을 사용할 수 있는지 설명합니다.

Arcade Physics는 고속 AABB 충돌 전용입니다.

AABB는 축 정렬 경계 사각형을 의미합니다. 회전하지 않는 객체가 있고 이미지 (직사각형)가 다른 이미지와 겹치는 지 확인하므로 충돌 가능성이 있습니다. 이것은 계산하기에 싸고 빠르기 때문에 고속 충돌에 권장하는 이유 일 것입니다.

AABB의 한 가지 문제는 실제로 충돌이 있다는 것을 보증하지는 않는다는 것입니다. 완전히 투명한 영역이 겹칠 수 있습니다.

닌자 물리학은 복잡한 타일과 슬로프를 허용하며 레벨 풍경에 적합합니다 ...]

AABB가 어떻게 회전하지 않는지 기억하십니까? Ninja Physics는 회전을 처리합니다 (따라서 경사 및 복잡한 타일을 수행 할 수 있음). 이것은 더 유연하고 아마도 더 정확한 물리학 모델입니다. 아마 더 느릴 것입니다.

[...] P2.JS는 구속, 스프링, 다각형 지원 등을 갖춘 전신 물리 시스템입니다.

스프링 (예 : 진자처럼 진동하는 것), 힘에 대한 구속 조건 및 임의의 다각형 모양 (예 : 사면체)을 모델링해야하는 경우 원하는대로 들립니다. 참조 프레임을 원한다면 Angry Birds와 같은 것을 생각해보십시오.

게임에 따라 필요에 가장 적합한 것을 선택할 수 있습니다. 속도 대 정확성 / 복잡성의 스펙트럼처럼 들립니다 (아케이드 물리는 가장 빠르지 만 가장 단순합니다).


보다 정확한 모델이 한 번만 발생하면 성능이 저하됩니까?
만료 된 닌자

물론 @expiredninja입니다. AABB는 빠르고 저렴합니다. 다른 두 개는 더 복잡하고 기능이 풍부하여 (예 : 경사, 회전) 성능 비용이 발생합니다.
ashes999

나는 임계 값이 일반적으로 객체의 수 및 / 또는 복잡성 측면에서 궁금해하고 있다고 생각합니다.
만료 된 닌자

2
@expiredninja 하드웨어와 게임 로직에 크게 의존합니다. 다른 질문을 열거 나 더 나은 방법으로 질문을 시도하여 자신에게 가장 적합한 것이 무엇인지 확인해보십시오.
ashes999
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.