Journal of the Korea Computer Graphics Society
The Korea Computer Graphics Society
Article

젖은 헤어에서 분사된 액체의 움직임을 표현하기 위한 FLIP 해법과 헤어의 결합 프레임워크

김종현1,*https://orcid.org/0000-0003-1603-2675
Jong-Hyun Kim1,*https://orcid.org/0000-0003-1603-2675
1강남대학교
1Kangnam University
*corresponding author: Jong-Hyun Kim/Kangnam University(jonghyunkim@kangnam.ac.kr)

© Copyright 2019 Korea Computer Graphics Society. This is an Open-Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/4.0/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

Received: Jun 17, 2019; Revised: Aug 01, 2019; Accepted: Aug 31, 2019

Published Online: Sep 01, 2019

요약

본 논문에서는 젖은 헤어나 털에서 분사되는 액체의 디테일한 움직임을 표현할 수 있는 새로운 프레임워크를 제안한다. 젖은 헤어에서는 모발의 마찰력과 접착력 뿐만 아니라, 액체의 움직임도 마른 헤어에 비해 독특한 움직임을 갖는다. 하지만, 최근에 제안된 기법들도 모발의 접착력과 마찰력만을 고려했으며, 젖은 헤어에서 분사되는 액체의 움직임은 개선시키지 못했다. 이 문제는 헤어와 유체의 상호작용에서 표현되는 디테일한 특징을잡아내지 못하기 때문에 결과의 품질을 저하시키는 원인이 된다. 본 논문의 주안점은 이 문제를 완화시켜 결과의 품질을 개선시키는 것이며, 결과적으로 FLIP(Fluid-implicit particle) 기반 유체 시뮬레이션과 헤어 입자 간의 상호작용을 효율적으로 표현할 수 있는 결합 프레임워크를 제안한다. 제안하는 방법은 이전 연구들에서 표현하지 못했던 곡선 형태로 분사되는 액체의 디테일한 움직임을 젖은 헤어 프레임워크에서 표현해냈다.

Abstract

In this paper, we propose a new framework that can express the detailed movement of liquid sprayed from wet hair or fur. In wet hair, not only the friction and adhesion of the hair but also the movement of the liquid has a distinctive motion compared to the dry hair. However, the recently proposed techniques only considered the contact force and friction of the hair and did not improve the movement of the liquid dispersed in the wet hair. This problem is detrimental to the quality of the result because it does not capture the detailed features expressed in the interaction of hair and liquid. The main point of this paper is to alleviate this problem and improve the quality of the result. As a result, we propose a combining framework that can efficiently express FLIP (Fluid-implicit particle) based fluid simulation and interaction of hair particles. The proposed method expresses the movement of the liquid sprayed in a curved shape which was not expressed in previous studies.

Keywords: 젖은헤어; 분사된 액체의 움직임; 헤어 시뮬레이션; 결합 기법
Keywords: Wet hair; Spary motion of hair; Hair simulation; Coupling method

1. 서른

헤어 동역학은 사람의 헤어나동물의 털을 표현함에서 있어서 중요한시각적인 특징을 갖고 있기 때문에 컴퓨터 애니메이션 분야에서 꾸준히 연구되어 왔다 [1, 2, 3, 4, 5]. 유체 시뮬레이션에서는 물, 불, 연기 뿐만 아니라 날씨의 변화, 공기의 흐름 등 다양한 분야에서 활발하게 연구되어 왔다 [6, 7, 8, 9]. 해어와 유체의 상호작용에 관련된 연구의 진행은 아직 초기 단계이며, 최근에는 이런 분야를 연구하고자 몇 가지 기법들이 제안되었지만 대부분 젖은 헤어의 현상에 그 초점이 맞춰져 있다 [10,11, 12, 13, 14].

