Skip to content

flostellbrink/Chess

Repository files navigation

Chess CI/CD

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.

Play Online

Preview

BrowserStack

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.

BrowserStack

Controls

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

Installation

60% of the time, it works every time!

Preparation

  1. Install CMake
  2. Install Python for Conan (Tested with 3.6)
  3. Install Conan as admin: pip install conan
  4. Add Conan remote: conan remote add bincrafters https://api.bintray.com/conan/bincrafters/public-conan True

Build

  1. Clone the repository: git clone --recurse-submodules https://github.com/flostellbrink/Chess
  2. Navigate into directory: cd Chess
  3. Get dependencies: conan install . --build --profile=emscripten_profile
  4. Build the project: conan build .
  5. Run dev server: python3 -m server