And... that's a wrap!
9 months and about 850 hours later, the AR-15 animation is complete!
I love taking things apart and putting them back together. I think it’s why I’ve always had a fascination with mechanical parts and their relationship with one another. I’m certainly not an engineer by any means, but it doesn’t mean I can’t appreciate what goes into these little machines.
I come across a few comments about the “quality” of my animations. I think if anyone spent the amount of time I did on this, it would turn out just as nice! It really comes down to staying motivated and persisting through the end of the project. And for that, I don’t really have any tricks, other than going on walks and clearing my mind each day.
Anyway, enough with the boring stuff. Let’s get to the breakdown!
Before beginning in animated project, I start with research. Searching Google for “most popular firearm in the US” brings up the AR-15. I also got a ton of requests to do the AR-15/M16, so I wanted to cross this one off my list.
One of the most helpful resources in trying to figure out how the AR-15 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.
I did notice a few errors with the World of Guns model however. For instance, their version of the AR-15, the M4 Carbine, appeared to be a combination of both the full-auto and burst fire trigger mechanisms.
After an initial research phase, the next step was to actually build the 3D model. I would normally start by purchasing a basic rifle model from TurboSquid or CGtrader. I wasn’t super happy with the results on these websites, and wanted something a bit more accurate. So then I consulted a CAD website like GrabCAD and found a nice lower receiver to start with. However, I didn’t use any actual CAD files in my animation. The 3D files were only used as reference. I wanted a bit more control with texturing, and it also felt better knowing I created the model myself.
I modeled all the pieces inside Cinema 4D, which is more polygonal-based in its approach, as opposed to actual dimensions, where you might think of SolidWorks. I also did a ton of Google image searches for each part, and tried to get them as close to the original as I could.
I was also contacted by Anar Akberli, who offered his incredible 3D modeling skills to create the bolt/bolt carrier parts used in my animation. I did make a few small tweaks, more specifically with the cam pin track, but the majority of the credit goes to him. You can find his Instagram here: https://www.instagram.com/artaka3d/
In total there were about 150 parts that make up the entire AR-15 animation. This includes the M16 and M4 parts that show the auto/burst fire modes.
Click the thumbnails to see wireframes and additional angles:
After all the models were pretty much 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 movement. For that same slider, I can also assign the movement of the trigger spring. So one slider to control multiple parts.
To set all this up, Cinema 4D has an expression system known as… well, XPresso😜. It’s sort of like a dumbed-down version of programming. Because let’s face it… I’m definitely not a programmer haha.
After everything was for the most part rigged, I was ready to start creating materials and textures. I wanted something a bit more realistic, as opposed to some of the built-in tools that Cinema 4D offers. 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. Corona offers a node material graph that helps to provide a visual breakdown of how things are set up.
If you look closely at some of the parts above, you may notice they’re missing certain details, like screw threads. I was able to add this in at render time using a simple gradient, and Corona’s displacement channel feature:
There was one part that I did resort to using Substance Painter on… the elevation knob haha. Substance Painter allows even further control, essentially “painting” on details to each model. For instance, being able to apply scratches or fingerprints to certain parts of a model. The only reason I ended up using it on the elevation knob is because it has numbers and ridges that surround the perimeter of the part. I’m not sure this would have been possible to create as a Corona material, so I just created this inside Substance.
Before doing any actual animation, it’s important to establish the order of events that 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.
I should mention that storyboarding normally takes place before any modeling/texturing. However, I do things a little backwards haha! Since I absolutely hate sketching/drawing, I like to use rendered thumbnails in place of sketches. And since I probably need to create the entire model anyway… why not 😜.
AR-15 Firing Sequence
With all the animation data in place, it was time to begin the rendering process! An 8 minute, 30 second animation is a total 510 seconds. Each second of animation is 30 still frame images (assuming the animation runs at 30fps). So I would need to render AT LEAST 15,300 still images. And that doesn’t include the transition frames, as portions of the animation transition from one piece of footage to another.
I’ve got a pretty decent machine, with a 16-core CPU. But let’s be honest… with each frame of animation taking between 5-10 minutes to render, I wasn’t about to render the entire thing on that sucker. So I resorted to a render farm known as Pixel Plow to do the work for me. It’s pretty simple… I send them my project files, they render all my frames on their huge farm, and I get my rendered images in a fraction of the time.
After I had gotten all the rendered frames downloaded from the render farm, it was time to composite everything in After Effects. This is where I did some color-correction, added particles, lens flares, depth of field, etc. This is also where I added Andy Taylor’s amazing voiceover, as well as some music purchased from PremiumBeat and Storyblocks.
AR-15 Bullet Simulation
At about 2:33 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 AR-15 animation.
As you can see, there are many pieces that make up an entire animation! So again, when someone asks why it takes me so long to create these animations, hopefully this sheds some light on it 😋. I do think there are plenty of people out there that could produce the same quality of animation in a fraction of the time. I just have trouble getting 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 creation 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!
Thankyou for Presentation! It will help a lot as 3D Artist working in GunsModel!
You’re very welcome John! Good luck on your models 🙂
Matt, Thank you for your project. This is exceptionally well done.
Thank you so much Michael! That’s very kind of you 😃
Just found your channel and binge watched your animations. This is crazy… The amount of work…. Unbelievable to me. You must have lots of requests also on doing animations for companies and such, and well deserved. You are too humble, though. I do not think that a lot of people can do it like you did.
All the best to you
Oh man seriously, thank you so much! It’s such a good feeling knowing people are enjoying my animations. Especially the fact you are binging 🙂
It is so much work to put these together. I do wish I had the ability to pump them out quicker, as some other animators I admire. Something that will always bother me.
Anyway, thanks again for the kind comments! Reading things like this really drives me forward to create more 🙂
You are amazing. Can you please tell your all pc specifications.
Haha thanks Satyam! Nothing out of the ordinary spec wise:
Most of the rendering itself was done using an external render service. The modeling and animation portion itself doesn’t require a high spec machine.
Its amazing that you’ve put a lot of hard work into your project. Thanks for making such quality educational content for everyone.
I hope we would collaborate in the near-future.
Thank you so much Niranjan, that’s very kind of you. Really happy people are enjoying these videos and finding them helpful 🙂