Git Product home page Git Product logo

ep01_sandsim's Introduction

Recreating Noita's Falling Sand Simulation | Game Engineering - EP01

https://www.youtube.com/watch?v=VLZjd_Y1gJ8

Inspired by Noita, this is a simple "falling sand" simulation to demonstrate the mechanics and ideas behind Cellular Automata.

Building

NOTE(john): Currently requires at least OpenGL v3.3 to run. This will be addressed in the future to allow for previous opengl versions.

  • windows:
    • You'll need to have Visual Studio 2015 or greater.
    • From start menu, search for "x64 Native Tool Command Prompt for {Insert your Version Here}"
    • Navigate to where you have EP01_SandSim repo placed
    • run proc\win\compile_win_cl.bat
    • The executable will be placed in bin\
    • run bin\SandSim.exe
  • mac:
    • You'll need gcc
    • From the terminal, cdinto the root directory for this project.
    • run bash ./proc/osx/compile_osx_gcc.sh
    • The exectuable will be placed in bin/
    • run ./bin/SandSim
  • linux:
    • You'll need gcc
    • From the terminal, cd into the root directory for this project.
    • run bash ./proc/linux/compile_linux_gcc.sh
    • The exectuable will be placed in bin/
    • run ./bin/SandSim

Controls

  • [: Decrease paint tool radius
  • ]: Increase paint tool radius
  • c: Clear canvas of all particles
  • i: Enable/Disable all UI
  • p: Pause simulation
  • b: Enable/Disable post-processing
  • esc: Quit application
  • Left click mouse to paint particles into scene
  • Right click mouse to erase particles from scene
  • The user can drag & drop images into the program. Any .png, .jpeg/.jpg images will work.

ep01_sandsim's People

Contributors

mrfrenik avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.