GPU-based Image-space Collision Detection among Closed Objects

GPU를 이용한 이미지 공간 충돌 검사 기법

  • 장한용 (고려대학교 컴퓨터학과 대학원) ;
  • 정택상 (고려대학교 컴퓨터학과 대학원) ;
  • 한정현 (고려대학교 컴퓨터학과)
  • Published : 2006.05.31

Abstract

This paper presents an image-space algorithm to real-time collision detection, which is run completely by GPU. For a single object or for multiple objects with no collision, the front and back faces appear alternately along the view direction. However, such alternation is violated when objects collide. Based on these observations, the algorithm propose the depth peeling method which renders the minimal surface of objects, not whole surface, to find colliding. The Depth peeling method utilizes the state-of-the-art functionalities of GPU such as framebuffer object, vertexbuffer object, and occlusion query. Combining these functions, multi-pass rendering and context switch can be done with low overhead. Therefore proposed approach has less rendering times and rendering overhead than previous image-space collision detection. The algorithm can handle deformable objects and complex objects, and its precision is governed by the resolution of the render-target-texture. The experimental results show the feasibility of GPU-based collision detection and its performance gain in real-time applications such as 3D games.

본 논문은 GPU를 활용한 이미지 공간 실시간 충돌 검사 기법을 설명한다. 닫힌 물체들이 충돌하지 않는 경우, 뷰잉 레이를 따라 물체의 앞면과 뒷면이 번갈아 가며 나타나는 것을 확인 할 수 있다. 그러나 물체 간 충돌이 일어나는 경우 이 현상이 깨어지게 된다. 이러한 특성에 기반하여 본 논문은 충돌 검사에 필요한 최소한의 표면 정보만 텍스쳐에 기록하여 충돌 검사를 수행하는 기법을 제안한다. 이 기법은 GPU의 framebuffer object 와 vertex buffer object, 그리고 occlusion query 등의 기능을 활용한다. 이러한 GPU의 기능을 이용하면 통상적인 이미지 기반 충돌검사에서 사용하는 multi-pass rendering 과 context switch 부하를 줄일 수 있다. 즉 기존의 이미지 기반 충돌 검사에 비해 적은 렌더링 횟수와 적은 렌더링 부하를 가진다. 본 논문에서 제안된 알고리즘은 변형체나 복잡한 물체에도 적용이 가능하며, 3D 게임이나 가상현실과 같은 실시간 어플리케이션에 적용될 수 있는 성능을 발휘한다.

Keywords