- Character's rig, no matter
how powerful your computer is, can get very laggy real quick. Often enough, you can no
longer get a real-time playback in your 3D viewport. And that's one animator's worst nightmare. I'm Pierrick from P2design,
and in this video, I will show you how you can drastically improve
your rigs' performances. Let's get started. (Pierrick kissing cat) (screen whooshing)
(tranquil music) Before we try to solve the problem, we need to understand it, and this is the problem we want to solve. We have a simple animation of the cube and the frame rate is
below 24 frame per second. Now, this is not exactly a simple cube. This is a cube with a lot of subdivision and a vertex count of
almost 900,000 vertices. So you may think that I'm totally dumb and the solution is to use
the real cube and we are done. But if I now switch to another cube, you can see that my frame
rate is 24 frame per second, and we have a smooth animation but this one also has
almost 900,000 vertices, so I may not be so dumb in the end. So if it's not the dumber of polygons, and those two cubes use the same rig, what makes the difference? Let's have a quick look to the rig. It's made of three bones,
a squash and stretch bone, a root bone and one deformation bone. And both cube are using the same rig. Checking the red cube, we can see that it has a subdivision
modifier with a label of six subdivisions and it
has an armature modifier. It's bound to the armature using
only one deformation group, corresponding to the
deformation bone in the middle. If we now check the blue cube, it also has a subdivision
modifier with a level of six subdivisions, but it
has no armature modifier. The cube deformation is driven by the bone as the cube is a child of the bone. And while there's no visual difference between the blue cube and the
red cube deformation wise, the way these deformation are calculated is pretty different. The red cube uses an
armature modifier to deform. On each frame, the position
of each of vertices is calculated based on those modifiers, while on the blue cube it's
child and parent relationship, and those deformation are
calculated at the object level. It's like scaling and moving
the cube object instead of moving each vertices separately. So how can we apply
this to a character rig? As an example, I will use my character rig
trident from the course "Alive!" You can also get this rig for
free on P2design-academy.com. The first thing you want
is to put your armature into rest position. This way, you're sure there
is no transformation applied to any bones. And if you have an action
active, just close it. Now what we do is to jump
back into object mode, select our character
object, and duplicate it, and move it to a new collection. It's important to separate your object in different collections. The idea is to be able to
deactivate the collection in which the slow object is. If you just hide the object, you won't get that much
performance improvement. But if you deactivate the collection, then the object is no
longer calculated at all, and you get smooth animation. Once your mesh is duplicated, you can give it a more relevant name, like Trident Low Poly or whatever. And then the idea is
to remove the modifier that slows down the 3D viewport. In our case, the subdivision modifier, and the armature modifier. Then you need to show
only the skin and bone or deformation bones. On this rig, it's the very first layer. I have some corrective bones but I will only be using
the main deformation bones. From there, as I see
my rig in transparency, I will tap into edit mode and the idea is to separate your character
in different objects. So basically, I just follow
the topology of the character and I try to cut him in different slices. Double clicking to select a loop, then pressing V to reap the vertices. Once two loop are reaped, I can press L to select
the vertices in between, and P to separate them. I now have a new object and
I will repeat the process for all the bones along
my character's body. So it's a bit of a tedious process and I let you know how
much time it took me to prepare the rig in a few seconds but believe me, it's worth it. I worked on a project where
it was such a pain to animate because I couldn't reach a
real-time viewport playback. And we used this method and
it was such a joy afterward. So the little time spent here will definitely be worth it later on. Then you should give each
part a relevant name. That's why I display the
different bones' name. I will give all those objects
the same name as the bone. And once you are done with that, first, select one of the object, then the armature, and go into pose mode. Then press Control + P to
parent the object to the bone and choose Bone. Now, you don't need to go back and forth into object mode to be able
to select the other object. Just use the outliner,
then select the next bone. Press Control + P and choose bone. And you'll need to do that for all the separated
pieces of your character. Now, there's one exception. I advise you to keep
your head rig separate. So basically, just separate
the head of your character and give it an armature modifier. Separating the face in small
pieces is really not ideal, so I keep the head as
a classic rigged mesh but the other part of
the body will be children of the different bones in my armature. Before I show you the final result, I just wanna let you
know that my friend Yan, also known as YanSculpts, is back on YouTube and is
running a sale on his Gumroad. He has great courses to
learn character sculpting and character modeling in Blender. You'll find an affiliate link
in the description below. And by supporting him, you are
also supporting my channel. Use the code below to get
25% off on all his products. Converting and parenting the
model took me 35 minutes. If I play the animation
on the example rig, I get to about seven to
eight frame per second. Note that this is a test rig. The original rig is optimized
for the best performances. Now if I switch to our proxy model, I get a real-time playback
without any problem. So next time you build
a rig, once you're done, if it's too laggy, just
think about this trick. I'm sure you already spotted this kind of geometry on this kind of character. In feature film breakdowns,
you can use the proxy model for almost the whole animation process. And when polishing, you can
switch to the high poly model. This is the end of this video. I hope you enjoyed it and
I'll see you in the next one. (tranquil music)