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

