Control Rig For Unreal Engine 5

Posted By: ELK1nG

Control Rig For Unreal Engine 5
Published 3/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 7.85 GB | Duration: 7h 16m

Learn Control Rig within Unreal Engine 5 to create procedural animation systems.

What you'll learn

Learn the fundamentals of ControlRig for Unreal Engine 5

Create a procedural walk animation system

Create a procedural turn-in-place animation system

Learn various techniques to add dynamic motion to your character animations

Master ControlRig functions, variables and logic, and how to incorporate it into your project

Learn problem solving and debugging

Learn how to turn your idea from a concept into a working system

Gain an expert understanding of ControlRig's capabilities for use in your single & multiplayer games, videos and animations, UEFN projects and more

Requirements

No Unreal Engine skills or animation skills are required. This course takes you through every step, starting very slowly and gradually increasing in complexity until you fully master ControlRig for procedural and dynamic animations.

Description

In this course you will learn to use Control Rig in Unreal Engine 5, with a focus on creating procedural animation systems.This course is suitable for complete beginners, all the way through to professional animators and experienced game developers. It begins very slowly with detailed explanations and instructions to take you through creating procedural animation systems, which gives us a chance to explore and become familiar with various features of Control Rig.After creating a procedural walk system, we take a general look at some useful features of Control Rig, and experiment with systems that allow you to create characters that interact with the environment and move realistically.And finally we will create a procedural turn in place animation system, including troubleshooting, tweaking, and working through the logic step by step.The project file includes the completed versions of everything we create for Unreal Engine 5.2 and 5.3. This will be updated to include a 5.4 version when that version of the engine releases.The techniques and methods explored are suitable for single player and multiplayer projects. The techniques used within Control Rig are also suitable for UEFN. This applies to the fully procedural sections and the specific functionalities we explore inside of Control Rig (at the time of writing animBP access is not available in UEFN, preventing a combination with keyframed animation - but the majority of the concepts will still work).This information in this course is not available elsewhere, and is the result of many years of experimentation with Control Rig and procedural animation systems. My goal was to condense all of my experience with Control Rig into an easily digestible and understandable course, with explanations and diagrams at every step, so that you can learn a full mastery of how to use Control Rig for your own procedural and dynamic animations.I look forward to seeing you on the course, and for you to share your creations and ideas. I'm always available for a discussion of concepts/ideas/help with any project, even if your specific use-case isn't covered directly in this course.

Overview

Section 1: Introduction

Lecture 1 Introduction and overview

Lecture 2 Basic tips & troubleshooting

Section 2: Creating a Procedural Walk Cycle

Lecture 3 Initial Character Blueprint setup

Lecture 4 Initial Animation Blueprint setup

Lecture 5 Creating the ControlRig class

Lecture 6 Make ControlRig DO something

Lecture 7 Create an array of FootNames

Lecture 8 WorldSpace vs RigSpace explanation

Lecture 9 Save the default foot transforms to a new array

Lecture 10 Visualize the foot transforms with DrawTransform

Lecture 11 FullBodyIK node explanation

Lecture 12 Add one leg into the solver

Lecture 13 Add the rest of the legs into the solver

Lecture 14 SAVE FIRST! Collapse to a function

Lecture 15 Convert World transform to Rigspace transforms into the solver

Lecture 16 Explanation of how we will calculate the velocity

Lecture 17 Create the CalculateVelocity function

Lecture 18 Calculate how far the character has moved in the world

Lecture 19 Calculate how far the character moves per second and draw it

Lecture 20 Smooth the calculated velocity

Lecture 21 Add comments to the calculate velocity function

Lecture 22 Cycle explanation

Lecture 23 Creating the CalculateCycle function

Lecture 24 Test our cycle with a print node

Lecture 25 Creating the MoveFeetTransforms function

Lecture 26 Creating a FootLocked array of booleans

Lecture 27 Is the foot locked or unlocked logic

Lecture 28 Create the Swing Percent and unlock condition

Lecture 29 Unlocked logic and lock condition

Lecture 30 Include and test the MoveFeetTransforms function

Lecture 31 Making the unlocked foot snap back to the default pose position

Lecture 32 Creating the foot timing offset array

Lecture 33 Creating the PerFootCycle array

Lecture 34 Using the PerFootCycle instead of Master Cycle

Lecture 35 A basic interpolation for the swing phase

Lecture 36 Creating the foot prediction function

Lecture 37 Projecting the landing spot forward in the direction of velocity

Lecture 38 Scale the prediction time based on how long until the foot lands

Lecture 39 Change cycle speed based on the characters movement speed

Lecture 40 Creating the stride length variable, and calculating the cycle time in seconds

Lecture 41 Save the foot lift-off spot to a WorldLockedFootTransforms array

Lecture 42 Accurate interpolation between the lift-off to the landing spot, based on cycle

Lecture 43 Make the legs lift in an arc using a custom curve

Lecture 44 Make the lift height based on the movement speed

Lecture 45 Overview of the plan for foot traces

Lecture 46 A basic trace for every landing spot

Lecture 47 Random body motions and general improvements

Lecture 48 More advanced traces explanation and testing on a landscape

Lecture 49 Implementing more advanced traces

Section 3: Porting control rig to another character

Lecture 50 Porting the procedural animation system to another character

Lecture 51 Changing variables for the new character

Section 4: Various ControlRig features and tips for procedural animation

Lecture 52 Using controls to move the character

Lecture 53 FullBodyIK settings, and interpolating control targets

Lecture 54 Value Over Time to delay movements

Lecture 55 BasicIK node instead of FullBodyIK, when, where, how

Lecture 56 Finding the Primary and Secondary axis

Lecture 57 Automatically compute the pole vector

Lecture 58 Make a bone point in a specific direction

Lecture 59 Aim more bones at a target with various weighting and interpolation settings

Lecture 60 Randomize the target point

Lecture 61 Simulate character breathing with chest scale

Lecture 62 Combine with an idle animation and create a character class

Lecture 63 Make the character target a position in the actual game level

Lecture 64 Creating functions that can be used in any other ControlRig

Lecture 65 Create the RotateAroundPoint function, to rotate in RigSpace

Lecture 66 Incorporate the translation change when rotating around a point

Lecture 67 Create a function to rotate a single bone in place, in RigSpace

Section 5: Turn-in-place animation system

Lecture 68 The challenge, the goal, and the starting point

Lecture 69 Saving the accumulated rotation

Lecture 70 Negate any rotation of the character to keep the same world rotation

Lecture 71 Make the spine always look in the correct direction

Lecture 72 Adding the solver and starting a rotation timer

Lecture 73 Compensate for pieces of the total rotation offset

Lecture 74 Applying the calculations to see the result on the character

Lecture 75 Offset the rotation timing of each foot

Lecture 76 Searching for issues and the next steps to improve

Lecture 77 Problem solving

Lecture 78 Weight shift towards the grounded leg

Lecture 79 Make the movement more natural and bouncy

Lecture 80 Bug fixing, finalizing, and looking to the future

Game developers looking to add procedural animations to their project.,Animators who want to make their animations more dynamic and interactive.,Anyone who is curious about procedural techniques and the future of real-time animation