Edit of asset "FlameSim — CPU-based Eulerian Fluid Solver " Accepted

Old/Current New/Edit
Title FlameSim — CPU-based Eulerian Fluid Solver FlameSim — CPU-based Eulerian Fluid Solver
Description FlameSim is a real-time, CPU-based Eulerian fluid solver implemented as a GDExtension for the Godot Engine. Written in C++23, it provides a robust mathematical core for simulating incompressible continuous media directly on the CPU. By utilizing a fractional step (projection) method on a Staggered Grid (MAC), the library guarantees mass conservation and completely eliminates "checkerboard pressure" artifacts. This approach makes it a potential candidate for real-time applications, such as embedded systems.

**Key Features:**
- **CPU-Driven Core:** The simulation core is independent of Godot and can be connected to any other C++ project or embedded platform.
- **Dynamic Obstacles:** Applies Dirichlet boundary conditions (No-Slip condition) to the cell. Obstacles can be placed and removed "on the fly" without recalculating the entire grid.
- **Flow Visualization:** Injects a local concentration of a passive scalar (smoke, dye, flame marker) into the grid cell. The density field is transported by the calculated fluid velocity field.
- **Interactive Demo:** The Control Panel contains two sliders linked to flame intensity and wind strength, and switches that enable and disable two obstacles on the fly.

**Important Tips:**
- **Grid Optimization:** Keep the grid small (tens, not hundreds of cells per axis) and use the node's scale to stretch a small grid over the entire screen.
- **CFL Condition:** At too high flow velocities, a violation of the CFL condition is possible, leading to numerical instability. Balance the cell size, the time step, and the power of external forces.
- **Self-Managing:** The density/smoke gradually fades over time by itself — there is no need to manually extinguish it.

**Full Documentation:**
Godot Integration is distributed under the MIT License. For the complete list of methods and setup instructions, please read the full README.md in the GitHub repository.
FlameSim is a real-time, CPU-based Eulerian fluid solver implemented as a GDExtension for the Godot Engine. Written in C++23, it provides a robust mathematical core for simulating incompressible continuous media directly on the CPU. By utilizing a fractional step (projection) method on a Staggered Grid (MAC), the library guarantees mass conservation and completely eliminates "checkerboard pressure" artifacts. This approach makes it a potential candidate for real-time applications, such as embedded systems.

**Key Features:**
- **CPU-Driven Core:** The simulation core is independent of Godot and can be connected to any other C++ project or embedded platform.
- **Dynamic Obstacles:** Applies Dirichlet boundary conditions (No-Slip condition) to the cell. Obstacles can be placed and removed "on the fly" without recalculating the entire grid.
- **Flow Visualization:** Injects a local concentration of a passive scalar (smoke, dye, flame marker) into the grid cell. The density field is transported by the calculated fluid velocity field.
- **Interactive Demo:** The Control Panel contains two sliders linked to flame intensity and wind strength, and switches that enable and disable two obstacles on the fly.

**Important Tips:**
- **Grid Optimization:** Keep the grid small (tens, not hundreds of cells per axis) and use the node's scale to stretch a small grid over the entire screen.
- **CFL Condition:** At too high flow velocities, a violation of the CFL condition is possible, leading to numerical instability. Balance the cell size, the time step, and the power of external forces.
- **Self-Managing:** The density/smoke gradually fades over time by itself — there is no need to manually extinguish it.

**Full Documentation:**
Godot Integration is distributed under the MIT License. For the complete list of methods and setup instructions, please read the full README.md in the GitHub repository.
Category 2D Tools 2D Tools
License MIT MIT
Repository Provider GitHub GitHub
Repository Url https://github.com/software-twins/godot-eulerian-flame/ https://github.com/software-twins/godot-eulerian-flame/
Issues Url https://github.com/software-twins/godot-eulerian-flame/issues https://github.com/software-twins/godot-eulerian-flame/issues
Godot version Godot 4.5 Godot 4.5
Version String 1.0 1.0
Download Commit 71722b65b209a86cce2d0e204d3d96673c1b2a7c 71722b65b209a86cce2d0e204d3d96673c1b2a7c
Download Url (Computed) https://github.com/software-twins/godot-eulerian-flame/archive/71722b65b209a86cce2d0e204d3d96673c1b2a7c.zip https://github.com/software-twins/godot-eulerian-flame/archive/71722b65b209a86cce2d0e204d3d96673c1b2a7c.zip
Icon Url https://raw.githubusercontent.com/software-twins/godot-eulerian-flame/refs/heads/main/flamesim-1.8.jpg
https://raw.githubusercontent.com/software-twins/godot-eulerian-flame/refs/heads/main/flamesim-1.8.jpg
Preview Insert
Type video
Image/Video URL https://www.youtube.com/watch?v=TGPDzs7WsIs
Thumbnail