bio projects contact
computer graphics
computer graphics



Project Overview: NSERC

Helped to develop a graphical user interface for a rendering application called JCinema, the purpose of the application is to produce photorealistic renderings of biomechanical simulations of musculoskeletal systems (such as tendons of the hand, eye and forearm). JCinema works as a bridge between the simulator that outputs geometry describing a scene and an open source RenderMan package allowing for the production of high-quality output. My work has focused on the visualization of the simulation’s geometry for the JCinema user by developing the GUI application in which the user is able to view the simulation in a preview panel (created in OpenGL) and manipulate the orientation of the objects at any given time step over a specific time interval, hence setting key frames with the desired orientation. The user is presented with two viewing perspectives,  the render camera to preview the output animation and the scene camera that displays the x,y,z coordinates of the key frames in world space and the camera’s path through the interval. Once key frames are set, the user can apply various material attributes such as light source and surface shaders of each object for output.

Software: Implemented in Java using JOGL API using Eclipse IDE.

OpenGL Projects (UCI 112 Introduction to Computer Graphics):

  • Created own graphics library, my_opengl, recreating OpenGL’s modelview and projection stacks, relying on OpenGL for final rasterization. The library replicated the OpenGL’s matrix manipulations such as rotation, scaling, translation, push/pop, perspective view and camera setup (glFrustrum and gluLookAt). Project goal: familiarize students with OpenGL stacks, affine transformations and local versus global coordinate systems. Developed in C using MS Visual Studio and OpenGL

  • Created a simple spinner and revolver animation using OpenGL call back functions.

  • Implemented own lighting equation for a vertex shader. Project goal: familiarize students with illumination formulas and fundamental lighting concepts such as the Phong Illumination algorithm of processing illumination per vertex.

  • Implemented a 3D stereo rendering using OpenGL for monochromatic 3D objects using OpenGL’s accumulation buffer combined with different colour mask filters, was able to mimic a 3D effect with red-cyan glasses.

Software: Implemented in C using MS Visual Studio