Age | Commit message (Collapse) | Author |
|
|
|
i.e. restarting the simulation without clearing the geometry
|
|
|
|
This way walls may be drawn without disrupting the active fluid flow
even more than necessary.
|
|
e.g. check out `./compustream --size 512 128 --open --lups 300 --quality`
|
|
|
|
The GLFW window rendering loop used to dispatch the compute shaders was
restricted to 60 FPS. I did not notice this because I never actually
measured the computed lattice updates per seconds in addition to trying
to push the GPU to its limits. Turns out the lattice sizes I commonly
use can be updated 500 times per second comfortably… Now this looks more
like the performance gains promised by GPU computation.
|
|
|
|
i.e. implement the A-B pattern.
Dispatching only one compute shader per interaction-less simulation step
already yields very noticeable performance gains. All cell types are now
fully handled by the collide shader which further simplifies the code.
|
|
|
|
|
|
|
|
|
|
The collide shader became to crowded for my taste.
As a nice side benefit we can now execute interaction processing only
when actual interaction is taking place.
|
|
|
|
Replaces the density value which is actually not that useful for visualization.
Encoding integer values as floats by casting and comparing them using
exact floating point comparison is not very safe but works out for now.
|
|
|
|
Internal wall cells need to be disabled to prevent delayed propagation
of the reflected populations.
This is just quickly thrown together - both the visual drawing and the backend's
material handling remain to be improved.
|
|
|
|
|
|
|
|
i.e. move fluid vertex placement to appropriate vertex shader.
Do not amplify or shift fluid moments in any way prior to
passing it to the display pipeline.
|
|
|
|
This should provide much more flexibility.
For our purpose it would be useful if the vertex shader was executed
after the geometry shader (to apply the projection matrix) but alas
this is not the case. Thus the MVP matrix is applied during geometry
construction and the vertex shader only provides density extraction.
|
|
|
|
|
|
Improvised on top of computicles's scaffolding.
Works in a world where _works_ is defined as "displays stuff on screen that invokes thoughts of fluid movement".
|