Project Specifications
CPSC589/689

The project of this course includes the following major sections:

  1. Proposal
  2. Programming
  3. Application
  4. Report
  5. Presentation

Proposal
Each group must submit a proposal about the project. The proposal must be a very short document (1-2 pages) with the following information (use them as “guideline”)

  • Title
  • Abstract: Briefly describe what, why and how?.
  • Introduction: Problem Statement and Literature Review
  • Goals and Objectives: What will the project accomplish?
  • Methodology: How will you investigate the question? What will you do and how will you do it?
  • Expected Results: What do you expect to find out?
  • Timeline: When will you start? How long will each step take?
  • Works Cited: What sources were used?
  • The programming language? API? platform?
  • Group member's responsibilities (for undergrads)

Programming
It is the implementation of a modeling technique. This technique should relate to one of the following areas:

  • NURBS , Splines, B-Splines
  • Generic Surfaces including Surface of revolution, Ruled, Coons, and Cross-sectional blending Surfaces
  • Sketch-based modeling
  • Mesh processing
  • Subdivision Surfaces
  • Reverse Subdivision
  • Multiresolution and Wavelets
  • Implicit Modeling
  • Solid modeling
  • Volumetric modeling
  • Point based modeling
  • Procedural Modeling (Fractals, Physically based modeling)
  • any other modeling techniques with my approval

Rendering
Although this course is not about rendering it is necessary to use at least some basic rendering techniques. You are free to use any OpenGL functions or your own code for Phong shading or ray-tracing from CPSC453. If you are interested in using any other resource, you should discuss it with your TA or me.

Application
Your program should demonstrate an application of your chosen modeling technique through some exciting examples and objects.

Report and Presentation
All groups must provide a project report and present their work. The details will announce later.

Group Size
Each undergrad group is formed by two or three members. If these students want to have a team with more than three members or do their project individually, discuss the issue with me before submission of the proposal. In the end of the semester, each member of the group may be asked to evaluate contributions of other members of the group.
The grad students do their project individually.

Graduate students Paper Readings
Each grad student must present a paper related to the project in December.

Some ideas for projects

  • Implementing any paper of SIGGRAPH, EG , GI (or similar events) that includes some modeling aspects. As an example, a couple of years ago a group proposed the paper "Automated Generation of Interactive 3D Exploded View Diagrams".
  • Implement and/or modify one of my works. As an example a group last year proposed "Sketch-based modeling of parametric surfaces" and another one, "by-example strategy" for terrain modeling.
  • Using a "different but cool interfaces" for the standard models such as "painting interface" , "sketching", "image assisted", "brush", "handle", ... for surface/volume modeling. For example you can purpose "brush-based subdivision surfaces" or "sketch-based NURBS",.... As an example, in the past a group proposed using Wii remote for assembling 3D objects. Another group also proposed 3D modeling of objects from the output of Kinect.
  • Doing something exciting related to 3D printers (I have a small one in my lab).
  • Working on a domain-specific application related to the course material. For example, a group worked on a "Fish Modeler" and another group worked on "Cloud Modeling" in the past. They used and customized some of the course techniques (NURBS, subdivision). The students of cloud modeling project extended their work as a summer research in my group and we managed to publish it in a good conference. I have also seen projects for city modeling, plant modeling and tree modeling. Use similar ideas (face, body, trees, grass, clouds, pipes, digital earth, hair, tooth, ...)
  • Mesh/NURBS surgery/processing: cut/trim/segment/scissoring.
  • Modeling Natural Phenomena (plants, trees, clouds, water, lighting, fire, ...).
  • Non-Photo realistic Modeling: create/modify 3D models in a non-realistic way for the visualization purposes such as exploded view, tourist maps, cut-away view and supporting tools like pealing, drilling, magic-lens,...
  • Educational programs for modeling in computer graphics (making intuitive tools for teaching this course!), I am looking for multiresolution and solid modeling educational tools.

Last update: Feb 1, 2015.