Mini-Maya
C++ / OpenGL / GLSL / QT
For my graduate-level graphics course CIS 5600: Interactive Computer Graphics, I implemented "Mini Maya," a miniature replication of the 3D computer graphics application Autodesk Maya. My mesh editor application hosted a variety of features, such as a user friendly GUI for mesh editing, various primitive mesh operations like face triangulation and subdividing, multiple file type importing, and a half edge data structure that allowed for vertex, edge, and face manipulation.
My responsibilities included:
-
GUI
-
Spinboxes for color (RGB) and position (XYZ)
-
Function buttons
-
Mesh component lists (vertices, half edges, faces)
-
Skeleton joint tree
-
-
Topology-Editing Functions
-
Vertex and join translation
-
Face triangulation
-
Edge splitting
-
Catmull-Clark Subdivision
-
-
Shader-based Skin Deformation
-
Linear blend skinning via bind matrices and joint weights
-
-
Polar Spherical Camera
-
Different File Types for Import
-
OBJ (Mesh)
-
JSON (Skeleton / Joints)
-
USD (Added for additional mesh file type supports)
-