Unity
This page is for unity stuff. Mostly VRChat focused.
Avatars
Tidbits
Sound sources
First you want to normalise your audio to -6 dB in an audio editing software to avoid the chance of vrchats safety turning it into the most quiet object in the universe. Then set audio to 3d, add the vrc spacial component and set the near and far. You want near to be atleast 1 or 2 meters, outside of that the volume will decrease.
Addons
Modular Avatar : Modular prefabs for avatars.
https://modular-avatar.nadena.dev/
What: This is a massive package of tools that comes down to making outfits and avatar components modular. What this means is prefabs become drag and drop and auto configure toggles, blendshape options, mesh hiding, etc etc. Of interest is how to make modular avatar components since it's more or less a solid way to add even your own custom stuff to an avatar; and make it also easily removable.
Why: Modularity is worth the effort. It adds stuff at buildtime so when you configure something it is easy to add and also to remove.
How: This thing does so much, use the documentation and guidance on the site.
VRCFury : Toggle Maker + SPS + tools
What: Primarily used for SPS - it does plug in socket autoaim. It also has a massive tool and utiltiy set for creating toggles, and a few other thing.
Why: It does the sex thing and makes toggle making super easy and quick.
How: Docs.
FaceEmo : Gesture making tool
https://suzuryg.github.io/face-emo/
What: Requires Modular Avatar - is the overall best tool for turning Blendshapes or animations into gestures usable on your model.
Why: Doing it manually SUCKS ASS. This also comes with a GUI so you can see what you're doing, make animations etc. It also applies everything on build time (it makes a MA prefab with all your settings). Downside is it turns your gestures into prefabs rather than baking them anywhere.
How: I figured out how to use it without reading the docs - but basically just apply animations to slots and read the docs if you get stuck.
Combo Gesture Expressions - Gesture Making Tool
https://docs.hai-vr.dev/docs/products/combo-gesture-expressions/reference
What: Older tool to do face gestures.
Why: Manual still sucks ass - This is just an older way of doing it that bakes it into an FX layer. This might fit into your workflow better I dunno. Or be more optimized? Testing needed.
How: See docs.
Gesture Manager - Avatar Testing Tool
https://github.com/BlackStartx/VRC-Gesture-Manager
What: NOT actually related to gestures. Allows you to test your avatar in the unity editor - Toggles, gesutres, animations, OSC, etc etc before going to VRC. Irons out 95% of bugs. Basically mandatory.
Why: Reduces the number of broken uploads to VRC by a factor of like 50. Why this one? It's the one I use.
How: Install, select gesture manager from tools dropdown, and then the object appears in your scene. Enter play mode and inspector on the gesture manager object to test the avatar.
AAO - Avatar Optimizer Toolset
https://vpm.anatawa12.com/avatar-optimizer/en/
What: Optimization tools. VERY useful - In theory basically replaces d4rk's one since it does more - but it's worse at automerging than d4rks so you might want both anyway
Why: One or few-click tools to optimize avatars in unity without time consuming blender steps. All optimization is RUNTIME so they can be copy and pasted between versions AND don't require blender versioning nightmare messes so you can change your base and still re-run the same optimization without redoing them.
It's so good I'm going to list the basic features:
- Trace And Optimize - Full auto, goes on every avatar. Merges any meshes not toggled, removes unused blendshapes, removes unused objects, etc etc.
- Merge Material - Semi automatic material merging. Basically just atlases all the masks/normals/textures/etc then merges the material. Again, when you upload/playmode the avatar, not before.
- Remove mesh by blendshape/box/mask/uv - Basically 'delete mesh by these criteria' for reducing unseen polygons.
- Merge Physbone - Less components.
How: See docs. Generally a case of add component to mesh or object -> Configure -> done.
d4rk's Avatar Optimizer
https://github.com/d4rkc0d3r/d4rkAvatarOptimizer
What: Another optimization toolset, mostly poiyomi focused. The auto-tools tend to work better than AAO for some reason?
Why: Primiarly a one click tool that does a lot of auto optimization. Why not just AAO? The trace and track auto tool in AAO isn't as good.
How: See docs. Add component, upload.
Meshia.MeshSimplification - Unity mesh decimation on build
https://github.com/RamType0/Meshia.MeshSimplification
What: decimation on build with preview
Mochifitter - Automatically move clothing from one base to another
Links:
- Booth Page: https://booth.pm/ja/items/7657840
- Doc profile database: https://docs.google.com/spreadsheets/d/1TD6dmhaX0phnp0ASIxu4zsl_ySf3m6JD81QquI_I5Mw/edit?gid=0#gid=0
- Webapp profile database: https://mochifitter.eringi.me/
What: Clothing you like on the wrong booth base? You can now convert it to yours.
Why: In practice it only gets you 90% of the way there, so it's good for rapid prototyping - You convert a bunch of outfits, try them out to see if the style works, then polish it up in blender.
Pros:
- Does 95-100% of the outfit fitting between bases within minutes. I gave it a few tries and it works remarkably well.
- Produces an FBX you can open in blender and fix bugs with.
- Saving like 10 hours of work dude, hot damn.
Cons:
- Not a free tool. (It's cheap, at 2500 yen + bad yen)
- Need the profiles. If you're converting from popular base outfit to unpopular base then these profiles likely exist. Profiles from unpopular booth to popular one is very unlikely though. Luckily popular booth -> the one you use is the usecase most of the time.
- Profiles are often not free either. I mean unless you purchased the avatar, which you did, right?
- Unity abomination. Recommend a dedicated project just to spit out FBXs, since it's big and will clutter up a main project
How:
Video tutorial: https://www.youtube.com/watch?v=1PzYYylFMlc (might be insufferable I haven't watched it)
Translate the readme it comes with from JP -> EN.
What you need:
- Mochifitter
- A "To" profile - This converts the outfit to the target booth base from a template. $to
- A "from" profile - This converts the outfit to the template from the booth base it was originally made for. $from
- An FBX of the target booth base. $target_FBX
- The FBX of the outfit you want to convert. $source_outfit_FBX
Install the profiles and mochifitter to a project. Then in the tool window, configure it with:
- The $to and $from conversion. EG: Manuka source, Shinano Target.
- The $source_outfit_FBX
- The $target_FBX (EG Shinano.fbx)
- hit convert
RATS - Animator Controller editing tools
https://github.com/rrazgriz/RATS
What : Adds human usability features to animator controller editing. We're talking copy pasting, colouring, changing the write default default (FINALLY), auto weight layer 1, extra labels, transition settings defaults, etc
Why: Removes annoying things, adds useful things. consider this mandatory if you are editing animator controllers.
How: See site.
Minor
Hai Lightbox Viewer - Lighting test
https://docs.hai-vr.dev/docs/products/lightbox-viewer
This lets you check your avatar in a number of lighting conditions. To be honest I don't use it too much because what it is missing is bad lighting. Good lighting is easy to target.
Shrink Blendshape Tool - Hides mesh under other mesh
https://booth.pm/en/items/8204058
What: This automatically creates shrink blendshapes for mesh that clips through other mesh during movement of an avatar.
Why: Shrink blendshapes allow mesh to be hidden under clothing and such without clipping through. IF the existing shrink shapes don't match your new clothing this should help you make new ones automatically instead of opening blender.
How: Dunno, it's in jap and I just use blender instead.
NekoBakoya Mask Texture Editor
https://booth.pm/ja/items/7528277
tl;dr draw masks for materials inside unity instead of inside your favorite image editor. Not sure what the appeal is.
Animation-Repathing
https://github.com/hfcRed/Animation-Repathing
tl;dr: When objects in the hierarchy are moved around this addon modifies attached animations to match. Useful in some cases?
Kami Pita
https://vrctool.booth.pm/items/7856294
From the JP translation, it looks like a tool to put hairs on different heads. If you don't want to open blender.
See Through Hair - Tool to make hair in front of eyes transparent
https://booth.pm/en/items/6610175
Last Imported Asset Highlighter
FoxLastImportedAssetFolderBold - https://booth.pm/en/items/8344999
Puts in bold the last imported asset so you can actually find it
Prefabs
Prefabs. Not really an addon, but something to actually include in an avatar rather than doing something just in unity.
VRLabs Ragdoll System
https://github.com/VRLabs/Ragdoll-System
Paid prefab that lets you ragdoll your avatar.
Worlds
Performance hog - Unflattened scene hierarchy:
In short: Game objects with too many children cause worse performance than a larger number of smaller sub-objects.
https://thegamedev.guru/unity-performance/scene-hierarchy-catch-that-performance-thief-part-2/
XAtlas- Lightmap Packing in Unity
https://github.com/z3y/XatlasLightmap
What: Lightmap Packing
Why: If you know you know
How: I haven't used this but I bookmarked it for later use so I'm adding it here if you want to check it out.