Abstract
This paper proposes an efficient algorithm to develop a 3D terrain tools which is essential in the development of 3D computer games. In particular, this paper proposes a cross detection technique to improve picking speed. In other words, this paper proposes a more efficient cross detection technique consisting of a ray and a parallelogram than a cross detection technique consisting of a ray and a triangle. So, we can confirm the faster picking speed. This paper uses a picking example among DirectX SDK samples to test it. In addition, this paper compares the number of function calls for cross detection using the existing techniques and the proposed technique. As a result, in this paper the proposed technique has fallen off to about a 50 percent than the existing techniques. And if it is calculated by times, in this paper the proposed technique was reduced to 1 to 2 seconds than the existing techniques. Additionally, in this paper 3D terrain tools are provide more improved algorithms for features such as texture splatting, height map control, object arrangement and realistic water effect. So, 3D terrain tools is available efficient in the development of real 3d computer games.
본 논문은 3D 컴퓨터 게임 개발에 있어서 필수적인 3D 지형 툴 개발을 위한 효율적인 알고리즘을 제안한다. 특히 본 논문은 Picking 속도를 향상시키기 위한 교차검출 기법에 대하여 제안한다. 즉, 본 논문에서는 기존의 광선과 삼각형으로 구성된 교차검출 기법보다 광선과 평행사변형으로 구성된 효율적인 교차검출 기법을 제안함으로서 보다 빠른 Picking 속도를 확인할 수 있었다. 본 논문에서 제안하는 기법이 기존의 기법과 비교하여 더 빠른 Picking 속도를 내고 있다는 것을 확인하기 위해서는 DirectX SDK의 샘플들 중 Picking 예제를 실험에 사용하였다. 또한 기존의 기법과 본 논문에서 제안하는 기법으로 교차검출을 위한 함수 호출 횟수를 비교해본 결과 본 논문에서 제안하는 기법이 기존의 기법보다 약 50% 줄어든 것을 확인할 수 있었다. 그리고 이를 시간적으로 계산해 보았을 때에는 기존의 기법보다 1~2초 정도 단축되었음을 확인할 수 있었다. 추가적으로 본 논문에서는 3D 지형 툴로서 갖추어야할 기능들 중 텍스처 스플래팅, 지형의 높낮이 조절, 객체 배치 및 사실적인 물 효과 등의 기능들을 보다 개선된 알고리즘으로 제공함으로서 실제 3D 컴퓨터 게임 개발에 효율적으로 사용가능하도록 하였다.