헤어와 액체 사이의 상호작용은 다양한 공간적 스케일에서 표현되는 물리현상이며, 최근에 Fei와 Maia는 이 문제를 풀어냄으로써 헤어와 액체 사이의 상호작용 결과를 개선시 켰다 [14]. 헤어가 액체 수중에 완전히 잠기면 헤어는 일종의 다공성 매 질(Porous material)처럼 해동하고 주변 흐름에 항력 (Drag force)을 전달하게 된다. 물속에서 벗어나게되면 머리카락은 그 표면에 일정 량의 액체를 보유하고, 그 다음 머리카락 가닥을 따라 흐르고 결국 떨어지게 된다. 한편, 젖은 머리카락은 머리카락 충돌 뿐만 아니라, 액 체 다리(Liquid bridge)의 표면 장력에 의해 젖은 머리카락들 사이에서 서로 상호작 용을 하게 된다. 또한, 뭉친 머리카락이나 동물의 털에 의해 액체는 곡선 형태를 띄면 분사되 게 된다 (see Figure 1). 그림에서 보듯이 동물의 털이나 사람이 머리카락이 젖게되면 뭉친 형태에서 액체가분사되기 때문에 곡선과 같은 움직임이 포착 된다. 하지만, 대부분의 해어-유체 상호작용 기술들이 헤어의 특징에만집중되어 있고유체의 디테일한움직임에 대해서는 만족할만한 결과를 만들어내지 못했다.

jkcgs-25-4-1-g1
Figure 1: Curved spray motion of liquid by wet hair or fur.
Download Original Figure

이러한 한계점을 개선시키고자 본 논문에서는 젖은 헤어에 의해 곡선 형태로 움직 이는 유체의 디테일한 상호작용 효과를 시뮬레이션하는 새로운 프레임워크를 제 안한다. 우리는 액체 시뮬레이션을 표현하기 위해 FLIP 해법을 이용하였으며 [15], 해어 시뮬레이션은 DFTL(Dynamic follow-the-leader) 해법을 이용하였다 [16].

2. 관련 연구

컴퓨터 그래픽스 분야에서 해어 시뮬레이션의 연구는 Ward 등 [17]과 Hadap 등 [1]의 연구를 시작으로 많은 발전을 이루었다. 최근에는 머리카락의 길이가 늘어나지 않도록 제어하는 연구와 [18, 16], DER(Discrete elastic rod) [19] 프레 임워 크를 이용하여 위치 기반 동영학(PBD, Posi仕on-based dynamics) 과 통합하려는 연구도 진행되었다 [20, 21, 22]. Iben 등은 곱 슬 머리를 표현할 수 있는 기법을 제안했고 [5], Kaufman 등 은 [22] 비선형 적분 방법과 가우스 자이델 충돌 해법을 통합 하여 머리카락 사이에서 발생하는 충돌 처리 성능을 개선시 켰다. Gornowicz와 Borac은 충돌처리를 좀 더 안정적으로 처리하기 위한 하이브리드 입자-격자 알고리즘을 제안했다 [23]. 머리카락의 기본적인 움직임을 시뮬레이션하기 위해 본 논문에서는 DFTL 프레임워크를 이용하였고, 젖은 헤어와의 상호 작용 과정에서 분사되는 디테일한 유체의 움직을 모델링한다.

Rungjiratananon 등은 [10] 모발 내부에 유체를 전파시 키기 위해 다공성 유동(Porous flow) 접근법을 사용하여 SPH(Smoothed particle hydrodynamics) 기반 액체와 헤어 입자를 양방향으로 상호작용 할 수 있는 프레임워크를 제안했다. 그들은 헤어를 감싸고 있는 경 계 상자를 정규 격자화하여 다공 성 유동 모델을 이 산화하였고, Lenaerts 등이 [24] 제안한 SPH 기반 다공성 유동 기술을 적용시 켰다. Rungjiratananon의 방법에서는 인접한 머리카락 사이에 스프링과 같은 부착력을 사 용하여 젖은 머리카락 응집력을 계산하였다. Lin 등은 [12, 25] 유사한 다공성 모델을 제안했지만, SPH와DER 모델을 사용하 여 양방향으로 헤어와 유체가 상호작용 할 수 있는 새로운 프레임워크를 제시했다. 그들은 또한 물 속에서의 모발에 대한 부착력을 추가적으로 모델링했다. 위에서 언급했듯이 헤어와 액체의 상호작용을 표현하기 위한 다양한 방법들이 연구되어 왔지만 대부분 젖은 헤어의 특징 만들 고려하였다.

Lee 등은 헤어와 액체의 상호작용 기술을 제안했다 [26]. 이 들은 메쉬의 표면을 다면체(Tetrahedra) 메쉬로 근사하여 운동 량을 계산하였고, 이를 통해 헤어와 동물의 털을 사실적으로 표현하였다. 추가적으로, 액체와 헤어의 상호작용 기술도 제안하였지만 젖은 헤어나 털에서 표현되는 응집력과 접착력만을 모델링하였다. 이 뿐만 아니라, 헤어의 모델링과 스타일을 쉽게 제작할 수 있는 기법도 제안되었다 [27]. 기존의 해어 메쉬 기법을 [28] 개선하여 각각의 머리카락을 다양한 스타일의 헤어로 모델링할 수 있도록 Clustering과 Growing 기법을 제안 했다.

