SOP 바운딩 박스

눈에 보이지는 않지만 작업시 중요한 역할을 하는 바운딩 박스에 대해서 알아보자.

Posted: January 26, 2018
Version: Houdini 16

바운딩 박스(Bounding Box) 란?

3d 오브젝트의 형태를 모두 포함할 수 있는 최소 크기의 박스를 말한다.

테스트 오브젝트 Pig Head 의 Bounding Box

테스트 오브젝트 Pig Head 의 Bounding Box

 

편리함을 위해 Bounding Box 를 BBOX 라고 줄여서 부르기로 한다.

BBOX 는 두 개의 벡터값(P) 으로 정의될 수 있다.

1. min

박스를 이루는 8개 점들의 위치값중 XYZ 각축별로 가장 낮은 값을 가진 점의 P 값

 

2. max

박스를 이루는 8개 점들의 위치값중 XYZ 각축별로 가장 높은 값을 가진 점의 P 값

 

다음 그림은 각 점들의 World 좌표값인 P 를 나타낸다.

min bbox: 값이 가장 낮은 빨간점의 P값 (-0.5,-0.5,-0.5)

min bbox: 값이 가장 낮은 빨간점의 P값 (-0.5,-0.5,-0.5)

max bbox: 값이 가장 높은 초록점의 P값 (0.5,0.5,0.5)

max bbox: 값이 가장 높은 초록점의 P값 (0.5,0.5,0.5)

 

min, max 두 점을 잇게 되면 가상의 BBOX 를 정의할 수 있다.

SOP_bbox_4.jpg
이러한 특징은 예제를 통해 쉽게 이해할 수 있으므로 가볍게 읽고 넘어가도록 한다.

BBOX 예제

실제로 후디니 작업시 어떻게 BBOX 가 형성되는지 알아보자.

후디니를 열고 /obj 에 스피어 지오메트리를 만든다.

SOP_bbox_5.jpg

 

만들어진 'sphere1' 노드를 더블클릭하여 Geometry 레벨로 들어간다.

'sphere1' 노드에서 마우스 중간버튼을 이용해 요약 정보를 확인한다.

SOP_bbox_6.jpg

 

BBOX 를 의미하는 두가지 벡터(Min, Max) 값이 보인다.

눈에 보이지는 않지만 다음과 같은 BBOX 를 그려볼 수 있다.

SOP_bbox_9.jpg

 

이처럼 Geometry 레벨에서 모든 노드는 BBOX 정보를 가지고 있다.

'sphere1' 노드의 Radius 속성을 다음과 같이 수정한다.

SOP_bbox_7.jpg

 

다시 노드의 요약 정보를 열어보자.

SOP_bbox_8.jpg

 

스피어가 X축 방향으로 두 배가 길어진 만큼 BBOX 값도 변하게 된다.

Min X 값이 -1 에서 -2 로 바뀐다.

Max X 값이 +1 에서 +2 로 바뀐다.

SOP_bbox_10.jpg
위에서 'sphere1' 노드 이후에 어떤 SOP 을 연결해서 지오메트리 형태가 달라진다면 거기에 따른 BBOX 값도 계속 달라지게 된다. 물론 노드마다 요약 정보를 이용해서 BBOX 값을 확인할 수 있다.