Simulation Spec · Rev. 2026
transition_dq transition_dq Cell A Cell B Cell C

Energy Preserved Fluid Field Advection

거대한 게임 월드에서 실제 유체 시뮬레이션을 구동하는 대신, 지형의 연결성과 위상(Topology) 구조를 반영하여 저비용으로 고품질의 유체 필드를 생성하기 위한 기술 명세서입니다.

2 구성 요소
DQ Dual Quaternion
SH L2 방향 분포
4D 볼륨 보존
scroll
01 — Graph Representation

핵심 구조

이류 시뮬레이션은 물리적인 3차원 좌표계가 없는 이산적인 위상 격자 그래프(Cell Complex Graph) 상에서 수행됩니다.

A. Node
(Cell)
물리적인 좌표축이나 메트릭이 존재하지 않는 위상적 노드입니다. 각 셀은 지형의 구체적인 형태를 알지 못하는 형태 미상의 다양체(Shape-Agnostic Manifold)의 국소 영역으로 정의됩니다.

셀 자체는 단일 유동 벡터가 아닌, 국소 와류/가속도 상태(Dual Quaternion), 방향별 세기 분포(SH L2 Scalar), 그리고 가상 밀도를 동적으로 저장합니다.
B. Edge
연결 (Connection)
이웃한 셀 간의 유동 이동 통로이자, 두 차트 사이의 좌표계 변환 맵(Transition Map)입니다.

두 셀 간의 물리적 전이 시 적용할 상대적 Twist 회전 및 가속도 오프셋을 나타내는 정적 듀얼 쿼터니언(Dual Quaternion)을 가집니다.
02 — Data Layout

데이터 레이아웃

시뮬레이션 루프가 가질 실제 메모리 구조입니다. 셀에는 동적 상태만, 연결에는 정적 변환 데이터만 존재하는 최적화된 레이아웃입니다.

Per-Cell — 동적 상태
Cell Data Layout
twist_accel : DualQuaternion Real: Twist 회전 Dual: 가속도 벡터 intensity : SH L2 Scalar 9 Coefficients 방향별 세기 분포 density : Scalar (가상 밀도 ρ)
Per-Connection — 정적 베이킹 데이터
Connection Data Layout
transition_dq : DualQuaternion 이웃 셀 전이 시 적용할 상대 회전 및 가속 오프셋
정적 베이킹: 연결 데이터는 런타임에 변경되지 않으며, 지형 위상 구조 확정 시 사전 계산됩니다.
03 — Conservation Law

에너지 보존과 4차원 볼륨 법칙

물리적 스케일 인자 없이, 위상 구조와 가상 밀도만으로 베르누이/벤투리 효과를 자연 모사합니다.

에너지 볼륨 보존
4D Volume Conservation
유동이 지형 수축(협곡, 절벽 등)을 만나 다양체의 실질 부피가 압축될 때, 유동의 부피 수축률만큼 가상 밀도(ρ)가 동적으로 증가하여 총 4차원 볼륨(다양체 부피 × ρ)이 보존됩니다.
동적 밀도 격차 효과
Bernoulli / Venturi Effect
인위적인 정적 스케일 인자 대신, 인접 셀 간의 동적 가상 밀도(ρ) 격차를 활용하여 가속도 강도를 조절합니다.

고밀도 → 저밀도 셀: 듀얼 쿼터니언의 변위 크기 증폭(가속)
저밀도 → 고밀도 셀: 듀얼 쿼터니언의 변위 크기 감쇄(저항)
04 — Simulation Loop

시뮬레이션 루프

매 프레임 경계 주입 → 이류 머지 → 유출 소멸의 3단계로 실행됩니다.

1
경계 유입 (Boundary Injection)
시스템의 경계면에 위치한 셀들에 외부 유동 세기에 따른 벡터 필드와 밀도를 주입합니다.
2
선형 상태 머지 (Advection & Merge)
각 대상 셀 B는 이웃한 셀 A들로부터 밀려 들어오는 유동 데이터를 가져옵니다. 이웃 셀 A의 twist_accel 상태에 transition_dq 변환을 적용한 뒤, 두 셀 간의 동적 가상 밀도 비율(ρ_A / ρ_B)을 듀얼 쿼터니언의 Translation(가속도) 성분에 곱해 크기를 스케일링합니다. 스케일링된 듀얼 쿼터니언들을 선형 블렌딩(DLB) 및 정규화하여 대상 셀 B의 다음 프레임 상태를 결정합니다. 동시에 이웃 셀들의 SH L2 intensity와 density를 선형 머지합니다.
3
경계 유출 (Boundary Drain)
유출 경계면에 도달한 흐름은 소멸시킵니다.
DLB (Dual quaternion Linear Blending): 복수의 듀얼 쿼터니언을 선형 합산 후 정규화하는 블렌딩 방식으로, Twist 성분의 회전 연속성을 유지하면서 인접 셀 상태를 부드럽게 보간합니다.
05 — World Projection

월드 프로젝션

렌더링 단계(셰이더 등)에서 특정 월드 위치의 유동 벡터를 샘플링할 때의 복원 절차입니다.

1
셀 상태 조회
샘플링 지점이 속한 셀의 twist_accel(Dual Quaternion)과 intensity(SH L2)를 가져옵니다.
2
SH 방향 평가
샘플링하는 구면 방향(World Direction)을 SH L2 스칼라 분포에 대입하여 기본 유동 세기를 결정합니다.
3
Dual Quaternion 프로젝션
twist_accel에 정의된 Twist 회전 및 가속도 벡터를 적용하여 실제 물리 공간의 최종 3차원 유동 벡터로 프로젝션합니다.
06 — Extension

확장: 물 표면 시뮬레이션

본 명세의 격자 그래프 및 듀얼 쿼터니언 변환 구조는 물 표면(Water Surface)의 유동 시뮬레이션에도 동일하게 확장 적용할 수 있습니다.

Depth
물의 깊이 D
각 셀의 물의 깊이 D는 가상 밀도 ρ에 비례하는 것으로 정의합니다.
Velocity
유속 v
물의 흐름 속도 v는 가상 밀도 ρ의 역수에 비례하는 것으로 정의합니다.
Conservation
유량 보존
유체가 좁은 관이나 얕은 지형을 지날 때 빨라지고 고일수록 느려지는 D × v = Constant가 자연스럽게 모사됩니다.
D ∝ ρ
깊이는 가상 밀도에 비례
v ∝ 1 / ρ
유속은 가상 밀도의 역수에 비례
D × v = C
유량 보존 (연속 방정식)
포텐셜-운동 에너지 변환: 각 셀의 지형 높이(Elevation, Z)에 따라 포텐셜 에너지(gZ)를 적용합니다. 내리막을 따라 흐를 때 듀얼 쿼터니언의 Translation(가속도) 크기가 물리적으로 증폭되어 유속이 급격히 증가하며, 평지나 웅덩이에 도달해 물이 고이면 밀도 ρ가 상승하여 유속(1/ρ)이 자연스럽게 느려집니다. 중력 경사와 수체 축적에 따른 동적인 흐름 순환을 동일한 수학적 백본(Unit Dual Quaternion + SH L2) 상에서 일관되게 모사합니다.