대부분의 연구들이 젖은 헤어의 특징에 만 집중한 연구들이며 본 연구에서는 액체-해어의 상호작용 결과를 개선시키기 위해, 곡선 형태로 액체의 분사를 표현할 수 있는 새로운 방법에 대해 소개 한다.

3. 제안하는 프레임워크

3.1 액체 시물레이션

영상특수효과에서 사용하는 복잡한 유체의 움직임은 아래와 같은 Navier-Stokes 방정식으로 표현할 수 있다.

ρ ( v t + v . Δ v ) = Δ p + ρ g + μ Δ 2 v
(1)

위 수식은 유체의 운동을 기술하는 편미분 방정식이며, 여기서 v는 유체의 속도, ρ는 밀도, p는 압력, g는 중력과 같은 외력을 나타낸다. 위 수식은 유체의 운동량을 나타내며, 수식을 풀게되면 물, 불, 연기와 같은 유체의 움직임을 계산할 수 있다. 편미분을 풀기 위한 방법에 는 MAC(Marker and cell) 격자 방식을 이용하는 Eulerian 접근법, SPH(Smoothed particle hydrodynamics) 방식을 이용하는 Lagrangian 접근법, PIC(Particle in cell), FLIP(Fluid implicit particle) [15] 방식을 이용하는 Hybrid 접근법들이 있으며, 본 논문에서는 FLIP을 이용한다 (Equation 2 참조).

u ( x ) = i m i u i W i i m i W i ,
(2a)
u = 0 ,
(2b)
u f l i p = ( u i n + u ( p i ) u ( p i ) ) + ( 1 σ f l i p ) u ( p i )
(2c)

FLIP은 Zhu과 Bridson에 의해 제안되었으며 격자상에서 계산된 유체의 압력을 입자가 직접 가지고 움직이기 때문에 수치손실 없이 디테일하게 유체의 움직임을 표현할 수 있는 기법이다 [15]. FLIP기법에서는 SPH기법과는 다르게 인접 입자 들을 탐색하지 않고, 입자들의 중간 속도를 격자에 투영하여, 중간 속도장 u*를 계산한다. 이 중간 속도장에서 압력을 계산 하고 비압축성을 만족하는 속도장 u를 계산한다. 그리고 이 두 속도장 사이에 발생하는 차이 인 u* - u가 바로 선형 보간에 의한 오차값이기 때문에 이 값을 입자의 속도에 더함으로써 보간에 의한 에러를 보정해주게 된다 (Equation 2 참조).

3.2 헤어 시물레이션

본 논문에서는 실시 간 탄성 체를 표 현할 때 자주 사용되는 PBD를 이용하여 헤어의 기본적인 움직임을 표현한다 [16]. PBD는 업데이트된 현재 위치로부터 다음 스텝의 새로운 속도를 예측 하여 안정적으로 다음 스텝의 위치를 결정한다. 헤어 입자의 위치 x와 속도 v가 주어지면, 이 알고리즘은 아래 절차에 따라 헤어 입자의 속도와 위치를 계산한다.

p x + Δ t v + Δ t 2 f
(3)
p Solve Constraints ( p )
(4)
v p x Δ t
(5)
x p
(6)

여기서 Δt는 타임 스텝이며, f는 외력이다. 모발의 초기 길이를 유지 시켜주기 위한 제약조건인 SolveConstraints(p) 함수는 PBD 기반의 DFTL 프로젝션 알고리즘을 이용하였다[16]. Figure 2는 DFTL기법을 기반으로 구현된 모발 하나를 시뮬레이션한 결과이며 큰 동작에 대해서도 안정적으로 모발의 움직임을 표현했다.DFTL 프로젝션은 각 모발이 갖고 있는 헤어 입자들 중 루트 입자를 제외한 2번째 입자에서 입자η번 째 순서대로 처리한다. 본 논문에서는 헤어 입자들 간의 거리가 초기 길이를 유지 하도록 헤어 입자들의 속도와 길이를 제어 한다. 결과적으로 하나의 헤어 입자위치가 결정되면, 이후의 입자들도 같은 방식으로 업데이트한다.

jkcgs-25-4-1-g2
Figure 2: A strand simulation.
Download Original Figure

