Programming Animation for Games

Now’s your opportunity to gain the skills to help secure a High Paying Career in game development with the skills provided in ProAnywhere’s online course, “Programming Animation for Games.” Learn the modern techniques for CPU and GPU, revealing how to properly implement C++ professionally. Everything is done from scratch with a step to step guide and the actual algorithms explained.


High Paying Skill

Learn a skill that highly sought after in the industry.

Become the "Go To" Person

Become the "Go To" person with the knowledge of the latest technology and techniques.

Gain Practical "How To" Knowledge

Learn how to implement real professional code. Not just learn the theory.

Gain a high paying skill, become an Expert in C++

Learn the skills needed to work professionally to program animation in games. 

Learn latest technology and technique. Become irreplaceable.

Companies are hiring programmers that know the latest techniques and technology. Become irreplaceable.


Trusted by 1,000+ students from around the world

What our students say about our training

Wenhao Ting

Beijing, China

"I knew how to program but I wanted the skills that gets me a job. I would send out my resume and nobody would call me back. After I included animation game programming portfolio projects, head hunters reached out to me. Some places I didn't even apply for! Now, I negotiate six figure salaries confidently. The bottom line is this, if you just want to learn how to code for fun, there are a lot of free coding camps online. If you
want to get a high paying salary for coding, take this training course taught by people that do this for real at major companies using those actual techniques on the job."

Rifat Altun

Istanbul, Turkey

