An OpenGL lattice Boltzmann fluid simulation tool using Dear ImGui.
demo.webm
This project provides an OpenGL implementation of the advection-diffusion Lattice Boltzmann Method. The code is written in C++/GLSL and utilizes Dear ImGui to provide the UI.
The GLSL shaders were ported from my WebGL2 LBM fluid simulator, which I developed for the BioFM research group.
This project requires OpenGL 3.3+ and can be built with CMake.
- Clone the repository and submodules:
git clone --recurse-submodules https://github.com/rafaelanderka/lbm-imgui.git
If you have already cloned the repository without the submodules, you can fetch the submodules separately by running:
git submodule update --init --recursive
- Build the project using CMake in a dedicated
build
directory:
# Starting in the project root
mkdir build
cd build
cmake ..
make
The executable will be placed in build/bin
.
Note: The LBM GPU shaders are compiled at runtime for your specific hardware. Thus, additional shaders
and resources
folders are created in the bin
directory to store GLSL shaders and GUI assets needed by the executable.
This project is licensed under the MIT License.