Figure 2는 하나의 머리카락을 시뮬레이션한 결과이다. 강한 외력에도 불구하고 질량-스프링(Mass-spring)기반의 접근법에 비해 모발의 길이가 늘어나지 않고 안정적으로 표현했다. 본 논문에서는 헤드뱅이나 젖은 털을 털었을 때 표현되는 액체의 움직임을 표현하고자 하기 때문에 강한 외력에도 안정적으로 시뮬레이션되는 기법이 필요했으며 질량-스프링 기반 접근법에 비해 DFTL기법 이 안정적으로 수행 되기에 이 기법을 헤어 시뮬레이션의 해법으로 사용하였다.

3.3 젖은 헤어와 유체의 상호작용에 의한 분사된 액체의 움직임

본 논문에서는 젖은 헤어에서 분사되는 액체를 표현하기 위해 입자-격자 기반의 FLIP 해법을 이용하며, 젖은 헤어에서 표현되는 응집력이나 강성 효과는 Kim 등이 제안한 방법을 이용하 였다 [13]. 이 기법은 실제 액체와의 상호작용은 다루지 않았 으며 이미 젖은 헤어라고 간주하고 젖은 헤어의 응집력 Fij*를 아래와 같이 모델링 했다 (Equation 7 참조).

F i j * = F i j s u r f a c e + F i j a d h e s i o n
(7)

여기서 FijadhesionFijsurface는 각각 젖은 헤어의 자착력과 표면적을 최소화하기 위한 힘이다. Equation 8a에서 γ는 헤어 입자가 갖는 응집력의 크기이며, 머리카락의 루트부분에서 끝 단으로 갈 수록 잘 뭉치도록 함수의 커널 형태가 모델링했다. 젖은 헤어의 표면적 최소화는 아래와 같은 수식을 이용하여 계산한다 (Equation 8 참조).

F i j s u r f a c e = γ ( l i ) m i ( n i n j ) ,
(8a)
γ ( l ) = O ( l ) 3
(8b)
O ( l ) = clamp ( ( l σ min σ max σ min ) , 0 , 1 )
(8c)

Equation 9a에서 δε은 자찰력계수와 헤어 입자 ij의 평균 유체 포화도이며, C(r)는 스플라인 함수 기반의 커널이다 Equation 9b,c에서 h는 커널의 반지름이며, R은 헤어 입자 ij의 반지름의 합인, R = ra + rb를 나타낸다. 이 커널 값은 헤어 입자간의 거리가충돌 거리인 R보다 클때부터 점진적으로 증가하여, h2 일 때 가장 큰 값을 가지게 된다.

