diff options
Diffstat (limited to 'src/main.cc')
-rw-r--r-- | src/main.cc | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/main.cc b/src/main.cc index f685c8f..c9fb347 100644 --- a/src/main.cc +++ b/src/main.cc @@ -10,7 +10,6 @@ #include "buffer/vertex/fluid_cell_buffer.h" #include "buffer/vertex/lattice_cell_buffer.h" -#include "buffer/vertex/material_buffer.h" #include "shader/wrap/graphic_shader.h" #include "shader/wrap/compute_shader.h" @@ -67,7 +66,6 @@ int renderWindow() { std::unique_ptr<LatticeCellBuffer> lattice_a; std::unique_ptr<LatticeCellBuffer> lattice_b; std::unique_ptr<FluidCellBuffer> fluid; - std::unique_ptr<MaterialBuffer> geometry; std::unique_ptr<ComputeShader> collide_shader; std::unique_ptr<ComputeShader> stream_shader; @@ -78,12 +76,12 @@ int renderWindow() { lattice_a = std::make_unique<LatticeCellBuffer>(nX, nY); lattice_b = std::make_unique<LatticeCellBuffer>(nX, nY); - fluid = std::make_unique< FluidCellBuffer>(nX, nY); - geometry = std::make_unique< MaterialBuffer>(nX, nY, [](int x, int y) -> int { + fluid = std::make_unique< FluidCellBuffer>(nX, nY, [](int x, int y) -> int { if ( x == 0 || y == 0 || x == nX-1 || y == nY-1 ) { return 0; // disable end of world } - if ( (x == 1 || x == nX-2) && (y == 1 || y == nY-2) ) { + if ( ((x == 1 || x == nX-2) && (y > 0 && y < nY-1)) + || ((y == 1 || y == nY-2) && (x > 0 && x < nX-1)) ) { return 2; // bounce back outer walls } return 1; // everything shall be fluid @@ -105,8 +103,8 @@ int renderWindow() { auto pause_key = window.getKeyWatcher(GLFW_KEY_SPACE); - auto tick_buffers = { lattice_a->getBuffer(), lattice_b->getBuffer(), fluid->getBuffer(), geometry->getBuffer() }; - auto tock_buffers = { lattice_b->getBuffer(), lattice_a->getBuffer(), fluid->getBuffer(), geometry->getBuffer() }; + auto tick_buffers = { lattice_a->getBuffer(), lattice_b->getBuffer(), fluid->getBuffer() }; + auto tock_buffers = { lattice_b->getBuffer(), lattice_a->getBuffer(), fluid->getBuffer() }; window.render([&](bool window_size_changed) { if ( pause_key.wasClicked() ) { |