top of page

Mini Maya

  • Implemented an application with basic Maya functionalities using OpenGL and Qt Creator. The functionalities include loading *.OBJ files with a half-edge data structure, employing Catmull-Clark mesh subdivision, enabling face extrusion, binding meshes to custom skeletons, and executing mesh skinning deformations

  • When finished editing the models, the application can export the mesh with the face colors into an USD file and launches a USD viewport to display the model.

​

Skills related: C++, OpenGL, GLSL, Qt Creator

Supports custom *.OBJ files and the vertices, half-edges, and faces would be parsed and displayed​

Supports custom *.OBJ files and the vertices, half-edges, and faces would be parsed and displayed​

Implemented Maya-like Polar Spherical Camera 

Implemented Maya-like Polar Spherical Camera 

Selected vertices, half-edges, and faces can be directly visualized

Selected vertices, half-edges, and faces can be directly visualized

Splits an half-edge into two by adding a midpoint vertex

Splits an half-edge into two by adding a midpoint vertex

Splits faces of any shapes into triangles

Splits faces of any shapes into triangles

Catmull-Clark Subdivision

Catmull-Clark Subdivision

Face Extrusion

Face Extrusion

Supports loading custom skeletons in *.JSON files and binding the mesh with the skeletons. When altering the position and orientation of the joints, the mesh vertices would also change by linear blending

Supports loading custom skeletons in *.JSON files and binding the mesh with the skeletons. When altering the position and orientation of the joints, the mesh vertices would also change by linear blending

After editing the mesh, the application can export the mesh with the face colors into a USD file and launch a USD viewport to display it.

bottom of page