It's finally finished!
After roughly 509 hours of hard work, I completed my Kar98k animation. Here’s the final video:
A lot of people have asked, “How long does it take to put something like this together?” When they hear me tell them 500 hours, their jaw normally drops, and probably thinking I’m a crazy lunatic haha! I tend to be a bit OCD about a lot of things and happen to be a huge perfectionist. It’s certainly held me back. If I could release content more regularly, I think it would make a lot of folks happier.
One other thing I’d like to mention is that I suffer from Imposter Syndrome. Scrolling through Instagram, I see a TON of really great artwork. It constantly makes me think, man, there is absolutely no way I will ever be that good. That I’ll never have that “artistic” side. It’s true that the content I create isn’t exactly “artsy fartsy”. You’ll never find it in a gallery or anything like that. I’ve never been good at drawing, and to be be honest, I don’t really enjoy it. But I really appreciate the people that do!
I also want to say that I think Instagram can be a dangerous place. When you’re scrolling and see all this great work, it can really eat at ya. Make you feel you’re not good enough, and that you don’t fit in. The problem is that you’re only seeing everyone’s “demo reel”. Not the many pieces of work they’ve done that got them to where they are.
Anyway, just wanted to say that before anything else. Let’s get into the meat of it!
The first thing I do at the beginning of every project is research the crap out of it. So I ran a couple polls on YouTube, asking what kind of firearm they’d like to see animated. And of course the most-wanted piece was the beloved Kar98k. So that’s what I did!
One of the most helpful resources in trying to figure out how the Kar98k worked was World of Guns on Steam. It let’s you field strip tons of different firearms, hide/show parts, show part names, and show the main firing sequence. I can’t recommend it enough.
In order to get some of the finer details, I needed to dig a little deeper. Having all the part names, I was able to do Google searches and find high resolution images of mostly everything! Also having an interest in these rifles, I purchased a book on eBay, Bolt Action Rifles by Frank de Haas. I was curious how Paul Mauser himself came up with the famous action that a lot of hunting rifles still use to this day.
As I was creating some of the parts, I did run into a few snags with the bolt sleeve. So I found an actual one on eBay and purchased a digital caliper in order to get more accurate dimensions. This was however, the only part I needed to do measure.
When most folks think of modeling, they normally think of a CAD-based program, like SolidWorks. However, the kind of modeling I do is polygon-based. My tool of choice for the past 10 years or so has been Cinema 4D. SolidWorks can certainly do the job, but for certain things like texturing, it’s much easier to do if the model has proper quad-based topology.
In order to speed up the initial modeling process, I purchased a 3D model of a Kar98k.
This was a fantastic starting point, but this was a low-poly model, and none of the interior portions of the rifle were modeled. So I began breaking everything apart and renaming everything in the scene. Altogether, around 70 individual models had to refined/modeled! Here are a few of the ones I was most happy with:
After all the models were for the most part created, I was ready to begin rigging. This was by far my favorite part of the project. It makes the animation process 100x easier by assigning sliders to the movement of parts. For example, instead of manually animating the Trigger’s rotation, I assign a slider to it that defines a minimum and maximum rotation. For that same slider, I can also assign another part’s rotation. The Sear’s rotation is controlled by the same slider.
To set this all up, Cinema 4D has a fantastic system known as Xpresso. It looks daunting at first, but it’s really not too difficult. A good way to think about it is a visual programming language. Except it’s not exactly programming… lol. Because my brain doesn’t have the capacity for that.
Kar98k Rigging Animation
After everything was for the most part rigged, I was ready to start creating materials and textures. Cinema 4D is very capable of doing this out of the box. However, I wanted something a bit more photorealistic. With Corona renderer, I was able to create better looking metals and plastics with ease.
While most of the materials have a fairly simple setup, others took a bit more finesse to look nice:
When it came time to texture the stock, I wasn’t happy with the built-in wood shader that Cinema 4D offers. So I needed to create my own wood texture. To do this, I resorted to Substance Painter, which allows much finer control. The ability to add surface imperfections and roughness on the edges.
Before actually beginning the texture work, Substance Painter needs to know how the textures are applied. A process known as UV Unwrapping is done. I use a separate application called Rizom UV. Essentially all the geometry information needs to be laid out flat so that Substance Painter can apply the textures to the 3D surface. Think about taking a cube made out of paper, and cutting its edges so that it can be laid flat.
Before doing any actual animation, it’s important to establish the order of events that need to take place. This is where storyboarding comes in. A template of all the topics I’d like to cover, starting with most important and ending with least important. I’ll write a full script of the animation, and render out still frame images to accompany the script.
With all the shots established, and the script written, it was finally time to begin animating! Cinema 4D’s animation tools are pretty great, which definitely made the process easier. With a feature known as Takes, I was able to create all my animation scenes in one project file.
Kar98k Intro Animation
With all the animation data in place, it was time to begin the rendering process! A 3 minute, 40 second animation is a total 220 seconds. Each second of animation is 30 still frame images (assuming the animation runs at 30fps). So I would need to render AT LEAST 6,600 still images. And that doesn’t include the transition frames, as sections of the Kar98k fade in and out of place!
I’ve got a pretty decent computer, but I wasn’t about to let it chug for that long. Especially since I am using Corona, a CPU-based renderer. So I resorted to an external render farm known as Pixel Plow to do the work for me. It’s pretty simple… I send them my Cinema 4D project files, they render all my frames on their huge server, then I download the finished frames.
Kar98k Bullet Simulation
At about 1:48 in the animation is when the expanding gases from the powder charge propel the bullet through the barrel. For this particular part, I used a plugin called TurbulenceFD to create the fire effect. I was then able to overlay the rendered fire frames over the Kar98k animation.
As you can see, there are many pieces that make up a full animation! So again, when someone asks why it takes me so long to create these animations, hopefully this explains why 😛 I do think there are plenty of people out there that could produce the same quality of animation in a fraction of the time. Like I said, I can’t get past my OCD in making sure the geometry is as good as I can get it, parts don’t intersect, etc.
I hope this article was helpful to explain my animation process. If anyone has additional questions, feel free to use the comments section below and I will try to answer as quickly as I can!