Skip to content

Fufoz/magma

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Magma

Magma is a polygon for graphics test projects using Vulkan API.

Hail to the triangle!

Animation

This example demonstrates a skeletal animation. Model of a fish and accompanying skinned data is loaded from a gltf file. This data later gets passed to the vertex shader to compute a final skin matrix.

Boids

Boids sample demonstrates boids simulation using many fishes that moves in a school-like behaivour. The rules for simulating scools of fish were taken from Craig Reynolds boids paper. Beside these rules boids also avoid collision with virtual tank borders via sphere tracing technique in order to find the most unobstructed direction.

Fluid simulation

This sample implements a 2d fluid simulation by solving Navier-Stokes PDEs.
Instead of keeping track of each fluid particle individually(Lagrangian viewpoint) the problem domain is discretized by using 2d grid of cells, where each cell has certain fluid characteristics like velocity or pressure.
We then look at this fixed cells and and observe how fluid quantities change over time (a.k.a Eulerian viepoint).
At each time step we update these vector fields by solving aforementioned PDEs untill the fluid becomes divergent free.
References:

  • Robert-Bridson "Fluid Simulation for Computer Graphics" link
  • Nvidia GPU Gems 1 chapter-38 link

About

Magma is a polygon for graphics test projects using Vulkan API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors