Bow and Arrow Rigging

Posted by Chris Plush on July 31st, 2012 | Comments (31)

This is the first part of a tutorial series. Check out the second part here: Bow and Arrow – Part 2 and learn how to take this rigged bow into the game engine.

If you don’t have your own bow to work with, download the start file for this tutorial here: bow_start.blend

Download the final rigged bow here: bow_final.blend

This tutorial series will take you through rigging and animating a bow and arrow. The goal for this series is to use this rig in a game to aim and shoot arrows with, but the rig in this tutorial is made for general animation as well. In this first part, we’ll rig the bow so that it bends back automatically when you pull back just one bone. We’ll do this by using IK constraints and a super awesome Limit Distance constraint. Thanks to Lee for helping me get past some obstacles finding the most accurate and efficient way to rig this.

Chapter List –

00:53 – Adding bones to the top and bottom of the bow, and adding a string bone
02:40 – Parenting the mesh to the rig
05:20 – Creating a main bone to parent the whole rig to
06:40 – Creating the top_ik bone to be the ik solver for the top of the bow
07:30 – Adding the IK constraint to the top of the bow
08:40 – Why the Limit Distance constraint doesn’t work on its own
09:42 – Creating a workaround to this problem by creating a new rotation bone
10:18 – Parenting the top_ik bone to the new rotation bone
11:25 – Adding a Limit Location constraint to the string bone
13:05 – Adding a new top_limit bone
14:00 – Parenting the top_limit bone and new rotation bone to the main bone
14:20 – Adding Limit Distance constraint to the top_limit bone
14:50 – Adding a Track To constraint to the rotation bone
15:47 – Duplicating and flipping the new top bones to the bottom
16:30 – Adding an ik constraint to the bottom of the bow
17:37 – Animating

Chris (blengine)

  • http://Website Cspy

    Great video. It showed me alot, but i was wondering if you could make a tutorial that also had arrows firing and reloading. Again great video and thx.

    • Chris Plush

      This is slated for the next tutorial in this series which will go over firing arrows in-game. I’m not sure when I’ll get around to making that but it’s definitely on the to-do list.

  • http://Website SpecialCrayonz

    I was just wondering; is there a limit on how many bones should be in an armature? I’m starting to work with Unity3d and performance is my biggest goal above all else. I don’t know if there is like an industry standard for things like this.

    • Chris Plush

      I honestly have no idea, but in just doing a quick test a cube being deformed by 500 bones runs noticeably slower than being deformed by 50 bones. It still wasn’t slow though, but be careful since I’m sure your games are going to have more than 1 character so it can add up. Just be as efficient as you can be and you should be fine.

      • http://Website SpecialCrayonz

        Fair enough, as with almost everything it boils down to trail and error. I appreciate it though.

  • Giancarlo Mora

    Hi guys! Great tutorial, thanks for sharing! Can we see more rigging tutorials drom cgmasters?

  • http://Website Bill

    Can you make a video on creating the textures for the bow or for similar low poly assets?

  • Chris Plush

    Giancarlo, I’m sure we’ll be doing a lot more rigging tutorials in the future.

    Bill, low poly modeling is my favorite thing to do, I’ll be doing a ton of tutorials on that(and in fact did quite a bit of that already in my environment creation dvd). After I finish my current DVD I’ll think about doing some free tutorials on low poly models.

  • http://Website Fand

    Wow,, cool tutorial,, waiting for next video

  • http://Website Walker

    This tut is exactly what I needed. I modeled a bow and didnt know how to rig it. Thank you!

  • Marcin Seredynski

    Thank you! I have just successfully rigged a simple bow I made thanks to your tutorial, and this is an achievement for a programmer!

  • http://Website Z.

    Hi there,
    I am new to blender and I have followed your tutorial. However for some reason, whenever I rig the bones exactly to the vertices, it being aligned to the bow string, whenever I pull back the bowstring, there are always two spots where my bow cannot be pulled back.
    I have tried remodelling the bones again, but it still did not work. Please give me some assistance.

    • Chris Plush

      Hi! It’s hard to know exactly what’s going on, you’ll have to post a blend file so I can help you out better.

  • ARtalasky

    Bone in the bowstring is not tied to it. All other bones work as they should.

    • Chris Plush

      Can you elaborate on this? I just double checked bow_final.blend in 2.71 and everything appears to be working as it should.

  • Thymic

    This is great! Everything works perfectly except the top-half. It seems the bones in the top half are not weighted to the top-half of the bow. I don’t know what I did wrong. Good video, though!

    • Thymic

      Not weighted to the top half of the mesh, I mean.

      • Chris Plush

        Hey can you email your blend file to me? I’ll take a look at it and see where things went wrong, email to

  • Logan Pratt

    hi chris. im following your tutorial and things are going wrong… very wrong can you help me?

    • Chris Plush

      Hey Logan, just emailed you. I look at the armature and didn’t see anything wrong with what you have so far.

  • Brandon

    Hey man thanks to your help I’ve got my bow completely rigged!!!

    • Chris Plush

      Great to hear! Have fun with it =)

  • Aindréas

    Great tutorial. Thank you so much.

  • Svet

    hello great tutorial!! can i make it as animation?

    • Chris Plush

      Glad you liked it! And are you asking if it can be animated(yes that’s what rigging is for), or if you can use this bow in your animation(yes if you credit me)?

      • Svet

        ty for the answer and i dont have animation yet .. i am new at blender and i hope ill learn how to make cool stuff like you 🙂

  • Thebutcher

    hi the video is awesome but why i cant go in edit mode for the main bone and string bone at the same time as you did at 06:10
    so i cant keep offset them .. if i select main bone and the others 2 my string bone is in pose mode or object mode i tried to make it all ofer again and it has the same effect i dont know where am i wrong would you help me please

    • Chris Plush

      It sounds like you added the string bone as a separate object, meaning you added it while in object mode instead of edit mode of the main armature. This can easily be fixed by selecting both sets of bones in object mode and press ctrl+j to join them together.

  • Eimantas Kabakas

    Hey, I am trying to rig the bow and I have a problem where I get the bow string, put it into place and then I merge all the bones into one and when I merge the bones with the bow, my bow string does not attack to the string of the bow but the rest of the bones are all fine. Can you help me ASAP please! Thanks.

    • Chris Plush

      Hey, if you’re still having trouble you can send the blend file to me at and I’ll check it out. It sounds like the vertices of the string weren’t added to the string bone vertex group, or maybe the string bone doesn’t have the same name as the vertex group, but I can investigate better if I had the blend.