F i j a d h e s i o n = δ C ( | x i x j | ) x i x j | x i x j | ,
(9a)
C ( r ) = 32 h 9 { ( h q ) 3 q 3 r > R r h 0 o t h e r w i s e . ,
(9b)
q ( r ) = ( r + h 2 R ) R h
(9c)

Figure 3은 회전하는 구에서 젖은 헤어의 움직임을 관찰한 결과이다. 마른 헤어에서는 흩날리는 움직임이 나타나는 반면, 이 결과는 구가 빠르게 회전함에도 불구하고 젖은 헤어의 특징인 응집력을 잘 표현했다.

jkcgs-25-4-1-g3
Figure 3: Wet hair animations using Equation 7.
Download Original Figure

우리는 젖은 헤어에서분사되는 액체를표현하기위해헤어 입자들의 속도 v를 격자에 투영하여 비압축성속도장을 계산 한다 (Equation 10 참조).

u v * ( x ) = i m i v i W i η ( v ) i m i W i ,
(10a)
η ( v ) = 1 1 + e v + φ
(10b)

우선 Equation 10a를 이용하여 헤어 입자들로부터 격자의 속도를 계산한다. 여기서 η (||v||)는 모발의 움직임에 따라 다르게 적용되는 커널이며,Equation 2에서 가중치가 추가된 형태이다 (Equation 10b 참조).

Figure4는 모발의 루트에서 팁까지 다르게 적용되는 커널의 크기를 시각화한 결과이며,여기서 φ를 조절하여 액체의 곡선 운동에 영향을 줄 수 있는 범위를 조절할 수 있다. 위 결과에서는 φ를 14로 설정하였으며,차트에서 보듯이 14 이후의 값에서는 급격하게 가중치 값이 증가되는 것을 볼 수 있다. X축인 헤어 입자의 인텍스는 루트에서 팁 인 모발의 끝으로 갈수록 증가하는 구조이며,결과적으로 찰랑거 리는 모발의 움직임이 강하게 나타나는 모발의 끝부분이 액체의 곡선 운동에 영향을 강하게 준다. Figure 4에서 위에 있는 그림은 가중치 값이 0보다큰 곳을 표현한 결과이며,아래 그림은 가중치가 증가되는 영역에서부터 크기에 따라 색을 표시한 결과이다. 이 그림에서 빨간색 일수록 강한 가중치 값을 의미하며,φ 값이 작을 수록 가중치가 중가되는 영역이 넓어지므로 결과적으로 모발의 곡선 운동에 더 강한 영향을 주게된다. 여기서 가중치가 증가되는 영역이 넓어진다는 의미는 모발의 끝이 아닌,모발의 루트에서부터 영향을 주도록 설정할 수 있다는 것을 의미하며, 이 영역은 사용자가 쉽게 제어 할 수 있다.

jkcgs-25-4-1-g4
Figure 4: The shape of weighting function inside the kernel η (φ : 14, X-axis : index of hair particle, Y-axis : weight value).
Download Original Figure

uv*(x)는 격자상에서의 속도를 의미하며,vi는 헤어 입자의 속도이고,Wi는 헤어 입자가 x의 위치에 영향을 미치는 가중치로써 Gaussian 함수 기반으로 가중치 값을 계산하며,Equation 2a에 의해 격자에서의 속도장이 계산된다. uv*(x)가 계산되면,본 논문에서는 이 속도장을 Naiver-Stokes 방정식에 외력인 f에 추가하여,프로젝션 과정을 거쳐 비 압축성이 적용된 속도장인 u (x)를 얻어 낸다 (Equation 11 참조).

u t + ( u ) u + p / ρ = f ,
(11a)
u = 0
(11b)

본 논문에서는 비압축성을 나타내는 Equation 11b를 만족 시키기 위해 Chorin의 프로젝션 기법을 적용했고 [29], Equation 11a를 두 개의 수식으로 분해하여 계산했다 (Equation 12 참조).

u * u n t = ( u n ) u n + f ,
(12a)
u n + 1 u Δ t = p ρ
(12b)

여기서 un으로부터 un+1을 얻기위해 먼저, Equation 12a에서 — (un · Λ) unf를 계산한 후, u*를 계산하고, Equation 12b에서는 u*로부터 비압축성을 만족하는 un+1를 계산한다. 본 논문에서는 하이브리드 해법 인 FLIP을 사용하기 때문에 마지 막으로 Equation 2c를 이용하여 유체 입자를 속도를 계산한다. 여기서 (uin+u*(pi)u(pi)) 항을 통해 프로젝션 전/후의 속도 차이를 계산할 수 있고, 얼마큼의 속도를 적용해야만 비 압축성을 유지 할 수 있는지 알 수 있으며, 이를 통해 Divergence-free 한 유체의 움직임을 표현할 수 있다.

4. 구현

본 논문은 다음과 같은 환경에서 구현되었다 : 인텔 i7-770k 4.20GHz CPU 32GB RAM, NVIDIA GeForce GTX 1080 Ti 그래픽 카드. 헤어 시뮬레이션은 DFTL기법을 사용하였고 [16], FLIP기반 해법을 기반액 체(Underlying water) 시뮬레이션으로 사용하였다 [15]. 유체의 압력을 계산하는 수치적 행렬해법은 GPU 기반 선조건 적용 켤레 기울기법(Preconditioned conjugate gradient) 방법을 이용하였다 [30]. FLIP 격자의 경우 모든 운동량은 Staggered Marker-and-Cell 방법을 사용해 저 장했으며 [31], 표면 재복원을 위해 격자를 추가적으로 사용하였다.

5. 결과

본 논문에서는 제안하는 기법을 다양한 방면으로 분석하기 위해 3가지 시나리오로 비교해보았다.

먼제 제안하는 기법의 우수성을 입증하기 위해 간단한 테 스트 시나리오로, 구형 객체에 헤어 입자들을 추가하여 위/아 래로 움직 이는 장면을 제작했다. Figure 5에서 유체와 헤어를 표현하기 위해 타임 스텝을 0.006으로 설정하고, 약 22만개의 유체 입자와 15만개의 헤어 입자를 사용하였다.

jkcgs-25-4-1-g5
Figure 5: Quality comparison between (a) our method and (b) previous method [14].
Download Original Figure

헤어와 유체의 상호작용 기법은 최근에 제안된 Fei와 Maia가 제안한 기법과 비교하였다 [14]. Fei의 기법은 젖은 헤어의 응집력과 유체의 움직임을 훌륭하게 표현하였지만, 그 초점이 젖은 헤어의 특징을 잡아내려 했기에 오히려 유체의 움직임은 디테일이 떨어지는 결과를 보였다. 우리는 젖은 헤어에서 분사되는 유체의 동적인 움직임을 관찰하게 위해 모발이 생성되 어 있는 구형 객체를 위/아래와 강하게 움직 였다. 젖은 모발이 뭉치게되면, 뭉친 형태를 유지하면서 물이 떨어지는 특징이 있는데 이전기법과 비교했을 때 제안하는 기법은 이 특징을 잘 표현했다 (Figure 5a 참조). 또한, 구형 객체가 위에서 아래로 방향을 바꾸는 순간 모발의 방향도 바뀌고 되고, 그로 인해 젖은 모발에서 분사되는 유체 또한 위로 튀어오르는 현 상이 발생하게되는데 이전 기법에서는 이러한 특징을 제대로 캡처하지 못했다. 그에 비해, 제안하는 기법은 이러한 특징을 잘표현하였고, Figure 5a에서 보듯이, 액체가위로 튀어오르는 결과를 쉽게 확인할 수 있다.

Figure 6Figure 5의 장면에 흡수 맵(Absorption map)을 추 가한 결과이다. 그림에서 모발의 색상은 빨간색일 수록 물을 흡수한 양이 큰것이며, 파란색일수록 마른 헤어로 변화하는 과정을 보여주는 결과이다. 헤어의 움직임에 따라 젖은 해어가 마른 헤어로 변화하는 것은 Fie의 기법을 사용하였으며 [14], 나머지는 제안한 방법을 이용하여 상호작용한 결과이다. 노란색으로 표시한 부분에서 보이듯이 물이 흡수가 남 아있는 젖은 모발의 경우 유체가 뭉친 모발의 형태에 맞게 분사되는 결과를 보이는 반면, 마른 모발 영역에서는 물이 분사 되지 않는 결과를 잘 보여준다.

jkcgs-25-4-1-g6
Figure 6: Simulation results of hair with water absorption (inset image : colored by absorption).
Download Original Figure

Figure 7은 구형 객체를 반구 형태로 회전시켜 그에 따른 젖은 헤어과 그로 인해 분사되는 유체의 결과를 관찰하기 위한 결과이다. 앞에서 보여준 결과에 비해 명확하게 곡선형태의 움직임이 잘 보이는 결과이다. Figure 7a는 제안한 방법을 이용한 결과이며 유체의 움직임이 젖은 머리카락의 움직임과 유사한 곡선 형태를 유지하지는 것을 볼 수 있다. 그에 비해, 이전 기법은 중력방향으로 떨어지는 물방울 움직임을 잘 표현하지만, 이 장면처럼 곡선 형태로 움직이는 결과에 대해서는 좋지 않은 결과를 만들어 냈다 (Figure 7b 참조).

jkcgs-25-4-1-g7
Figure 7: Quality comparison between (a) our method and (b) previous method [14].
Download Original Figure

Table 1은 본 논문에서 실험 한 시뮬레이션 환경을 측정한 값이며, 이전 기법과 비교했을 때 결과품질에 대한차이가명확 하게 나타난다는 점에서 제안하는 기법의 우수성을 다시 한번 확인할 수 있다.

Table 1: Size of our example scenes (Num. : number, Grid res. : grid resolution).
Fig. Num. of strands Num. of particles per strand Num. of water particles Grid res. for FLIP solver Grid res. for surface tracking
5 2,182 70 221,253 1203 2563
6 2,182 70 173,561 1203 2563
7 2,182 70 201,645 1203 2563
Download Excel Table

6. 결론 및 향후 연구

본 논문에서는 헤어와유체의 상호작용에서 표현되는 액체의 곡선 운동을 표현할 수 있는 효율적인 알고리즘을 소개했다. 젖은 헤어에서 표현되는 뭉친 형태를 고려하여 액체를 표현 하기 위해 헤어의 속도를 격자에 투영 시키고 프로젝션 과정을 거쳐 Divergence-free한 유체의 속도장을 계산했다. 이 과정에서 젖은 모발의 뭉친 형태가 강하게 나타나는 모발의 끝 부 분을 기반으로 액체의 곡선 운동에 영향을 줄 수 있는 범위를 조절하였다.

우리의 방법은 젖은 헤어에서 표현되는 액체의 곡선 운동을 잘 표현하지만 여전히 부족한 점을 가지고 있다. 젖은 헤어 나 동물의 털에서는 곡선 방향으로 액체 시트가 표현되지만, 제안하는 방법은 이정도 디테일한 특징까지는 잡아내 지 못한다 (Figure 8 참조). 향후연구로, 우리는 젖은 헤어에서 표현되는 디테일하고 다양한 특징을 표현하기 위해 젖은 모발의 궤적에 따라유체 시트가표현될 수 있는 기법에 대해 연구할 계획이다.

jkcgs-25-4-1-g8
Figure 8: Generation of liquid sheets on wet hair and fur.
Download Original Figure

감사의 글

본 연구는 2019학년도 강남대학교 교내 연구비 지원에 의해 수행되었음.

참고 문헌

[1].

K. Ward, F. Bertails, T.-Y. Kim, S. R. Marschner, M.-P. Cani, and M. C. Lin, “A survey on hair modeling: Styling, simulation, and rendering,” IEEE Transactions on Visualization and Computer Graphics, vol. 13, no. 2, pp. 213-234, 2007.

[2].

S. Hadap, M.-P. Cani, F. Bertails, M. Lin, K. Ward, S. R. Marschner, T.-Y. Kim, and Z. Kacic-Alesic, “Strands and Hair - Modeling, Simulation and Rendering,” in SIGGRAPH 2007 - 34 International Conference and Exhibition on Computer Graphics and Interactive Techniques, ser. Proceeding SIGGRAPH ’07 ACM SIGGRAPH 2007 courses, 2007, pp. 1-150.

[3].

A. Selle, M. Lentine, and R. Fedkiw, “A mass spring model for hair simulation,” in ACM Transactions on Graphics (TOG), vol. 27, no. 3, 2008, p. 64.

[4].

E. Poyart and P. Faloutsos, “Real-time hair simulation with segment-based head collision,” in International Conference on Motion in Games. Springer, 2010, pp. 386-397.

[5].

H. Iben, M. Meyer, L. Petrovic, O. Soares, J. Anderson, and A. Witkin, “Artistic simulation of curly hair,” in Proceedings of the 12th ACM SIGGRAPH/Eurographics Symposium on Computer Animation, 2013, pp. 63-71.

[6].

A. McAdams, E. Sifakis, and J. Teran, “A parallel multigrid poisson solver for fluids simulation on large grids,” in Proceedings of the 2010 ACM SIGGRAPH/Eurographics Symposium on Computer Animation, 2010, pp. 65-74.

[7].

C. Horvath and W. Geiger, “Directable, high-resolution simulation of fire on the gpu,” in ACM Transactions on Graphics (TOG), vol. 28, no. 3, 2009, p. 41.

[8].

N. Chentanez and M. Müller, “Real-time eulerian water simulation using a restricted tall cell grid,” in ACM Transactions on Graphics (TOG), vol. 30, no. 4, 2011, p. 82.

[9].

J.-M. Hong, H.-Y. Lee, J.-C. Yoon, and C.-H. Kim, “Bubbles alive,” ACM Transactions on Graphics (TOG), vol. 27, no. 3, p. 48, 2008.

[10].

W. Rungjiratananon, Y. Kanamori, and T. Nishita, “Wetting effects in hair simulation,” Computer Graphics Forum, vol. 31, no. 7pt1, pp. 1993-2002, Sep. 2012.

[11].

W.-C. Lin, W.-K. Liao, and C.-H. Lee, “Animating wet hair interacting with particle-based fluid,” in SIGGRAPH Asia 2013 Posters, ser. SA ’13, 2013, pp. 34:1-34:1.

[12].

W.-C. Lin, “Coupling Hair with Smoothed Particle Hydrodynamics Fluids,” in Workshop on Virtual Reality Interaction and Physical Simulation, J. Bender, C. Duriez, F. Jaillet, and G. Zachmann, Eds. The Eurographics Association, 2014.

[13].

J.-H. Kim, W. Kim, Y. B. Kim, J. Im, J. Lee, and S.-J. Kim, “Robust handling of clumping and stiffness in wet hair animation,” Computer Animation and Virtual Worlds, vol. 28, no. 6, p. e1796, 2017.

[14].

Y. R. Fei, H. T. Maia, C. Batty, C. Zheng, and E. Grinspun, “A multi-scale model for simulating liquid-hair interactions,” ACM Transactions on Graphics (TOG), vol. 36, no. 4, pp. 56:1-56:17, Jul. 2017.

[15].

Y. Zhu and R. Bridson, “Animating sand as a fluid,” in ACM SIGGRAPH 2005 Papers, ser. SIGGRAPH ’05, 2005, pp. 965-972.

[16].

M. Muller, T. Kim, and N. Chentanez, “Fast simulation of inextensible hair and fur,” 12 2012.

[17].

K. Ward, F. Bertails, T. Kim, S. R. Marschner, M. Cani, and M. C. Lin, “A survey on hair modeling: Styling, simulation, and rendering,” IEEE Transactions on Visualization and Computer Graphics, vol. 13, no. 2, pp. 213-234, March 2007.

[18].

D. Han and T. Harada, “Tridiagonal matrix formulation for inextensible hair strand simulation,” in Workshop on Virtual Reality Interaction and Physical Simulation, 2013.

[19].

T. Kugelstadt and E. Schomer, “Position and orientation based cosserat rods,” in Proceedings of the ACM SIG-GRAPH/Eurographics Symposium on Computer Animation, ser. SCA ’16, 2016, pp. 169-178.

[20].

M. Bergou, M. Wardetzky, S. Robinson, B. Audoly, and E. Grinspun, “Discrete elastic rods,” in ACM SIGGRAPH 2008Papers, ser. SIGGRAPH ’08, 2008, pp. 63:1-63:12.

[21].

M. Bergou, B. Audoly, E. Vouga, M. Wardetzky, and E. Grin-spun, “Discrete viscous threads,” in ACM SIGGRAPH 2010 Papers, ser. SIGGRAPH ’10, 2010, pp. 116:1-116:10.

[22].

D. M. Kaufman, R. Tamstorf, B. Smith, J.-M. Aubry, and E. Grinspun, “Adaptive nonlinearity for collisions in complex rod assemblies,” ACM Transactions on Graphics (TOG), vol. 33, no. 4, pp. 123:1-123:12, Jul. 2014.

[23].

G. Gornowicz and S. Borac, “Efficient and stable approach to elasticity and collisions for hair animation,” in Proceedings of the 2015 Symposium on Digital Production, ser. DigiPro '15, 2015, pp. 41-49.

[24].

T. Lenaerts, B. Adams, and P. Dutre, “Porous flow in particle-based fluid simulations,” in ACM SIGGRAPH 2008 Papers, ser. SIGGRAPH ’08, 2008, pp. 49:1–49:8.

[25].

W.-C. Lin, “Boundary handling and porous flow for fluid-hair interactions,” Computer and Graphics, vol. 52, no. C, pp. 3342, Nov. 2015.

[26].

M. Lee, D. Hyde, M. Bao, and R. Fedkiw, “A skinned tetrahedral mesh for hair animation and hair-water interaction,” IEEE transactions on visualization and computer graphics, vol. 25, no. 3, pp. 1449-1459, 2018.

[27].

S. Jung and S.-H. Lee, “Hair modeling and simulation by style,” Computer Graphics Forum, vol. 37, no. 2, pp. 355363, 2018.

[28].

C. Yuksel, S. Schaefer, and J. Keyser, “Hair meshes,” in ACM Transactions on Graphics, vol. 28, no. 5, 2009, p. 166.

[29].

A. J. Chorin, “A numerical method for solving incompressible viscous flow problems,” Journal of computational physics, vol. 2, no. 1, pp. 12-26, 1967.

[30].

R. Li and Y. Saad, “Gpu-accelerated preconditioned iterative linear solvers,” The Journal of Supercomputing, vol. 63,no. 2, pp. 443나66, 2013.

[31].

F. H. Harlow and J. E. Welch, “Numerical calculation of time-dependent viscous incompressible flow of fluid with free surface,” The physics of fluids, vol. 8, no. 12, pp. 2182-2189, 1965.

< 저자소개 >

김종현

jkcgs-25-4-1-g9

  • 2008년 세종대학교 컴퓨터 학과 학사

  • 2010년 고려대학교 컴퓨터학과 석사

  • 2016년 고려대학교 컴퓨터학과 박사

  • 2013년~2016년 (주)텐일레븐 책임연구원

  • 2017년~현재 강남대학교 소프트웨어응용학부 조교수

  • 관심분야: 물리기반 시뮬레이션, 가상현실, 지오메트리 프로세싱