물리 엔진
다들 아실거라고 생각 합니다. 게임내에서 물리 연산을 한다는 것은 쉬운일이 아닙니다
동시 다발적으로 수리, 로직 연산을 필요로 하며 물리연산 알고리즘을
기반으로 하는 작업 입니다.
이것을 좀더 편하게 할려고 만들어 진것이 피직스 입니다
PhysX 란?
NVIDIA PhysX는 지금 까지 CPU가 작업해 오던 물리 연산을 GPU가 처리하는 기술 입니다.
PhysX는 대용량 병령 환경을 위해 설계된 하드웨어 가속기입니다.
AGEIA사는 PhysX 칩셋을 따로 제작하던 곳입니다
국제 게임개발자 회의(GDC)에서 공식발표를 했으며
그후 2008년 2월 13일 인수를 공식 발표 했습니다
그리고 Nvdia CEO는 CUDA 기반으로 이식할것 이라고 발표 합니다.
CUDA는 GPU에서 수행하는 병렬처리 알고리즘을 C언어와 같은 프로그래밍 언어를 사용할수 있도록 하는 기술 입니다
이떄 부터 Phys는 CUDA를 이용하게 돼었습니다.
참고로 Nvdia 최신 GPU GTX690는 코어가 3072개입니다
GPU가 물리연산을 하는것이 왜 좋은가?
게임내 물리연산은 병렬화가 되어있어 CPU보다는 GPU가 연산을 하는것이 효율 적입니다
그 Physx를 연산할 Nvdia PhysX 프로세서는 수십개의 코어를 가지고 있습니다
PhysX를 지원 하는 게임
이곳은 사진 찍는 게이머가 운영 하는 블로그 입니다
전문적인 3D 관련하는 분들이 오는 곳이 아니죠 그러니깐 이 글을 보고 있는 분들이 제일 볼것은 PhyX를 지원하는 게임, 적용시 입니다
지원 하는 게임은 대략 이렇습니다.
Mafia 2, Metro 2033, Batman Arkham Asylum & arkham city, Alice Madness Returns, Mirror's Edge 등 입니다
그 외 국내 게임으로는 Blade and soul, Tera, Club M Star 로 알고 있습니다
PhysX 기술 시현 동영상
PhysX 기술 시현 동영상 입니다
영상들의 저작권은 NVIDIA®에 있습니다
여기서 우리가 주목할것은 캐릭터의 제스쳐로 머리카락의 움직임과
배경과의 상호 작용 즉 계단을 올라갈떄 옷이 변하는 LO(Level of Detail) 입니다
예로 이걸 어쌔신 크리드 같은곳에 적용시 주인공이 어딜 올라갈때 망토가 어딘가에 걸려 찢어진 효과를 줄수 있습니다
상호작용으로 이렇게 무언가 찢어지는 효과를 연산 할수 있습니다
PhysX 적용 게임 스크린샷
결과적으로 이 글의 핵심 내용인 PhysX를 적용하면 어떤 결과가 나오는가 입니다
먼저 Alice Madness Returns 입니다.
앨리스(주인공)이 천을 지나갈떄 물리연산을 합니다
저부분에서 천은 플레이어 모델에 지나치는 정도에 따라 모양새가 변합니다점프시 치마와 머리 카락이 흔들리는걸 볼수 있습니다
이것도 Phys를 이용한 연산입니다
머리카락의 일부분만 Phys를 적용한걸로 보입니다
현재 사람의 머리카락 전부를 물리연산을 실시간으로 하는것은 무리라고 생각합니다
여기 DX11 테슬라로 구연한 머리카락 관련 영상 입니다
여기서도 머리카락과 옷이 Phys를 사용합니다
물에도 Phys에 속합니다
───────────────────────────────
두번쨰는 온라인 게임으로 보여드리겠습니다
제가 알고 있는거로는 Blade and soul, Club M Star 있습니다
BaS는 유료 게임 이라서 일단 패스하고...
남은것은 Club M Star 입니다
음...기껏 깔았더니
갑작이 머리카락만 피직스가 먹여져있습니다
원래 전작? 은 누리엔이라는 이름으로 출시 했지만 후 지원과 업데이트 떄문에 망했습니다
그 후 넷마블이 인수후 다시 출시 했습니다 그러면서 그래픽 퍼포먼스를 하향 시킨거 같습니다
Nvdia에서 제공하는 누리엔 벤치 프로그램으로 보여드려야 겠습니다
보는거와 같이 머리카락, 넥타이, 치마의 PhysX가 적용돼있습니다
움직이다가 팬티도 보실수 있습니다
캐릭터의 다리가 움직임의 따라 치마의 펄럭임이 달라집니다
아까 보셨던 LO(Level of Detail)이 적용되어있습니다
3줄 요약
PhysX는 CPU에서 처리하는 물리연산을
물리연산에 알맞는 GPU에 CUDA방식을 도입하여 연산하는 엔진이며
근대 라데온쪽에서는 쥐약 입니다
────────────────────────────────────────
PhysX에 대한 설명을 끝마치겠습니다
기술 관련 문의는 Nvdia에서 서포트를 받고 있으며
PhysX 개발자 존 링크 에서 개발자들의 노하우등을 보실수 있습니다
티스토리에 자료 옮기면서 여기도 올리기!
움직이다가 팬티도 보실수 있습니다