Acorn - A Game Design Doll Rig
Import Acorn (Instructions below).
Drag and drop the prefab
/acorn/acorn.prefabinto your project's scene Hierarchy.
default [FK] -CopyStartPose-or
default [IK] -CopyStartPose-animation clip under
/acorn/animation tools/FK-IK default poses/and rename it to whatever animation state name you will be prototyping (ie: idle, walk, jump).
Assign the animation clip to any
Animation Controllerof your preference, or drag and drop the clip into the
acornprefab on the hierarchy, if you don't have one yet, and this will create an
Animation Controllerwith your just duplicated animation clip attached.
acornprefab under your Hierarchy, and you should be able to see the duplicated animation clip assigned to the prefab and ready to be posed under the
Animationwindow. (You can find this window under
Animationtab, set your desired FPS under the
Samplesproperty (ie: 24, 30, 60), enable
Keyframe recording modeto automatically keyframe any edit you do on your pose, choose your desired frame to pose on and...
✨Start posing and have fun ✨!
Help) (Recommended):Using Unity Package Manager (
Make sure you have Git installed on your computer.
Add Dependencies using Unity's Package Manager with the following git URLs:
Add Acorn on Package Manager with the following git URL:
- From Acorn's Package Manager, Import into Project the necesesary assets:
acorn + tools= Includes Acorn's prefab, and animation tools.
examples= Includes example assets to give you an idea of what's possible.
Using Git or Zip download:
Make sure you have Git installed on your computer.
Dependencies are included on Acorn's Clone or Zip, but If you want to use Acorn in an existing project, add Dependencies on your Project using Unity's Package Manager with the following git URLs:
Clone or Download Zip:
- Clone Acorn:
git clone email@example.com:diegodelarocha/Acorn.git
- Download Acorn-master.zip
- Clone Acorn:
Manual Git-less download:
- Download Acorn-embeded_dependencies.zip
This approach only works on it's own Project, and is not recommended if you want to be able to pull updates constantly, but it's helpful, for folks, that don't have access to Git, or just want to try/play with Acorn
To make sure Acorn works, use a Unity Version
2019.3.2f1 or higher, since this is the version it was created and tested on. It might work on older versions as long as you can install the dependencies, but it's untested.
Set Up Assets Folder
/acorn/setup assets - Includes raw assets used to build the
/acorn/acorn.prefab, messing with any of these assets, might break your rig, so touch at your own risk
Examples and How To
Included you can find a Scene with some examples that showcases the rig's functionality under
Click on the
acorn prefab on the Hierarchy, and under the
Animation tab, you can preview the different animation clips.
FK - IK Switch
Acorn has both FK and IK functionality on limbs and head, and you can switch between these modes on all or a specific part of their body as you please.
FK - IK Switch - Inspector Menu
To access the FK-IK Switch menu, select
acorn's prefab on the Hierarchy, and you will find the component on the Inspector window.
This component has button switches, to switch all limbs and head at once, or separately, as well as a handy Visibility On/Off switch for all the character's handles.
FK - IK Switch - Set Animation Keyframes
To use the switch on animation clips, on the
Animator window, scrub to the frame you'd like to use the switch on, then press the switch button you want to use on the
Inspector, and press the
Add keyframe button on the
Animator to set a manual keyframe on Acorn. This will lock down the switch change on the selected frame.
Make sure to set the keyframes manually, since
Keyframe recording mode is not supported with these buttons
FK - IK Switch - IK Position & Rotation Match
Acorn's IK switch features IK position and rotation matching to the fk transforms on the switch for your convenience
FK - IK Switch - Preview Animation Without Controllers
To preview animation without controller handles, simply enter
Visibility OFF and
Visibility ON buttons on
If for some reason you need to preview the handles again while on
Play mode, the component script on Acorn's prefab, has a property at the bottom called
Handles Visibility, toggle that
off to your convenience.
To access the Mirror Pose button, select acorn's prefab on the Hierarchy, and you will find the component on the Inspector window.
This component lets you flip a pose to the opposite side, helpful on things like walk/run cycles
Body Parts Colour Swapping
/acorn/animation tools/animatable material colours/ you can find some coloured materials. While posing and the property
Keyframe recording mode is enabled, you can drag and drop a specific colour to any body part of the rig, and it will get saved on the animation clip as a reference keyframe, this should be useful to have visual representations on when a designer wants to communicate an event should happen at a specific frame and area of the body. (ie: At frame 5, hand goes red because particles of magic should come out of their hands at that moment).
Posing Example [Idle]
Example of an idle animation clip, to show how using Acorn, would work on a real world application to make an animation state.
/acorn/animation tools/interaction objects/ you can find different coloured object primitives, that can be used as placeholder objects to help communicate things like particles, items, or any other object that would interact with Acorn over time, just drag and drop them as children of Acorn's prefab on the Hierarchy so that you can add their transforms as properties on the same animation clip that you're using for the rest of Acorn, once you add them just keyframe away.
idle animation clip example, you can see this in use to accentuate and make clear on what frame we might want to see particles, or a trigger a sound when Acorn snaps their fingers
Avatar and Avatar Masks
You can find an
Avatar and an
Avatar Mask under
/acorn/animation tools/avatars, in case you want to combine and mask areas of two or more animation clips with the
On the following example, as
avatar mask greeting animation clip is playing,
avatar mask hip hand layer is toggled on and off to be able to add some right hand and hip sass to Acorn's pose. This layer is using an
Avatar Mask to only let this layer use the right arm's and hip's transformation data, making it very handy to layer in extra needed movement to have an option of placing Acorn's right hand on their hips if we choose to
- EasyButtons - Easy buttons for the Unity default inspector by Mads Bang Hoffensetz - LICENSE
- FastIK - Simple IK solver for Unity by ditzel - LICENSE
- GLTFUtility - Wonderful modified GLTFUtility importer for Unity by Bryant Drew Jones - LICENSE
- Newtonsoft's JSON library's Unity Package - by James Newton-King - LICENSE
Authors and Contributors
- Diego De la Rocha - Character Doll creation, Workflow, Animation examples, and SetUp
Bryant Drew Jones - GLTFUtility, and Game Design feedback
Daffodil - Programming help
Em Halberstadt - Trailer Sound design
Jonathan Levstein - Programming help
Malcolm MacDonald - MirrorPose functionality, Tool Inspiration, Programming help & Game Design feedback
Also, check out Malcolm's Unity's Asset Store tool - PoseableDoll, which inspired a lot of what Acorn wanted to be, to become alive
😍 💜 🙏 ✨
Yael Sagi - Programming help
This project is licensed under the MIT License - see the LICENSE.md file for details
Third Party Notices
This project contains a third party notice which contains a list of the licenses of third party software used to build Acorn - see the Third Party Notices.md file for details
In the hopes of a world with more positivity and care.
Acorn is a piece of software that would love to stay family friendly and violence free, hence, Acorn and their Author would really appreciate if you refrained from using Acorn to create any project or content that encourages, glorifies, incites, or calls for violence or phsycological and/or physical harm against an individual or a group of real or fictional characters; likewise, would appreciate that you do not use this piece of software to create any projects or content that glorifies or encourages the abuse of animals.
Understandably, there are sometimes reasons to create violent content (e.g., educational, newsworthy, artistic, satire, documentary, etc.) so if you’re going to use it on something violent in nature that is similar to the previous examples on this paragraph, please ensure you provide context to the user so the reason for using it is clear and is done in the most sensible way possible to all users, to protect their physical and mental health as much as possible
In general, content where guns, murder, fighting, sexual violence, extreme violence, exploding characters, gore, warfare, and any other disturbing, and/or abusive content is involved, should be a no no please
Mild violent content such as (e.g., stepping over someone's garden by mistake, or making too much noise without the intent being to just be mean, or mild violence with sensible human character mistakes, like a character in a stressful situation where this might cause the character to overreact and become a bit rowdy.) should be okay.
I just plea that if you choose to include violence in your content or project, please think twice, if it's necessary/and or important for your project to exist. I trust and hope that you will use these guidelines at the best of your judgement to promote positivity over hate.