Posted: January 26, 2018
Version: Houdini 16
바운딩 박스(Bounding Box) 란?
3d 오브젝트의 형태를 모두 포함할 수 있는 최소 크기의 박스를 말한다.
편리함을 위해 Bounding Box 를 BBOX 라고 줄여서 부르기로 한다.
BBOX 는 두 개의 벡터값(P) 으로 정의될 수 있다.
1. min
박스를 이루는 8개 점들의 위치값중 XYZ 각축별로 가장 낮은 값을 가진 점의 P 값
2. max
박스를 이루는 8개 점들의 위치값중 XYZ 각축별로 가장 높은 값을 가진 점의 P 값
다음 그림은 각 점들의 World 좌표값인 P 를 나타낸다.
min, max 두 점을 잇게 되면 가상의 BBOX 를 정의할 수 있다.
이러한 특징은 예제를 통해 쉽게 이해할 수 있으므로 가볍게 읽고 넘어가도록 한다.
BBOX 예제
실제로 후디니 작업시 어떻게 BBOX 가 형성되는지 알아보자.
후디니를 열고 /obj 에 스피어 지오메트리를 만든다.
만들어진 'sphere1' 노드를 더블클릭하여 Geometry 레벨로 들어간다.
'sphere1' 노드에서 마우스 중간버튼을 이용해 요약 정보를 확인한다.
BBOX 를 의미하는 두가지 벡터(Min, Max) 값이 보인다.
눈에 보이지는 않지만 다음과 같은 BBOX 를 그려볼 수 있다.
이처럼 Geometry 레벨에서 모든 노드는 BBOX 정보를 가지고 있다.
'sphere1' 노드의 Radius 속성을 다음과 같이 수정한다.
다시 노드의 요약 정보를 열어보자.
스피어가 X축 방향으로 두 배가 길어진 만큼 BBOX 값도 변하게 된다.
Min X 값이 -1 에서 -2 로 바뀐다.
Max X 값이 +1 에서 +2 로 바뀐다.
위에서 'sphere1' 노드 이후에 어떤 SOP 을 연결해서 지오메트리 형태가 달라진다면 거기에 따른 BBOX 값도 계속 달라지게 된다. 물론 노드마다 요약 정보를 이용해서 BBOX 값을 확인할 수 있다.