Project for the Practical Computer Graphics Course at University of Siegen.
Features:
- Runtime generation of geometry from curves.
- Fully functional chess gameplay, including En Passant and Castling.
- Ability to undo all moves.
- Dynamic shadows and reflections of the entire environment.
- Overlays with dynamically blurred background.
- Multiple themes and transparency.
- Computer controlled opponent.
Webassembly and WebGL support is somewhat inconsistent across different browsers.
We use BrowserStack to make sure that this game runs on the widest range of devices possible.
Control | Action |
---|---|
Left Click | Select and move pieces |
Drag Right Click | Rotate camera |
Mouse Wheel | Zoom |
D | Run demo game |
A | Toggle AI |
Z | Undo last move |
T | Switch theme |
N | New game |
U/J | Horizontal geometry resolution |
I/K | Vertical geometry resolution |
Escape/Q | Quit game |
60% of the time, it works every time!
- Install CMake
- Install Python for Conan (Tested with 3.6)
- Install Conan as admin:
pip install conan
- Add Conan remote:
conan remote add bincrafters https://api.bintray.com/conan/bincrafters/public-conan True
- Clone the repository:
git clone --recurse-submodules https://github.com/flostellbrink/Chess
- Navigate into directory:
cd Chess
- Get dependencies:
conan install . --build --profile=emscripten_profile
- Build the project:
conan build .
- Run dev server:
python3 -m server