CSC 240: Computer Graphics

Homework 9: Blender and Ray tracing

Due: Friday, Dec. 2, 11:59pm on Moodle

The goal of this homework is to practice creating realistic 3D models in Blender (including lighting, texture mapping, and rendering in Blender). We will also practice ray tracing.

Part 1: Chess piece in Blender

For this part, the goal is to create a realistic chess piece in Blender.


  • Choose *one* (or more) of the chess pieces below to make, or you can choose a different chess piece picture and make that (as long as it is not from any existing Blender tutorial).

    chess_pieces.png (bigger image, credit: The House of Staunton)


  • It should be made from one continuous shape (like the wine glass that started from the cylinder or the cup that started from the sphere).

  • If you attempt a more difficult piece (like the knight), I'll try to scale the assessment so that it's as fair as possible. So the standard for a pawn will be higher, rook a bit lower, etc. (Note: you don't need to make the felt bottom part, it can all be the same material.)

Extensions: Choose one of the two extensions below.
  1. Lighting and Texture Mapping

    Create at least one light source that illuminates the chess piece in a similar way to your photograph. Think about how to position the light source and/or change its intensity to achieve the desired effect.

    The chess piece should be texture mapped. It's up to you how to do this. You're welcome to find your own wood texture to help with this part (or if your piece is a different material, try to find a texture that matches as closely as possible).

    Render the chess piece and save both a .png file, and a .blend file. Submit both on Moodle.

  2. Exporting to WebGL

    Follow the video tutorial below to enable exporting from Blender into WebGL (you can zoom in or out as necessary, by default it is very large!)

    Export from Blender to WebGL video tutorial

    Start from the github for Three.js. To find out where to put the addon, see the instructions for different platforms here.

    Use the file hw9.html as a template for after you've exported your model. All you need to do for this homework is change the relevant paths to where your files are located (and change the variable name from "chair" to something like "chessPiece").

    Save your .blend file and your .html file (rotating chess piece). Submit both on Moodle.

Part 2: Ray tracing

Instructions here: hw9.pdf. Scan your work (or take a picture) and submit it on Moodle as one file.


For this assignment, you are welcome to work together, but everyone should turn in their own work that they have created/written and understood. Please cite anyone you worked with and/or any resources you used at the top of your assignment.


Submit your blender file and the rendered image, and a picture or scan of your ray-tracing work.

  • hw9_chess.blend (everyone submit this)
  • hw9_chess.png for option 1 or hw9_chess.html for option 2 (Edit: also submit the JSON file)
  • hw9_raytracing.pdf (everyone submit this)