컴퓨터 공학

4.2 AABB

혼새미로 2015. 11. 26. 02:52
반응형

AABB는 가장 흔히 사용되는 경계 용량중 하나입니다. 이것은 직사각형 6면을 가진 상자입니다.(각각의 면의 법선벡터는 x,y,z축에 각각 평행합니다.) 최고장점은 빠른 겹침검사를 한다는것, 이것은 간단하게 개인좌표계로 비교할수 있습니다.

  AABB를 나타내는 3개의 방식이 있습니다. 첫번째는 최소점,최고점을 설정하여 검사하는것입니다.

 

struct AABB {

Point min;

Point max;

};

 

이 표현은 min과 max사이에 있는 공간에 대해서 검사를 합니다. 또다른 표현은 최소점과 x,y,z의 길이를 설정하는 것입니다.

 

struct AABB{

Point min;

float d[3];

};

 

마지막 표현은 중앙에 점 C가 있고, x,y,z의 반지름을 적는것입니다.

 

struct AABB{

Point c;

float r[3];

};

 

저장공간에서는 중앙-반지름 표현이 가장 효율적입니다(반직선 값은 아주 적은 비트를 사용하므로)

  최소점-길이 표현 또한 길이값은 적은 비트를 씁니다. 최악의 방법은 최소-최고점 표현이고, 이것은 6개의 값이 모두 정확한 값을 가져야 합니다. 저장공간은 줄이기 위해서 integer를 사용해야 합니다. 만약 객체가 움직인다면, 후자의 2개의 표현은 갱신하기에 효율적입니다. 중앙-반지름 표현의 큰 특징은 경계 구와 비슷하게 검사할수 있다는 것입니다.

반응형

'컴퓨터 공학' 카테고리의 다른 글

4.2.2 계산 및 갱신 AABB  (0) 2015.11.26
4.2.1 AABB-AABB 교차  (0) 2015.11.26
4.1 바람직한 경계용량의 특징들  (0) 2015.11.26
경계 용량  (0) 2015.11.26
충돌검사관련 책을 번역하여  (0) 2015.11.26