SMU Guildhall Graduate Catalog — 2023 C31 CATALOG | Page 86

«

Jackson Barrett
Software Development
3D Skeletal Animation System
The goal of my thesis was to develop a 3D skeletal animation system that provides useful functionalities commonly found in game engines . Features of my artifact include importing animation data from FBX ( 3D model ) files , playback animations , blending animations , animation meta-channels , and an inverse kinematics solver .
I chose this project because 3D animation is present in nearly every modern 3D game . I have always been fascinated with how characters in games move and the technology that enables that motion . I wanted to strengthen my 3D math skills and my knowledge of the rendering pipeline . This project took approximately 340 hours to complete over the course of 10 months .
Working on this project helped me to strengthen my 3D math skills . I gained substantial knowledge of quaternions , including how to use them for rotational calculations , why they are used to store rotational data , and how to interpolate them . I also learned about the animation pipeline in game engines and the features that they support . Such things include animation blending techniques , approaches and algorithms for solving inverse kinematics , and animation data compression techniques .
I think all game programmers should consider building an animation system for their engines . Animation systems cover a wide range of topics and help you to expand your breadth of knowledge as a programmer .
86 SOFTWARE DEVELOPMENT