본문 바로가기
Computer/PhysX

( Havok & Physics ) | ODE

by DogBull 2008. 11. 19.
사실감 있는 게임을 위해서는 진보된 그래픽 기술뿐만 아니라 여러 가지의 다른 기술이 필요하다.
그 중 하나가 ‘물리’적인 효과를 표현하는 기술 라고 할 수 있다.
그래픽 기술은 이미 배치된 오브젝트들을 화면에 어떻게 ‘표현’할 것인가에 대한 것이라면,
물리 기술은 화면에 표시될 오브젝트들을 어떻게 ‘배치’할 것인가에 대한 답이 된다.



물리 엔진은 크게 하복(Havok)과 피직스(PhysX)엔진 그리고 ODE(Open Dynamics Engine) 3가지로 나눌 수 있다. 물리 엔진은 주로 PhysX에 대해 다룰 것이며, Havok은 PhysX와 어떻게 다른지에 대해 설명하는 방법으로 앞으로의 학습 방향을 잡도록 하겠다. (PhysX와 Havok의 일부가 공개된 상황에서 이 두 강력한 엔진의 ‘일부’ 보다 좋다고 할 수 없는 ODE에 대해서는 차후 필요 시 학습하겠다.)

2007년 9월 Intel이 Havok을 인수 한데 이어 2008년 2월 nVidia가 Ageia를 인수 한 두 상황은
게임 시장에서 물리 엔진이 차지하게 될 비중이 높아지고 있음을 증명해 주는 예이다.
인텔이 Havok엔진 구현에 사용된 멀티쓰레드 기술을 자사의 제품에 구현하려는 의도라는 것,
CPU의 멀티코어 기술에 GPU의 기능 까지 추가시키려는 경쟁사들의 전략에 대항 하려는 nVidia의 살아남기 전략,
nVidia가 Havok FX 라는 이름으로 Havok사와 손을 잡고 있었으나 Intel에 인수 되는 바람에 어쩔 수 없이 PhysX를 인수 했다는 등의 여러 글들은 인터넷 상에서 Havok vs PhysX 식으로 시작되는 제목에서 찾아 볼 수 있다.

여기에서 개발자들의 고민을 느낄 수 있다.
업계 경쟁에서 밀려 사장되어 버릴 라이브러리를 굳이 배우고 싶지 않다는 생각에 Havok과 Phys”X사이에서 고민 한다면 썩 바람직한 생각은 아닌 듯 하다.
두 라이브러리 모두 Xbox, PS 등과 같은 유명한 플랫폼에 적용되어 있고(공개 된 것은 아님) PC 상에서는 거의 무료( Havok은 9$ 미만에서는 무료 PhysX는 완전 무료) 인 것은 물론,
프로그래밍 방식에 있어서는 흡사한 점이 많은 것으로 생각되기 때문이다.
굳이 비교를 하자면, Havok는 MS의 DirectX와 같이 응용 클래스들이 수없이 많아 개발 시 매우 편리하고,
PhysX는 OpenGL과 같이 코어한 클래스들만 제공해 주므로 개발 시 어려움이 많지만 그만큼 기초에 충실 할 수 있게 된다. 작동 원리를 이해하지 못한 채 사용을 하다 보면 분명 응용에서 큰 어려움 혹은 불가능에 쉽게 부딪히게 될 것이다. 이것이 학생의 입장에서 PhysX 를 선택한 이유이다.

향후 PhysX와 Havok중 어느 것이 살아남을지(혹은 둘다 살아남는 다 하더라도, 어느 것이 훨씬 더 압도적인 시장 점유율을 차지할 지)에 대한 것은 매우 흥미 있는 일이다. ATI가 Havok과 손을 잡고 자사의 CPU에 최적화 시키겠다고 발표한 것, nVidia의 차세대 그래픽 카드 시리즈인 280, 260에 PhysX 및 CUDA를 적용하여 대대적인 홍보에 나섰다는 것. 어느 것의 성능이 뛰어난지 보다 어떤 전략이 더 우세한지 궁금하다. ( 가격대 성능비 ATI 전략, 압도적 성능 최고가격 nVidia)

'Computer > PhysX' 카테고리의 다른 글

Center Of Mass  (0) 2008.06.30
PhysX by nVidia  (0) 2008.05.09