← All projects

CHESS-O

Interactive 3D chess with a cheeky toilet mode

Context

Academic

Team

Solo

Duration

3 weeks

Year

2024

A 3D chessboard where CHESS-O rhymes with cesso (Italian for toilet), and the pun became the design.

01

The brief

A mid-course exam for the web development course, with one instruction: build a chessboard with a design twist. I had already worked as a web developer, so a flat board would have taught me nothing. I raised the bar myself.

02

The harder challenge

3D had always been the thing I wanted to explore and never had a reason to: modelling in Blender, and Three.js to put it on the web. The exam became the reason. I started from an existing 3D chessboard template, wired it into Three.js by hand and made it rotate in the browser.

03

The wordplay

Add an O to CHESS and you get cesso, Italian slang for toilet. That assonance is not a detail: it is the whole concept, and it is where the design twist the brief asked for came from.

04

Toilet mode

Flip the switch and the board changes skin. Every piece is chosen with intent: the toilet brush as the pawn, all the way up to the urinal and the bowl as King and Queen, and the board itself reworked to match. The pieces are a mix of sourced models and models I modified in Blender, then optimized as glTF so the scene stays light.

05

What comes next

The board rotates and can be explored; the next step is making it fully playable. Beyond the joke, this is the project that convinced me 3D on the web was my path: everything I have built in Blender and Three.js since starts here.

Approach & craft

Everything is mine: the Three.js scene, the Blender work on the pieces and the board (a mix of sourced models and models I reworked), the glTF optimization, all running in the browser.

Three.jsReactTypeScript

The outcome

  • A web development exam turned into my first 3D project for the browser
  • A rotating 3D board with a second skin, toilet mode, built on a pun
  • The project that started my 3D web path

Want something like this?

  • Brandingfrom €1,500
  • Simple sitefrom €2,500
  • Advanced websitefrom €5,000
See packages and pricing →
CHESS-O | Case study by Paolo Frassato