2018-01-25 11:00:05 +01:00
|
|
|
# mpri-graphics-project
|
|
|
|
|
2018-02-14 14:34:47 +01:00
|
|
|
|
|
|
|
A repository for the MPRI's Computer Graphics and Visualization course project.
|
|
|
|
A jelly-like ball bounces around.
|
|
|
|
|
|
|
|
[Course page](https://wikimpri.dptinfo.ens-cachan.fr/doku.php?id=cours:c-2-39)
|
|
|
|
|
|
|
|
|
[Slides](https://tobast.fr/m2/graphics/jelly.pdf)
|
|
|
|
|
2018-02-14 16:55:42 +01:00
|
|
|
## Compiling
|
|
|
|
|
|
|
|
The basic compilation is achieved by a simple `make`.
|
|
|
|
|
|
|
|
You can add additional compilation flags with `ADD_FLAGS="..." make`.
|
|
|
|
|
|
|
|
The produced binary is `./bounce.bin`
|
|
|
|
|
|
|
|
## Compilation flags
|
|
|
|
|
|
|
|
* `-DDEBUG_DISPLAY_WIREFRAME`: display the wireframe of meshes
|
|
|
|
* `-DDEBUG_DISPLAY_NORMAL`: display the computed normal vectors for each
|
|
|
|
vertice
|
|
|
|
* `-DMC_SHOW_PERF`: display Marching Cubes performance stats
|
|
|
|
|
|
|
|
## Run flags
|
|
|
|
|
|
|
|
* `-perlin`: replace flat ground by perlin noise
|
|
|
|
* `-qwerty`, `-azerty`: change the used keymap
|
|
|
|
|
|
|
|
For instance, `./bounce.bin -perlin -qwerty` will use perlin floor and a qwerty
|
|
|
|
keymap.
|
|
|
|
|
|
|
|
## In-app commands
|
|
|
|
|
|
|
|
* space: play/pause
|
|
|
|
* <, >: slow down/speed up animation
|
|
|
|
* 0: reset to default speed
|
|
|
|
* w, a, s, d (z, q, s, d in azerty): move camera
|
|
|
|
* q, e (a, e in azerty): rotate camera around y axis
|