Subdivsion surfaces in the browser

Project Description

This project involves building a 3D modeling tool using subdivision surfaces. Our program will provide a small number points (control points), which the creator can freely move in the three-dimensional space. Our program then takes the control points and create a smooth surface by using subdivision. This project allows us to familiarize ourselves with the basics of subdivision surfaces and gain greater understanding basic geometric modeling concepts.

Project Guidelines

Camera movement and mesh placement
The camera movement code is given in the file InputController.js. We assume that the center of the mesh is placed at the origin (this assumptin can be loosely enforced).

Vector and matrix representations
We will be using the vector and matrix class from Three.js