메타볼

위키백과, 우리 모두의 백과사전.

메타볼(metaball)은 수은 액체와 같이 점을 중심으로 점성을 지니면서 형태를 이루는 차원의 등가면이다. 두 메타볼의 중심이 서로 가까워지면 상호 작용하여 물방울처럼 병합된다. 두 메타볼의 중심이 서로 멀어지면 원래의 모양으로 복원된다. 컴퓨터 그래픽에서 메타볼의 볼록한 모양은 생체와 같은 유기적인 형상을 모델링하고 기본 메시를 만드는 데 널리 사용될 수 있다.[1] 메타볼을 렌더링하는 기법은 1980년대 초 짐 블린(Jim Blinn)이 칼 세이건의 TV 시리즈 코스모스에 사용될 원자 상호작용을 모델링하기 위해 발명했다.[2]

두 개의 메타볼이 병합되는 과정.
두 개의 메타볼이 병합되는 과정.

정의[편집]

하나의 메타볼은 차원의 함수로 정의된다. 이를테면 3차원의 경우 로 정의될 수 있다. 메타볼의 표면을 정의하기 위한 임계값 를 지정하면

개의 메타볼로 정의된 표면에 대하여 점 가 해당 표면의 내부에 존재하는지의 여부를 나타내는 수식이 된다. 하나의 메타볼을 표현하는 함수 역제곱 법칙을 만족한다. 즉, 메타볼 중심에서 거리가 증가함에 따라 함수의 값은 종 모양의 곡선으로 감소한다. 3차원의 경우 이러한 상황은,

와 같이 나타낼 수 있으며, 여기서 점 번째 메타볼의 중심, 는 반지름이다. 그러나 이러한 방식은 메타볼이 분열되는 과정에서 계산에 시스템 자원이 많이 소모된다. 따라서 이를 근사하기 위한 다항식 함수가 널리 사용된다.

구현[편집]

메타볼을 화면에 렌더링하는 방법에는 여러 가지가 있는데, 3차원 메타볼을 렌더링하는 가장 일반적인 방법은 무차별 대입 광선 투사와 행진 입방체 알고리즘이다.

각주[편집]

추가 자료[편집]