
Christine Kneer
"Never accept the world as it appears to be. Dare to see it for what it could be."
CLASS PROJECTS
PBR Shader & SDF Model (OpenGL, GLSL)
-
An OpenGL Shader with plastic/metallic BRDFs and pre-computed irradiance, based on the paper: Real Shading in Unreal 4
-
Created a raymarched Signed Distance Field model of the loot box from Overwatch, which is integrated into the PBR pipeline

Monte Carlo Path Tracer (C++, OpenGL, GLSL)
-
A real-time shader-based path tracer
-
Naïve, direct and full lighting integrators, with multiple importance sampling
-
Implemented a variety of material BSDFs including specular, transmissive, microfacets materials etc.

LSystem Maya Plugin (C++, MEL)
-
L-System rewriting with dynamic geometric interpretation in Maya
-
Custom L-System command and LSystemNode

Mini Minecraft (C++, OpenGL, GLSL)
-
A three-person group project.
-
I implemented player physics which features smooth collison detection (using ray marching) and physics-based movement.
-
I implemented texturing and texture animation for different block types.
-
I implemented distance fog, post-process shaders for water and lava, block wireframe, waterwave.
-
I implemented third-person mode with a diverse emote system achieved purely through shaders.
_gif.gif)
Maya-Lite (C++, OpenGL, GLSL)
-
Ray casting for mesh component selection
-
Half-edge mesh data structure operations, including splitting edge, triangulating face, extruding face and Catmull-Clark Subdivision (with semi-sharpness) for mesh smoothing
-
Linear blend skinning deformation
-
Obj and json parser
_gif.gif)
OpenGL Fun (C++, OpenGL, GLSL)
-
Implemented surface shaders of various reflections and deformation.
-
Implemented post process shaders including greyscale, vignette, Gaussian blur, sobel, bloom, Worley noise warp and fish-eye.
_gif.gif)
Rasterizer (C++, OpenGL)
-
2D Rasterization which includes Triangulation, Pixel Row Intersection, Z-Buffering and Barycentric Interpolation.
-
3D Rasterization which includes perspective-correct interpolation.
-
Wireframe Rendering using Bresenham's line algorithm.

Scene Graph (C++, OpenGL)
-
Tree data structure where each node is a Rotate, Translate or Scale Node that store transformation matrices and optionally, some type of geometry.
-
Created a Doraemon figure by transforming and drawing 2D polygons!
_gif.gif)
FK/IK Editor (C++, Unity Plugin)
-
An interactive body kinematics plugin featuring FK, Limb-based IK and CCD algorithms