"If I had one word to describe this training, it would be professional. From start to finish, each lesson goes in-depth on every line of code
and even traces back to where it came from in case you forgot what you coded many lessons ago. I felt like I understood everything that was happening to the point that it made me feel like C++ was easy (trust me, it is NOT an easy coding language.) I would recommend this course
to anyone coding for games, whether a complete beginner in coding or an advance coder. Because everything is explained and done right in front of you AND you get the code so you can check out what it is supposed to be, a beginner can follow along and TREMENDOUSLY improve their skills (and move up in rank AND PAY in the job market. An advanced user will learn from this because they will learn the current modern techniques and most likely learn some C++ features they were not aware of and how to use them professionally in a real software. I can't wait to see what gems ProAnywhere will give us next!"

Blake Fischer

NY, United States

"I've been buying books and invested in many online courses for programming. I was never able to follow or understand because they assumed I already knew how to replicate their setup or they claim it was really 'basic' and it is easy for me to figure out what they did on my own. The part they skipped was always the part I needed help and an explanation on why it works. Asking for help from 'experts' on forums is always a waste of time if you are learning because the only response you get is, 'Did you read the documentation, it is pretty clear. don't waste our time if you didn't read the documentation.' What interested me in this course was the fact that you get the source code. After purchasing this course, I was
really comfortable in C++. The lessons are very easy to understand and follow. The first couple of lessons of downloading the free software, installing it, setting up, and compile the first code was already more than any of the other courses I've done. I had to try and figure it out myself. I think this is the best online course for any programmer looking to even learn C++ and feel comfortable in a professional environment. On top of that, learning unique skills and having portfolio projects that makes you stand out is definitely where you get the most value."


In modern games today, animation is one of the most important parts. This is the curriculum that will walk you through everything you need to get optimized, production ready animation system up and running.

Module 1    Create Application Window   (6 Lessons)

  • Lesson 1 – Technical requirements
  • Lesson 2 – Create a project
  • Lesson 3 – Create class for application
  • Lesson 4 – Add OpenGL
  • Lesson 5  Using glad
  • Lesson 6 – Create a window 

Module 2    Implement Vectors   (4 Lessons)

  • Lesson 1 – Create a vector
  • Lesson 2 – Interpolate vectors
  • Lesson 3 – Compare vectors
  • Lesson 4 – Explore more vectors

Module 3    Implement Matrices   (5 Lessons)

  • Lesson 1 – Creating a matrix
  • Lesson 2 – Matrix operations
  • Lesson 3 – Transforming points and vectors
  • Lesson 4 – Inverting a matrix
  • Lesson 5 – Camera matrices 

Module 4    Implement Quaternions   (12 Lessons)

  • Lesson 1 – Creating quaternions
  • Lesson 2 – Retrieving quaternion data
  • Lesson 3 – Comparison operations
  • Lesson 4 – Dot product
  • Lesson 5 – Length and squared length
  • Lesson 6 – Unit quaternions
  • Lesson 7 – Conjugate and inverse
  • Lesson 8 – Multiplying quaternions
  • Lesson 9 – Transforming vectors
  • Lesson 10 – Interpolating quaternions
  • Lesson 11 – Look rotation
  • Lesson 12 – Converting between quaternions and matrices 

Module 5    Implement Transforms (7 Lessons)

  • Lesson 1 – Creating the transform
  • Lesson 2 – Combining transforms
  • Lesson 3 – Inverting transforms
  • Lesson 4 – Mixing transforms
  • Lesson 5 – Converting transforms to matrices
  • Lesson 6 – Converting matrices into transforms
  • Lesson 7 – Transforming points and vectors

Module 6    Build a Renderer (6 Lessons)

  • Lesson 1 – Shaders
  • Lesson 2 – Buffers
  • Lesson 3 – Uniforms
  • Lesson 4 – Index buffers
  • Lesson 5 – Rendering geometry
  • Lesson 6 – Simple shaders

Module 7    glTF File Format (3 Lessons)

  • Lesson 1 – How glTF files are stored
  • Lesson 2 – Exploring cgltf
  • Lesson 3 – Loading glTF files

Module 8    Creating Curves, Frames, and Tracks (6 Lessons)

  • Lesson 1 – Cubic Bézier splines
  • Lesson 2 – Cubic Hermite splines
  • Lesson 3 – Interpolation types
  • Lesson 4 – Frame struct
  • Lesson 5 – Track class
  • Lesson 6 – Transform Track class

Module 9    Animation Clips (5 Lessons)

  • Lesson 1 – Poses
  • Lesson 2 – Clips
  • Lesson 3 – Load the rest pose
  • Lesson 4 – Load joint names
  • Lesson 5 – Load animation clips

Module 10    Mesh Skinning (6 Lessons)

  • Lesson 1 – Skinning
  • Lesson 2 – Skeletons
  • Lesson 3 – Load bind pose from glTF
  • Lesson 4 – Load skeleton
  • Lesson 5 – Load mesh
  • Lesson 6 – GPU skinning

Module 11    Optimizing the Animation Pipeline (4 Lessons)

  • Lesson 1 – Pre-generating the skin matrix
  • Lesson 2 – Skin palette to value map texture
  • Lesson 3 – Quicker sampling
  • Lesson 4 – Pose palette generation

Module 12    Blending between Animations (3 Lessons)

  • Lesson 1 – Blend poses
  • Lesson 2 – Crossfade animations
  • Lesson 3 – Blend additively

Module 13    Inverse Kinematics (4 Lessons)

  • Lesson 1 – CCD solver
  • Lesson 2 – FABRIK solver
  • Lesson 3 – Constraints
  • Lesson 4 – IK for ground alignment of character's feet

Module 14    Dual Quaternions for Skinning (3 Lessons)

  • Lesson 1 – Dual quaternions
  • Lesson 2 – Skinning with dual quaternions
  • Lesson 3 – How to use dual quaternion skinning

Module 15    Rendering Crowds Instances (12 Lessons)

  • Lesson 1 – Store data in textures
  • Lesson 2 – Read data from textures
  • Lesson 3 – Encode animation data
  • Lesson 4 – Per-instance data
  • Lesson 5 – Create an animation texture
  • Lesson 6  Animation baker
  • Lesson 7  Create crowd shader 
  • Lesson 8  Create crowd utility class
  • Lesson 9  Blending animations
  • Lesson 10  Texture formats
  • Lesson 11  Combining animation textures
  • Lesson 12  Optimizing texel fetches


Join our Training

  • Skills for high paying career in game development
  • Master C++ professionally
  • Source code available so you can follow along
  • Step-by-step instructions
Join Now


We have subtitles in different languages


Frequently Asked Questions

Join our Training

  • Skills for high paying career in game development
  • Master C++ professionally
  • Source code available so you can follow along
  • Step-by-step instructions
Join Now