3D/computer Graphics

Computer Science Side:

What I know how to do: matix manipulation, raytracing, GPU pipeline and programming, physics engine creation, fluid simulation, keyframing, interpolation, quaternion, kinematics, differential equations, particle dynamics, rigid body dynamics, deformable body dynamics, character animation, rigging and skinning, motion capture techniques, performance animation.

Art / Maya / Unity Side:

What I know how to do: model, texture, skin, rig, animate/keyframe. I have dabbled in everything one needs to do to create, render and record a 3D animation from the ground up with no outside work from anyone. Also importing and using in game engines.

 
 

LEGO MAN FIGHTING ANIMATION (MODELING AND ANIMATION)

Maya made animation of a two Lego characters fighting.  All modeling and animation done by me. Sources for non original materials (all sounds and some textures) in the video description.

Click here if all you care about is computer graphics.

Click here to watch the version with the intro (shows of video editing skills).

 

raytracing algorithm (python)

I wrote for a ray tracer. It parses files that give the algorithm a starting point, and the location of objects in 3D space. It then raytraces and draws to the processing screen what the user should see.

 

CS 4496 Projects

Over the course of the semester we had 6 major projects:

  1. Galileo’s Experiment.

    • Simulating gravity through 3 different numerical integration methods: Explicit Euler, Midpoint, and First-order semi-implicit Euler.

  2. Collision Detection & Handling.

    • Simulates 4 particles in a 3D space in which you must use a different numerical integration method to handle each one’s physics.

    • The methods were: analytical, Explicit Euler, Midpoint, and Implicit Euler. With these integration methods we were to do both linear, DeBoors, Catmull, and Bezier interpolation and the particles falling.

  3. Tinkertoy project.

    • This algorithm implements physics simulation, feedback terms, midpoint method, the ability to add more hanging beads onto the first one, hierarchical modeling, kinematics/inverse kinematics, as well as other things.

  4. Rigid Body Pinata.

    • This project implements collision detection/handling, deformable bodies, rigid bodies, quaternion, & linear motion.

  5. Fluid Simulation.

    1. Simulating a 2D smoke fluid simulation using a grid-based Eularian approach. Must obey Navior-Stroke equations, incompressibility, and boundary conditions. Implements semi-Lagrange method for the advect of velocity.

  6. Twister with a 3D human model.

    1. Created an interactive inverse kinematics solver that manipulates a human model. The user can grab onto end points on the limbs and manipulate the shape of the body in a realistic (although flexible) way.

For a more detailed explanation of any of these project or screen shots of code snippets, please click the “SEE MORE” button below.

Classes Pertaining to computer graphics:

CS: 3451 Computer Graphics:

  • Software / Languages / Enviornments

    • Python

    • Processing

    • C

    • OpenGL

  • Topics Covered & Had Assignments Based on Topic

    • 2D and 3D transformation (Matricies)

    • Projectio

    • Hidden surfaces

    • Color vision

    • Surface reflectance & Illumination

    • Texture mapping

    • Shadows

    • Anti-aliasing

    • Hardware graphics pipline (how a graphics card works)

    • GPU programming (shadders, textures, and how to read and implement them)

    • Ray tracing

    • Polyhedral models

    • Collision detection

    • Polynomial curves and surfaces

    • Subdivision of surfaces

    • Physics simulation

CS: 4496 Computer animation:

  • Software / Languages / Enviornments

    • C++

    • C

    • Dart

    • Visual Studio

    • OpenGL

  • Topics Covered & Had Assignments Based on Topic

    • Keyframe animation

    • Interpolation

    • Quaternion

    • Hierarchical modeling

    • Inverse kinematics

    • Differential equations

    • Particle dynamics

    • Rigid body dynamics

    • Articulated rigid bodies

    • Deformable body dynamics

    • Fluid simulation

    • Character animation

    • Rigging and skinning

    • Motion capture techniques

    • Performance animation