물리학 추상화 계층
Physics Abstraction Layer![]() | |
![]() | |
개발자 | sourceforge |
---|---|
기록 위치 | C, C++ |
운영 체제 | 크로스 플랫폼 |
유형 | 미들웨어 |
면허증 | 세 조항 BSD 라이센스 |
웹사이트 | www |
물리 추상화 계층(PAL)은 오픈 소스 교차 플랫폼 물리 시뮬레이션 API 추상화 시스템이다.이것은 물리 엔진 포장지와 비슷하지만, 확장된 능력을 제공하는 것이 훨씬 더 유연하다.PAL은 BSD 라이선스에 따라 출시되는 무료 소프트웨어다.
PAL은 게임, 시뮬레이션 시스템, 그리고 다른 3D 어플리케이션에 사용되는 낮은 수준의 물리 엔진들을 위한 높은 수준의 인터페이스다.그것은 단단한 차체, 액체, 부드러운 차체, 래그돌 및 차량 동력학을 포함한 많은 동적 시뮬레이션 방법론을 지원한다.PAL은 간단한 C++ API와 직관적인 객체(예: 솔리드, 조인트, 액추에이터, 센서, 재료)를 특징으로 한다.또한 COLADA, Scythe Physics Editor, XML 기반 파일 저장 기능도 갖추고 있다.
물리 추상화 계층은 물리 엔진을 직접 사용하는 것보다 많은 이점을 제공한다.
- 유연성 – 개발자는 새로운 엔진을 신속하게 테스트할 뿐만 아니라 어떤 엔진이 필요한지 확인하기 위해 서로 다른 물리 엔진 사이를 전환할 수 있다.
- 휴대용 – 개발자는 다양한 플랫폼에 최고의 성능을 제공하는 물리 엔진을 사용할 수 있으며 플랫폼 독립 코드를 작성할 수 있다.
- 보안 – 미들웨어 공급자를 다른 회사에 인수하거나 개발이 중단된 경우 개발자는 엔진을 전환할 수 있다.
- 확장 가능 – 추상화 계층을 통해 개발자는 최대 슈퍼컴퓨터까지 휴대용 콘솔 플랫폼에서 코드를 실행할 수 있다.
- 사용 편의성 – 물리 엔진의 구현 세부 정보를 추상화하여 개발자에게 보다 깨끗한 인터페이스를 제공한다.
- 벤치마킹 – 연구자는 다양한 동적 시뮬레이션 시스템의 성능을 직접 비교할 수 있다.
PAL은 플러그형 추상 팩토리로 설계돼 코드를 한 번 쓰고 컴파일할 수 있으며 다양한 물리 엔진의 런타임 선택과 기능 업그레이드가 가능하다.
지원되는 엔진
PAL은 다음을 포함한 다중 물리 엔진을 지원한다.
- 박스2D
- 총알
- 뉴턴 게임 다이내믹스
- 오픈 다이내믹스 엔진
- PhysX(이전의 NovodeX 및 Meqon 통합)
- 토카막 물리 엔진
지원되는 파일 형식
PAL은 다음을 포함한 여러 파일 형식을 지원한다.
- 콜라다
- Scythe Physics 편집기 파일 형식
- XML
벤치마크
PAL 프로젝트는 개발자들이 물리 엔진을 직접 비교하고 컴퓨터 효율과 물리적 정확도 면에서 최고의 솔루션을 제공하는 엔진을 선택할 수 있는 표준 벤치마크 세트를 제공한다.PAL이 지원하지 않는 방식으로 엔진을 조정할 수 있으므로 실제로 사용할 엔진을 결정할 때는 주의해야 한다.