KR102097707B1 - 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법 - Google Patents
특수효과 제작 소프트웨어의 유체 시뮬레이션 방법 Download PDFInfo
- Publication number
- KR102097707B1 KR102097707B1 KR1020180117579A KR20180117579A KR102097707B1 KR 102097707 B1 KR102097707 B1 KR 102097707B1 KR 1020180117579 A KR1020180117579 A KR 1020180117579A KR 20180117579 A KR20180117579 A KR 20180117579A KR 102097707 B1 KR102097707 B1 KR 102097707B1
- Authority
- KR
- South Korea
- Prior art keywords
- fluid
- special effect
- production software
- effect production
- resolution
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/24—Fluid dynamics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
본 발명은 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법에 관한 것으로, 컴퓨터의 메인프로세서에 의해 이루어지는 유체 시뮬레이션 방법에 있어서, a) 시뮬레이션 대상 유체를 포함하는 공간의 크기에 맞춰 경계박스의 크기를 결정하고, 유체가 위치하는 영역에 따라 무게 중심 좌표를 결정하는 단계와, b) 특수효과 제작 소프트웨어에서 유체 입자 위치 정보를 구하는 단계와, c) 상기 a) 단계의 결과물인 경계박스를 해상도에 따라 분할하여 격자를 생성하고, 각 격자에 상기 b) 단계의 위치 정보에 따라 입자를 배열한 후, 스칼라 장을 연산하고, 표면 메쉬를 생성하는 단계를 포함한다.
Description
본 발명은 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법에 관한 것으로, 더 상세하게는 유체의 국소 부위의 볼륨 소실 문제를 해소할 수 있는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법에 관한 것이다.
영화, 드라마, 광고 등 다양한 디지털 컨텐츠에서 영상특수효과(VFX)는 필수적인 요소가 되었다. 이러한 특수효과를 제작하기 위한 특수효과 제작 소프트웨어들은 다양한 특수효과를 생성하고 디지털 콘텐츠에 적용하기 위한 편의성을 제공하는 프로그램으로써 물, 불, 연기뿐만 아니라 폭발, 붕괴, 강체 효과 등을 제작할 수 있는 시뮬레이션 기술이 내장되어있다.
특수효과 제작 소프트웨어로 널리 알려진 SideFX사의 후디니(Houdini)가 있다.
특수효과 제작 소프트웨어는 물(water)을 포함하는 유체 시뮬레이션을 위한 유체의 표면을 생성하기 위해 입자와 격자를 함께 사용하는 방법을 사용한다.
종래 유체 시뮬레이션을 수행하는 과정을 첨부한 도면을 참조하여 설명하면 다음과 같다.
도 1은 종래 유체 입자 정보를 기반으로 표면 메쉬를 생성하는 과정의 설명도이다.
도 1을 참조하면 먼저 표면을 생성할 입자 정보를 얻은 후, 유체 입자의 위치를 중심으로 하는 3차원 격자를 생성한다. 격자는 3차원 공간을 분할한 자료구조를 의미하며 이때 생성된 각각의 공간들을 격자 셀(Cell), 셀을 구성하는 8개의 정점을 격자 노드(node)라고 한다.
입자들은 구의 방정식에 따라 특정한 볼륨을 가지며, 각 격자의 노드와의 거리에 따라 외부, 표면, 내부를 결정하는 거리부호장(Signed Distance Field)을 생성하고, 최종적으로 메타볼(Meta ball)을 이용하여 표면을 생성하게 된다.
유체의 표면을 생성하기 위해서는 다수의 입자가 필요하며, 입자들은 유체의 특성상 매끄럽게 연결된 표면을 가진다. 이를 표현하기 위하여 종래에는 확대, 스무딩 및 축소의 과정을 더 수행하게 된다.
도 2에 도시한 바와 같이 부호거리장을 생성한 후, 각 입자의 볼륨을 확대한 후, 각 입자들이 부드럽게 연결될 수 있도록 스무딩을 수행한 후, 다시 원래 유체 입자 정보에 부합하도록 축소한다.
이처럼 유체 입자로부터 유체의 표면 매쉬를 생성할 수 있다.
그러나 앞서 설명한 바와 같이 스무딩과 축소 과정이 끝난 메쉬는 얇고 매끄러운 표면을 표현할 수 있지만, 원본 볼륨의 소실이 발생하면서 물 표면의 울퉁불퉁한 모습이 사라지고 매우 부드러운 형태를 갖게 된다.
따라서 물의 움직임이 빠르거나, 유체 시뮬레이션에 사용된 입자의 수가 적은 영역에서는 스무딩과 축소 과정에서 발생한 볼륨 소실로 인해 물의 표면이 찢어지거나 홀(Hole)이 발생하게 된다.
도 3에 도시한 바와 같이 특히 연속된 프레임들 내에서 생성된 메쉬의 홀(hole)의 발생과 복원이 반복되거나 유체의 궤적의 끝 부분이 소실과 생성이 반복됨에 따라 영상에서 번쩍임(Flickering)이 발생하는 문제점이 있었다.
영화 내에서 출혈이 등장하는 장면을 클로즈업 하거나 슬로우 모션으로 연출하는 과정에서 이러한 번쩍임 문제는 영화의 전체 완성도를 떨어뜨리는 주요 원인이 될 수 있다.
따라서, 유체의 표면이 찢어지거나 홀이 발생한 부분을 원래의 상태로 복원할 필요가 있다. 종래에는 특정 영역에서 발생하는 번쩍임이나 홀에 대한 문제를 파악하기 위해 유체 입자가 존재하는 모든 영역에 대한 표면 메쉬화를 수행할 수 있으나, 작업시간이 매우 많이 소요되는 문제점이 있었다.
또한, 문제가 발생된 특정 영역만 메쉬화를 수행하여 복원을 할 수 있으나, 종래 특수효과 제작 소프트웨어에 내장되어 있는 표면 메쉬화 노드의 경우, 앞서 설명한 것과 같이 입자들의 위치에 따른 격자를 생성하여 메쉬를 만들기 때문에 특정 영역만 한정하여 메쉬화를 수행하는 것은 전체 시뮬레이션 공간을 메쉬화 하는 것과 다른 결과를 보여주게 되어 표현이 어색하게 되는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는, 이상이 발생한 영역을 메쉬화하되 다른 영역과의 차이 발생을 방지함으로써, 이상이 발생한 영역에 대한 복원작업 시간을 단축할 수 있는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법을 제공함에 있다.
상기와 같은 과제를 해결하기 위한 본 발명 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법은, 컴퓨터의 메인프로세서에 의해 이루어지는 유체 시뮬레이션 방법에 있어서, a) 시뮬레이션 대상 유체를 포함하는 공간의 크기에 맞춰 경계박스의 크기를 결정하고, 유체가 위치하는 영역에 따라 무게 중심 좌표를 결정하는 단계와, b) 특수효과 제작 소프트웨어에서 유체 입자 위치 정보를 구하는 단계와, c) 상기 a) 단계의 결과물인 경계박스를 해상도에 따라 분할하여 격자를 생성하고, 각 격자에 상기 b) 단계의 위치 정보에 따라 입자를 배열한 후, 스칼라 장을 연산하고, 표면 메쉬를 생성하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 무게 중심 좌표의 위치가 전역 좌표계의 일사분면에 위치하지 않을 경우, 계산의 복잡도를 낮추기 위해 모든 입자들의 위치가 일사분면에 위치하도록 변환하고, 변환된 위치는 전역 변수로 지정하여 표면 메쉬를 생성한 후 표면 메쉬의 위치를 변환할 수 있다.
본 발명의 실시예에서, 상기 c) 단계는, c-1) 상기 경계박스를 해상도에 따라 분할하여 마칭큐브 격자의 셀을 생성하는 단계와, c-2) 상기 b)단계의 유체 입자 위치 정보에 따라 상기 셀에 유체 입자를 배열하고, 확인하는 단계와, c-3) 아이겐벨류를 이용하여 상기 c-2) 단계 결과물의 스칼라 장을 연산하는 단계와, c-4) 상기 스칼라 장의 스칼라 값을 기반으로 마칭큐브 알고리즘을 수행하여 표면 메쉬를 생성하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 c-1) 단계의 해상도는 아래의 수식 1로 표현될 수 있다.
[수식 1]
resxyz = BBoxxyz / Psep
수식 1에서 resxyz는 마칭큐브 격자의 해상도, BBoxxyz는 경계상자의 크기, Psep는 입자 간격
본 발명의 실시예에서, 상기 c-2) 단계는, 상기 c-1) 단계에서 산출한 해상도만큼 1차원 배열을 생성하고, 각 배열에 해당 셀을 포함하는 인접 셀들에 위치한 입자들의 정보를 저장함으로써 연산시간을 단축할 수 있다.
본 발명의 실시예에서, 상기 c-4) 단계에서 생성되는 표면 메쉬는 삼각형 메쉬이며, 특수효과 제작 소프트웨어에서 사용할 수 있도록 포인트, 버텍스, 프리미티브 형태로 재구성하는 단계를 더 포함할 수 있다.
본 발명은 국소영역에 대한 표면 메쉬화가 가능하여 용이하게 이상이 발생한 영역을 복원할 수 있으며, 전체 영역과의 균형을 맞춰 정확한 복원이 가능한 효과가 있다.
또한, 본 발명은 이상이 발생한 영역만을 선택하여 복원을 하기 때문에 작업 시간을 단축할 수 있는 효과가 있다.
도 1은 종래 유체 입자 정보를 기반으로 표면 메쉬를 생성하는 과정의 설명도이다.
도 2는 종래 유체 입자로부터 유체 표면 메쉬를 형성하는 과정의 설명도이다.
도 3은 종래 유체 시뮬레이션의 문제점을 보인 도면이다.
도 4는 본 발명의 바람직한 실시예에 따른 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법의 흐름도이다.
도 5는 도 4에서 메쉬 생성단계의 상세 흐름도이다.
도 2는 종래 유체 입자로부터 유체 표면 메쉬를 형성하는 과정의 설명도이다.
도 3은 종래 유체 시뮬레이션의 문제점을 보인 도면이다.
도 4는 본 발명의 바람직한 실시예에 따른 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법의 흐름도이다.
도 5는 도 4에서 메쉬 생성단계의 상세 흐름도이다.
이하, 본 발명 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법에 대하여 첨부한 도면을 참조하여 상세히 설명한다.
본 발명의 실시 예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위해 제공되는 것이며, 아래에 설명되는 실시 예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래의 실시 예들로 한정되는 것은 아니다. 오히려, 이들 실시 예는 본 발명을 더욱 충실하고 완전하게 하며 당업자에게 본 발명의 사상을 완전하게 전달하기 위하여 제공되는 것이다.
본 명세서에서 사용된 용어는 특정 실시 예를 설명하기 위하여 사용되며, 본 발명을 제한하기 위한 것이 아니다. 본 명세서에서 사용된 바와 같이 단수 형태는 문맥상 다른 경우를 분명히 지적하는 것이 아니라면, 복수의 형태를 포함할 수 있다. 또한, 본 명세서에서 사용되는 경우 "포함한다(comprise)" 및/또는"포함하는(comprising)"은 언급한 형상들, 숫자, 단계, 동작, 부재, 요소 및/또는 이들 그룹의 존재를 특정하는 것이며, 하나 이상의 다른 형상, 숫자, 동작, 부재, 요소 및/또는 그룹들의 존재 또는 부가를 배제하는 것이 아니다. 본 명세서에서 사용된 바와 같이, 용어 "및/또는"은 해당 열거된 항목 중 어느 하나 및 하나 이상의 모든 조합을 포함한다.
본 명세서에서 제1, 제2 등의 용어가 다양한 부재, 영역 및/또는 부위들을 설명하기 위하여 사용되지만, 이들 부재, 부품, 영역, 층들 및/또는 부위들은 이들 용어에 의해 한정되지 않음은 자명하다. 이들 용어는 특정 순서나 상하, 또는 우열을 의미하지 않으며, 하나의 부재, 영역 또는 부위를 다른 부재, 영역 또는 부위와 구별하기 위하여만 사용된다. 따라서, 이하 상술할 제1 부재, 영역 또는 부위는 본 발명의 가르침으로부터 벗어나지 않고서도 제2 부재, 영역 또는 부위를 지칭할 수 있다.
이하, 본 발명의 실시 예들은 본 발명의 실시 예들을 개략적으로 도시하는 도면들을 참조하여 설명한다. 도면들에 있어서, 예를 들면, 제조 기술 및/또는 공차에 따라, 도시된 형상의 변형들이 예상될 수 있다. 따라서, 본 발명의 실시 예는 본 명세서에 도시된 영역의 특정 형상에 제한된 것으로 해석되어서는 아니 되며, 예를 들면 제조상 초래되는 형상의 변화를 포함하여야 한다.
도 4는 본 발명의 바람직한 실시예에 따른 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법의 흐름도이다.
도 4를 참조하면 본 발명은 유체 표면 메쉬를 생성할 경계박스의 크기 정보 및 무게 중심 좌표를 결정하는 단계(S10)와, 특수효과 제작 소프트웨어에서 지원하는 유체 시뮬레이션을 수행하는 단계(S20)와, 상기 S20단계의 유체 시뮬레이션결과와 상기 S10단계에서 저장된 경계박스의 크기 및 무게 중심 좌표를 이용하여 표면 메쉬를 생성하는 단계(S30)를 포함한다.
이하, 상기와 같이 구성되는 본 발명의 바람직한 실시예의 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법에 대하여 설명하면 다음과 같다.
본 발명은 통상의 컴퓨터에서 수행되는 것으로, 이후 설명되는 각 단계의 수행에 대한 하드웨어 주체는 컴퓨터의 메인프로세서가 되며, 저장은 메모리, 하드디스크 등의 하드웨어에 기록되며, 작업자의 검색어의 입력은 키보드, 마우스, 마이크로폰 등의 입력수단을 사용할 수 있다.
이러한 하드웨어의 구성은 통상의 컴퓨터를 기반으로 하는 것으로, 앞으로 새로운 저장수단, 입력수단 등이 개발되어도 그 기능이 동일 또는 유사한 이상 본 발명의 기재 내용에서 벗어날 수 없다.
또한, 본 발명은 노드 기반의 특수효과 제작 소프트웨어 제작사에서 제공하는 개발툴을 이용하여 작성된 것으로, 노드 기반의 특수효과 제작 소프트웨어에서 노드로 활용 가능하다.
먼저, S10단계인 박스 지오메트리(Box Geometry)는 시뮬레이션 대상인 유체의 표면 메쉬를 생성할 경계박스를 결정한다. 경계박스의 크기는 시뮬레이션 대상인 유체를 모두 포함하는 크기가 되도록 한다.
즉, 유체 표면 메쉬를 생성할 경계박스의 크기 정보와 무게 중심 좌표 정보를 결정하고 저장한다. 경계 박스는 무게중심 좌표를 기준으로 크기 항목에 설정된 값의 1/2 크기로 상하좌우 방향으로 확장하여 생성한다.
상기 무게 중심 좌표 정보는 경계박스 내의 유체 배치 위치에 따라 결정된다.
이때, 무게중심 좌표의 위치가 전역 좌표계의 일사분면에 위치하지 않을 경우, 계산의 복잡도를 낮추기 위해 모든 입자들의 위치가 일사분면에 위치하도록 이동한다.
이동된 거리 값은 전역 변수로 저장하고, 전역 변수는 상기 S30단계를 완료한 후 메쉬의 위치를 복원시킬 때 재사용한다.
그 다음, S20단계에서는 특수효과 제작 소프트웨어에서 지원하는 유체 시뮬레이션을 수행하여, 시뮬레이션의 결과로 생성되는 각 유체 입자들의 위치정보를 획득한다.
이때의 위치정보는 도 1과 도 2에서 살펴 본 유체 입자 정보로서, 아직 부호거리장의 계산이 수행되지 않은 것으로 한다.
그 다음, S30단계에서는 상기 S10단계의 경계박스 정보와 S20단계의 유체 입자들의 위치정보를 이용하여 표면 메쉬를 형성한다.
도 5는 상기 S30단계의 구체적인 순서도이다.
도 5를 참조하면, 상기 S30단계인 표면 메쉬 형성단계는, 마칭 큐브 격자 생성단계(S31)와, 해쉬맵 정보 갱신 단계(S32)와, 스칼라 장 연산단계(S33)와, 메쉬 정보 생성단계(S34) 및 메쉬 정보 전달단계(S35)를 포함하여 구성된다.
상기 마칭 큐브 격자 생성단계(S31)에서는 작업자로부터 해상되를 입력받는다. 해상도는 유체 입자로부터 생성된 표면 매쉬의 정확도와 결과 품질을 결정하는 요소가 된다.
구체적으로 특수효과 제작 소프트웨어는 특정한 방식으로 입자 간격을 정의하고 있으며, 그 예로 특수효과 제작 소프트웨어인 후디니는 입자 간격을 입자 분리(Particle Separation) 변수를 통해 정의한다.
입자 분리 변수 값에 따라 생성되는 입자의 수가 변화되며, 따라서 표면 매쉬의 해상도는 특수효과 제작 소프트웨어에서 정의하는 입자 간격을 나타내는 변수를 활용하여 결정할 수 있다.
변수 값을 기반으로 전체 마칭 큐브 격자의 해상도는 아래의 수식 1로 정의할 수 있다.
[수식 1]
resxyz = BBoxxyz / Psep
수식 1에서 resxyz는 마칭큐브 격자의 해상도이고, BBoxxyz는 상기 S10단계에서 저장된 경계상자의 크기이며, Psep는 입자 간격을 나타내는 변수이다.
위에서 마칭큐브는 마칭 스퀘어의 3차원 표현이며, 마칭 스퀘어는 같은 높이의 점들을 윤곽선으로 이어주는 것으로, 이를 3차원으로 표현하여 마칭큐브를 생성한다.
이때의 해상도는 미리 정한 경계상자의 크기를 입자 간격으로 나눈 값이 된다.
그 다음, S32단계인 해쉬맵 정보 갱신 단계는, 이후 스칼라 장을 산출하기 위해 입자의 위치를 검사한다. 해쉬맵은 상기 S20단계의 결과물인 입자의 위치 값을 각 격자에 저장한 배열을 의미한다.
상기 S31단계에서 해상도에 따라 형성한 마칭큐브에 각 입자의 위치 값을 저장하고, 모든 입자의 위치를 검사하는 연산은 연산 시간이 많이 필요로 하기 때문에 작업시간이 지연된다.
본 발명에서는 상기 S31단계에서 산출한 해상도만큼 1차원 배열을 생성하고, 각 배열에 해당 셀을 포함하는 인접 셀들에 위치한 입자들의 정보를 저장함으로써 연산시간을 단축할 수 있다.
격자 셀에 해당하는 해쉬맵 배열에 접근하기 위한 수학식은 아래의 수식 2와 같다.
[수식 2]
idx = (resx * resy * nx) + (resx * ny) + nz
nx, ny, nz는 각각 격자 셀의 x, y, z 좌표
상기 해당 셀을 포함하는 인접 셀들의 수는 27개로 할 수 있다. 즉, 3x3x3 정육면체 구조를 선택한다.
이와 같은 과정을 통해 각 마칭큐브를 해상도 별로 분할한 격자에 유체 입자를 배열한 후, S33단계의 스칼라 장을 연산한다. 스칼라 장의 연산은 아이겐벨류를 이용할 수 있다.
연산된 스칼라 장은 격자의 각 노드에 저장된다.
그 다음, S34단계에서는 상기 S33단계에서 생성한 스칼라 장을 기반으로 마칭 큐브 알고리즘을 수행하여 삼각형 구조의 표면 메쉬인 삼각 메쉬(Triangular mesh)를 생성한다.
마칭 큐브 알고리즘은 각각의 입자마다 격자를 생성하는 종래의 방식과는 다르게 전체 공간을 하나의 격자 공간으로 구성하고, 각 격자 셀을 사전에 정의된 경우의 수에 따라 표면을 구성하는 기법으로, 하나의 격자만을 사용하여 표면을 생성하기 때문에 작업 속도가 빠르며, 단일 격자를 이용하여 메쉬를 생성하기 때문에 스무딩 과정을 최소화하여 유체 표면의 세밀한 형태를 보존할 수 있다.
아울러 지정된 영역에 대한 메쉬의 결과가 전체 영역을 메쉬화한 결과와 동일한 품질을 보장할 수 있다.
그 다음, S35단계에서는 생성된 삼각 메쉬(Triangular mesh)는 후디니 등 기존의 특수효과 제작 소프트웨어에서 직접 사용할 수 없으며, 특수효과 제작 소프트웨어에서 사용할 수 있도록 포인트, 버텍스, 프리미티브 형태로 재구성한다.
이와 같이 본 발명은 유체 시뮬레이션에서 기존 특수효과 제작 소프트웨어의 유체 표면 생성 기법에 의해 일부 영역에서 표면 번쩍임 문제를 최소화할 수 있으며, 대규모 바다 작업 등에 있어서 물 표면에 보여지는 울퉁불퉁한 세밀한 표면을 묘사함에 있어서 국소영역에 대한 표면 메쉬화를 통해 작업시간을 단축할 수 있다.
본 발명은 상기 실시예에 한정되지 않고 본 발명의 기술적 요지를 벗어나지 아니하는 범위 내에서 다양하게 수정, 변형되어 실시될 수 있음은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어서 자명한 것이다.
Claims (6)
- 컴퓨터의 메인프로세서에 의해 이루어지는 유체 시뮬레이션 방법에 있어서,
a) 시뮬레이션 대상 유체를 포함하는 공간의 크기에 맞춰 경계박스의 크기를 결정하고, 유체가 위치하는 영역에 따라 무게 중심 좌표를 결정하는 단계;
b) 특수효과 제작 소프트웨어에서 유체 입자 위치 정보를 구하는 단계; 및
c) 상기 a) 단계의 결과물인 경계박스를 해상도에 따라 분할하여 격자를 생성하고, 각 격자에 상기 b) 단계의 위치 정보에 따라 입자를 배열한 후, 스칼라 장을 연산하고, 표면 메쉬를 생성하는 단계를 포함하며,
상기 a) 단계에서,
상기 무게 중심 좌표의 위치가 전역 좌표계의 일사분면에 위치하지 않을 경우, 계산의 복잡도를 낮추기 위해 모든 입자들의 위치가 일사분면에 위치하도록 변환하고, 변환된 위치는 전역 변수로 지정하여 표면 메쉬를 생성한 후 표면 메쉬의 위치를 변환하는 것을 특징으로 하는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법. - 삭제
- 제1항에 있어서,
상기 c) 단계는,
c-1) 상기 경계박스를 해상도에 따라 분할하여 마칭큐브 격자의 셀을 생성하는 단계;
c-2) 상기 b)단계의 유체 입자 위치 정보에 따라 상기 셀에 유체 입자를 배열하고, 확인하는 단계;
c-3) 아이겐벨류를 이용하여 상기 c-2) 단계 결과물의 스칼라 장을 연산하는 단계;
c-4) 상기 스칼라 장의 스칼라 값을 기반으로 마칭큐브 알고리즘을 수행하여 표면 메쉬를 생성하는 단계를 포함하는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법. - 제3항에 있어서,
상기 c-1) 단계의 해상도는 아래의 수식 1로 표현되는 것을 특징으로 하는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법.
[수식 1]
resxyz = BBoxxyz / Psep
수식 1에서 resxyz는 마칭큐브 격자의 해상도, BBoxxyz는 경계상자의 크기, Psep는 입자 간격 - 제3항에 있어서,
상기 c-2) 단계는,
상기 c-1) 단계에서 산출한 해상도만큼 1차원 배열을 생성하고, 각 배열에 해당 셀을 포함하는 인접 셀들에 위치한 입자들의 정보를 저장함으로써 연산시간을 단축하는 것을 특징으로 하는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법. - 제3항에 있어서,
상기 c-4) 단계에서 생성되는 표면 메쉬는 삼각형 메쉬이며,
특수효과 제작 소프트웨어에서 사용할 수 있도록 포인트, 버텍스, 프리미티브 형태로 재구성하는 단계를 더 포함하는 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180117579A KR102097707B1 (ko) | 2018-10-02 | 2018-10-02 | 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180117579A KR102097707B1 (ko) | 2018-10-02 | 2018-10-02 | 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102097707B1 true KR102097707B1 (ko) | 2020-04-08 |
Family
ID=70275737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180117579A KR102097707B1 (ko) | 2018-10-02 | 2018-10-02 | 특수효과 제작 소프트웨어의 유체 시뮬레이션 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102097707B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112613206A (zh) * | 2020-12-15 | 2021-04-06 | 大连理工大学 | 一种基于各向异性体调和场的附面层网格生成方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050042916A (ko) * | 2003-11-04 | 2005-05-11 | 강문구 | 입자동역학 해석기법과 볼륨렌더링 기법을 이용한 실시간 유체유동 시뮬레이션 및 렌더링 방법 |
KR20130095152A (ko) * | 2012-02-17 | 2013-08-27 | (주)에프엑스기어 | 노이즈 제거 필터를 이용한 유체 표면 생성 시스템 및 방법 |
KR20180062901A (ko) * | 2016-12-01 | 2018-06-11 | 동서대학교산학협력단 | 회전 및 상승하는 화구 생성방법 |
-
2018
- 2018-10-02 KR KR1020180117579A patent/KR102097707B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050042916A (ko) * | 2003-11-04 | 2005-05-11 | 강문구 | 입자동역학 해석기법과 볼륨렌더링 기법을 이용한 실시간 유체유동 시뮬레이션 및 렌더링 방법 |
KR20130095152A (ko) * | 2012-02-17 | 2013-08-27 | (주)에프엑스기어 | 노이즈 제거 필터를 이용한 유체 표면 생성 시스템 및 방법 |
KR20180062901A (ko) * | 2016-12-01 | 2018-06-11 | 동서대학교산학협력단 | 회전 및 상승하는 화구 생성방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112613206A (zh) * | 2020-12-15 | 2021-04-06 | 大连理工大学 | 一种基于各向异性体调和场的附面层网格生成方法 |
CN112613206B (zh) * | 2020-12-15 | 2022-09-20 | 大连理工大学 | 一种基于各向异性体调和场的附面层网格生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10339266B2 (en) | Mechanisms for constructing spline surfaces to provide inter-surface continuity | |
JP3962361B2 (ja) | 位相判断装置、分解可能形状生成装置、構造メッシュ生成装置、位相判断方法、分解可能形状生成方法、および該位相判断方法を実行させるためのコンピュータ実行可能なプログラム、分解可能形状生成方法を実行させるためのコンピュータ実行可能なプログラム並びに構造メッシュ生成システム | |
CN113096234B (zh) | 利用多张彩色图片生成三维网格模型的方法及装置 | |
CN112633657B (zh) | 一种施工质量管理方法、装置、设备及存储介质 | |
US20080275677A1 (en) | System, methods, and computer readable media, for product design using coupled computer aided engineering models | |
KR100888528B1 (ko) | 3D 오브젝트의 셀프 셰도우(self-shadow)를만들기 위해 데이터를 미리-저장할 수 있는 장치, 방법,응용프로그램 및 컴퓨터 판독가능한 매체 | |
KR20110111259A (ko) | 평행 지오데식 곡선들에 의해 모델링되는 부품의 설계 | |
CN105761303A (zh) | 在3d建模组件上创建包围盒 | |
JP2013507679A (ja) | 三次元物体モデルの3dプリントが可能な方法及びシステム | |
KR20140139984A (ko) | 3d 모델링된 오브젝트의 압축 및 압축해제 | |
JP6518517B2 (ja) | 点群データモデル化装置 | |
KR20170083891A (ko) | 가속 구조를 생성하는 방법 및 장치 | |
KR20140142679A (ko) | 2차원 뷰들로 3차원 모델링된 오브젝트의 설계 | |
KR102242566B1 (ko) | 레이 트레이싱 처리 장치 및 방법 | |
US20190272347A1 (en) | Scalable and precise fitting of nurbs surfaces to large-size mesh representations | |
CN105718643A (zh) | 一种基于最优化视角的船舶生产设计审图器实现方法 | |
JP2010176596A (ja) | 可視化対象データの構造化装置、方法、及びプログラム、可視化対象データの可視化装置、方法、及びプログラム | |
CN105760570A (zh) | 选择对象集的视点 | |
US20220215641A1 (en) | Model generation apparatus, model generation system, model generation method | |
US10943037B2 (en) | Generating a CAD model from a finite element mesh | |
JP2017054468A (ja) | 2次元または3次元の形状情報を表示・操作するシステム、方法及びコンピュータソフトウエアプログラム | |
US20180130249A1 (en) | Method and apparatus for generating acceleration structure | |
CN115758938A (zh) | 面向粘性边界流场数值模拟的附面层网格生成方法 | |
CN111445569B (zh) | 一种沉积地质演化动态模拟方法 | |
JP2018067124A (ja) | シミュレーションプログラム、シミュレーション方法および情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |