Computer Graphics @ Hanyang Univ.
All codes were written in python and based on PyOpenGL.
- Basic matrix calculations with NumPy.
- Drawing clock with a regular 12-sided polygon.
- Drawing a rotating triangle.
- Drawing a transformed triangle. (scale/rotate/translate)
- Drawing a transformed triangle in a 2D space.
- Drawing a rotating lines in 2D space.
- Drawing transformed triangles and its local frame in a 3D space.
- Implement gluLookAt function with only glRotatef and glTranslatef.
- To check that moving camera and moving world are equivalent operations.
- Implement myLookAt (same as gluLookAt) & myFrustum (same as glFrustum) function.
- Drawing cube by using indexed squares. (using glDrawElements)
- Drawing color-changing cube.
- Drawing a smooth-shaded cube.
- Drawing a transformed triangle in a 3D space.
- Drawing a hierarchical model of boxes.
- Visualize ZXZ euler angles.
- Comparing 4 orientation interpolation methods. (slerp/interpolateRotVec/interpolateZYXEuler/interpolateRotMat)
- Implement 2-joint arms using FK (forward kinematics).
- Implement 2-joint arm animation using interpolation of rotation matrix.
- Visualizing a Bezier curve.
- Implement the basic OpenGL viewer.
- Implement camera, projection control.
- Implement OBJ file parser and renderer.
- Implement bvh file viewer.