Transcript ppt
Computer Game (2010, Fall) - Game Physics 엔진의 활용 지구과학교육과 이준희 목 Introduction : Physics in Games Game Physics Engine NVIDIA – PhysX Intel - Havok 하드웨어 vs. 소프트웨어 게임 물리엔진의 미래 참고문헌 차 Physics in Games(1/4) Dynamics (Rigid body / Soft body / Fluid) Collision detection Particle system Ragdoll simulation Cloth simulation Object destruction Physics in Games(2/4) Example #1 : Cloth simulation Physics in Games(3/4) Example #2 : Ragdoll simulation Physics in Games(4/4) Example #3 : Lagoa Multiphysics Click! Web Game Physics Engine(1/2) 역학 시뮬레이션 제공(강체/변형체/유체 운동) 게임 시나리오에 독립적 – 여러 게임에 적용될 수 있는 공통의 물리 연산 코드 게임 엔진의 일부로 통합되어 있거나 별도의 라이브러리로 구성 – 게임과 게임API사이의 미들웨어 하드웨어 의존성 높음 – 코드 최적화를 통한 계산 효율성이 중요 – CPU vs GPU Physics Game Physics Engine(2/2) CPU Physics – Havok(Intel) GPU Physics – PhysX(AGEIA -> NVIDIA) – Bullet(AMD) Intel – Havok(1/2) Havok에서 개발한 게임 물리엔진 – 소프트웨어 물리엔진(CPU) – Havok FX Intel – Havok(2/2) Example #1 : The Elder Scroll Ⅳ : Oblivion Click! Web Example #2 : Crysis Click! Web Example #3 : Red Faction Guerrilla Click! Web NVIDIA – PhysX(1/2) AGEIA에서 개발한 게임 물리 API – Hardware physics engine(전용 하드웨어 - PPU 필요) – NVIDIA에 AGEIA가 인수되면서 지포스 계열 VGA 지원 NVIDIA – PhysX(2/2) Example #1 : Batman Arkham Asylum Click! Web Example #2 : Cryostasis Click! Web 하드웨어 vs. 소프트웨어 PhysX – 하드웨어 종속적 – Eye-candy(By Hardware dependency) – GPU의 높은 부동소수점 연산능력에 기반해 고품질의 물리 효과 제공 가능 Havok 등 CPU Physics – CPU의 부동소수점 연산능력 부족(GPU에 비해) – 최근 발매되는 게임은 CPU연산능력의 제한이 큼 – 게임 내 상호작용의 일부가 될 수 있음 게임 물리엔진의 미래 GPU / CPU 연산성능의 발전 – Multi-Core / Higher Clock – Game Performance에 덜 영향을 끼치면서 보다 나은 효과 게임 내 환경과의 상호작용 강조 범용 3D Graphics API(DX, OpenGL 등)에 통합 – DirectCompute – OpenCL 참고문헌 David H. Eberly(유채곤/차미리 역)(2004). 게임 물리 바이블(Game Physics 한국어판). 사이텍 미디어 하유종, 박경주(2009). 물리 엔진에 관한 고찰 : 실시간 물리 기술을 중심으로. 한국 게임학회 논 문지 제9권 제5호. http://www.behardware.com/articles/622-1/preview-ageia-physx.html http://www.havok.com/index.php?page=havok-physics http://en.wikipedia.org/wiki/Game_physics http://en.wikipedia.org/wiki/Havok_(software)