in OpenGL, C++
#1 Lamdertian Shading
#2 Glass and Mirror Materials
#3 Infinite Environment Lighting
3D Geometric Processing
#1 BVH Building
[Image below: BVH building for the cow model]
#2 Mesh Editor
In this project I implemented a simple mesh editor that can manipulate and resample triangle meshes, which is a tool that allows you to load and edit basic COLLADA mesh files that are now used by many major modeling packages and real time graphics engines.
In this task I implemented a method that simplifies a given model by applying quadric error simplification. This method was originally developed at CMU by Michael Garland and Paul Heckbert, in their paper Surface Simplification Using Quadric Error Metrics.
[Image below: Downsampling a beast model]
In this task, I implemented an upsampling processing function that makes a low resolution image displayed at a higher resolution.
[Image below: Upsampling a low-sampled torus]
In this task, I implemented resampling via Isotropic Remising, which makes the mesh as "uniform" as possible.
[Image below: Resampling a quadball]
- Edge Flip / Split / Collapse
In this task I implemented a local remeshing operation that "flips" an edge, which:
#Handles corner cases.
#Is memory allocated clearly.
[Image below: Edge flipping, splitting, collapsing]