230 likes | 459 Views
Flame Animation. Team : Fire! 20061237 Lee, Ho-Jin 20071229 Kim, Young Soo. Objective. Modeling the flame physically and realistically Rendering of the result of simulated flame. Physical Modeling Function. INPUT : Temperature, Pressure, Density, Velocity, Material in specific time
E N D
Flame Animation Team : Fire! 20061237 Lee, Ho-Jin 20071229 Kim, Young Soo
Objective • Modeling the flame physically and realistically • Rendering of the result of simulated flame
Physical Modeling Function • INPUT : Temperature, Pressure, Density, Velocity, Material in specific time • OUTPUT : RGB Color Value • Physically simulate the flame and make data for rendering
Fluid Simulation • Get variables of each cell in next time step from data of given time Picture from [Stam99]
Navier-Stokes Equation • Equation to describe the state of viscous fluid • Navier-Stokes Eq. for incompressible fluids was used for simulation Velocity
Fluid Modeling • Amount of moved fluid depends on density and velocity
Fluid Modeling • Derivative of density is proportional to the amount of transferred gas • From equation of ideal gas state
Fluid Modeling • Because internal energy of gas istime derivative of Temperature is
Material Modeling • Like the thermal flow, oxygen and fuel flow is
Material Modeling • According to Chemical Kinetics and Arrhenius’s Equation, the amount of burned fuel is • Then energy conservation law gives
Get RGB Value from Variables • Emitted energy proportional to the amount of burned fuel • RGB Values depends on temperature • In the basic case, it changes form red in low temperature to yellow in high temperature
Volume Rendering • 각각의 Cell을 Volume Rendering을 사용 • Volume감 있는 Fire Animation을 표현
Volume Rendering • 반투명한 GLUT의 Cube를 이용해 그리드의 각 Cell들의 색상 랜더링 • Alpha Blending 시에는 Z-Buffering에만 의존할 수 없으므로 시점에 따라 뒤에서부터 그려주게 코드 작성
Example [RGB Cube] • Different Alpha Channel Value (A= 120, 60, 30, 5) • Different Cell Grid Size (N = 10, 20, 50)
Demo GRIDSIZE = 10 GRIDSIZE = 10 GRIDSIZE = 10
Conclusion • Successfully modeled flame physically • But couldn’t find realistic and stable solution • Navier-Stokes Equation Solver should be more stable • Rendered explosion
Future works • Develop more stable CFD Solver • Implement Solver for GPGPU • Volume Rendering using Ray Casting with GPU
Reference • Wikipedia : Navier-Stokes Equations (http://en.wikipedia.org/wiki/Navier_Stokes, 2009.06.22 현재) • JosStam, "Stable Fluids", SIGGRAPH 1999, 121-128, 1999 • JosStam, "Real-Time Fluid Dynamics for Games", Game Developer Conference 2003 • Wikipedia : Arrhenius Equation (http://en.wikipedia.org/wiki/Arrhenius_equation, 2006.06.22 현재) • Keenan Crane et al, Real-Time Simulation and Rendering of 3D Fluids, GPU Gems 3, 633-675, Addison-Wesley Professional, 2007