Getting Started
Package Types
Scene Setup
Custom Collision, Layers, and Tags
Key Differences from Standard Unity3D development
Economy
Attachments are things that can attach to avatars. The system is designed in a way that is flexible enough to support many different types of assets.
What can I make with this?
<aside> <img src="/icons/construction-crane_gray.svg" alt="/icons/construction-crane_gray.svg" width="40px" /> This package type is still being developed, more features will become available in the coming weeks. When these features are complete, you will be able to create all of the above.
Please let us know on Slack or Discord if you have any feedback as we develop this feature.
</aside>
What can I make today?
World
scope, you can create attachments that come with scripting components. This allows you to write your own logic for how the attachment follows your avatar.Example of an Aura attachment
Simply said, an attachment can be a simple 3D model that is attached to an avatar in a given slot. But it can be a lot more than that too.
<aside> <img src="/icons/construction-crane_gray.svg" alt="/icons/construction-crane_gray.svg" width="40px" /> Attachments have been recently introduced, and many more features are coming soon.
</aside>
Feature | Explanation | Status |
---|---|---|
Skinning | Skinned attachments are basic models that are skinned to the Avatar’s bone skeleton. When the avatar animates, the attachment mesh deforms with it. | Ready |
Bone Attachment | When this option is enabled you can select a bone to parent the attachment to. For example, a “Can of Coke” can be parented to the avatar’s Right Hand. | Ready |
IK Settings | Attachments can force one of four Avatar IK points (2 hands, 2 feet) to a specified target transform. For example, for a “Bicycle” attachment, you’ll want to IK the hands to the handle bar. | Ready |
Custom Actions | Attachments can give avatars additional abilities. For example, a sword attachment could define two custom actions: Attack and Block. With custom actions you will be able to specify additional avatar animations to play. | Coming Soon |
Avatar Animation Settings | Attachments can optionally override the avatar animations for its default clips. |
For example, if the avatar is running with a heavy sword, you may want a slightly different walk/jog/run animation. Or as a different example, for a hoverboard attachment, the avatar animations can be overridden to match the pose for standing on a hoverboard.
These settings also allow you to set if an attachment is visible or not while a specific avatar animation clip is playing. Same for IK settings | Ready | | Attachment Animation Settings | Allows you to set animation clips to play in sync with the avatar.
For example, when the avatar “jump” animation is playing, you can set what the “jump” animation should be on the attachment. These animations are synchronized between the avatar and the attachment.
This is the key feature that allows you to create a hoverboard where the jump animation looks like the avatar is jumping with the board. | Ready |
We enforce these performance limits to ensure all supported devices can load and render these attachments. While the universal scope may look very limiting, remember that users can have multiple attachments equipped, so this can quickly blow through memory and rendering performance budgets.
For example, if you are in an experience with 50 users, and each user has 4 attachments equipped, that’s 50 avatars and 200 potentially unique attachments that need to be in memory and rendered (which is a lot to load and render).
The limits are much higher for World
scope in order to give creators the flexibility to control budgets and quality. Participant counts can be limited to lower player counts, such as 5, which allows more room in memory for larger higher quality attachments.
Universal Scope | World Scope | |
---|---|---|
Vertex Count Limit | 2500 | 25000 |
Triangle Count Limit | 1000 | 15000 |
Sub Mesh Count Limit | 1 | 5 |
Minimum Bounds Size | 0.01m | 0.01m |
Maximum Bounds Size | 3m | 25m |
Texture Memory Budget | 2MB | 10MB |
← Previous
Next →