Skip to main content

Breakdown: How an AR-15 Works

By August 12, 2022January 19th, 20233D Modeling, Animation

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.

M4 Carbine - World of Guns

M4 Carbine – World of Guns

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.

AR-15 Parts

AR-15 Parts

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.

Anar Akberli

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:

Individual Parts

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:

Lower Receiver

Upper Receiver

Bolt Carrier



Pistol Grip


Front Sight


Flash Hider


Carry Handle

Delta Ring

Charging Handle

Forward Assist

Ejection Port Cover

Trigger (burst)

Hammer (burst)

Bolt Catch

Magazine Catch

AR-15 XPresso Node Tree

AR-15 XPresso Node Tree

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.

Corona Node Material

Corona Node Material

Corona Materials

Corona Materials

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:

Front Sight Post Front Sight Post

Elevation Knob

Substance 3D Painter

Substance 3D Painter

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.


AR-15 Storyboard

AR-15 Storyboard

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 ๐Ÿ˜œ.


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 certainly made the process easier. With a feature known as the Take system, I was able to create all my animation scenes in one project file.

AR-15 Animation

Cinema 4D Takes

Cinema 4D Takes

AR-15 Firing Sequence

AR-15 Firing Sequence


AR-15 ExtractorWith 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.

After EffectsAfter Effects

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.

Fire Simulation


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!


Leave a Reply


This site uses Akismet to reduce spam. Learn how your comment data is processed.