trick/trick_sims/SIM_billiards
jmpenn ee2f824550
Disable unneeded SimObjects from default_trick_sys.sm in Trick exampl… (#1719)
* Disable unneeded SimObjects from default_trick_sys.sm in Trick example sims.

* Take out unit test disable. Add some S_defines I forgot.
2024-05-23 10:12:27 -05:00
..
models Refactor and test Variable Server. 2023-06-26 12:23:58 -05:00
Modified_data Refactor and test Variable Server. 2023-06-26 12:23:58 -05:00
RUN_break Refactor and test Variable Server. 2023-06-26 12:23:58 -05:00
RUN_hexagon Refactor graphics client to run in a single thread; remove extraneous files 2022-07-14 16:07:14 -05:00
RUN_test Refactor graphics client to run in a single thread; remove extraneous files 2022-07-14 16:07:14 -05:00
README.md Minor improvement to SIM_billiards 2022-07-20 15:56:02 -05:00
S_define Disable unneeded SimObjects from default_trick_sys.sm in Trick exampl… (#1719) 2024-05-23 10:12:27 -05:00
S_overrides.mk Refactor graphics client to run in a single thread; remove extraneous files 2022-07-14 16:07:14 -05:00

Billiards Sim

Playable simulation of a billiards table. Includes friction, impulse collision handling, and cue forces currently.

Angular forces on cue ball, user control of parameters, and detailed physics writeup coming soon :)



Pool Table Display

Located in models/graphics/cpp, uses the Libigl library for visualization.

Compile

libigl must be downloaded from Github : https://github.com/libigl/libigl

Clone it somewhere accessible, like your home directory. It does not need to be compiled.

libigl depends on Eigen3, which may (or may not) need to be downloaded and installed : https://eigen.tuxfamily.org/index.php?title=Main_Page

To compile:

cd models/graphics/cpp
mkdir build
cd build
cmake ..
make

The provided input files will automatically run and connect to the display.