Non-Destructive Avatar Editing

Learn how to easily and non-destructively edit avatars! This makes edits easy to change and revert!
Includes: Easy Avatar Material Swaps!
Easy Avatar Hue Shift!

Easy Avatar Material Swaps! (VRCFury)

Here’s how you can easily make material swaps by using VRCFury!

You can also swap materials by using Modular Avatar (which I will not be covering here).

  1. Install VRCFury by adding it to your creator companion and then to your project.

  2. Click the mesh that has the material you want to toggle.

  3. Click “Add Component” and add a VRCFury Toggle component.

  4. Click “Add Action” and then “Material Swap”.

  5. Drag the mesh component into the mesh slot. If the mesh has multiple materials, then click the materials dropdown of the mesh renderer component to make sure it is the right one. If not, change the material slot on the toggle.

  6. Scroll down in the inspector to the material, right click and click “Select Material” to show it in the Project window. If you don’t already have a material to switch to then click on it in the project window and then press ctrl + d to make a duplicate that you can change.

  7. Add the second material to the material slot of the VRCFury toggle.

  8. Change the path and name of the toggle. Type a name for a folder, then a slash (/), then a name for the toggle itself. This is how it will appear in your radial menu. You can use an existing folder, create a new one (even a sub folder of an existing folder), or use no folder at all.

Options

  1. Click the options. Tick “Save between worlds” if you want this toggle saved when you change worlds or relaunch VRChat. Otherwise it will reset on world change.

  2. If you want to set a custom menu icon then click that in options and drag the texture into the new slot.

Multiple Materials

  1. If you have multiple material swaps, click the 3 dots of the VRCFury toggle component, copy component, then click the 3 dots again and click paste component. Change the material to a different material. Then on both toggles click “Enable Exclusive Tags”, and type a new tag that’s the same for both of them. This ensures that only one toggle is active at a time.

  2. You may also want to make another toggle for the base material, the one that is active when none of the others are. Click the 3 dots, paste component, put your default material into the slot and then under options click “This is Exclusive Off State”


And that’s it! If you have any questions, look at the documentation!

Easy Avatar Hue Shift! (VRCFury)

Here’s how you can easily make a hue shift for a material for your avatar by using VRCFury!

  1. First use a shader that has a hue shift like Poiyomi! lilToon also works but is a bit more tricky! I’ll go over both!

  2. Install VRCFury if you haven’t already!

  3. Click the mesh that has the material you want to toggle.

  4. Click add component and add a VRCFury Toggle component.
    (You can add it on any part of the avatar as far as I know, but adding it to the gameobject that has the mesh with the material makes it easier to access that material and also keeps your toggles organized and intuitive).

  5. Click add and then click “Material Property”.

  6. Click “Options” and click “Use Slider Wheel”. Also click “Save Between Worlds” if you don’t want it to reset on world change or game restart.

  7. If you are using a shader like Poiyomi, right click the hue shift and set it to “Animated (when locked)”. Right click it again and click “Copy Property Name”. Then go back to your VRCFury toggle component and paste the name in the property box.

  8. If you’re using a different shader which you can’t right click to copy the property name, you will have to search for it instead. It might be under hue, or in the case of lilToon, _MainTexHSVG.
    NOTE: the property names are NOT the same as the text that appears in the inspector! Worst comes to worst, you can click the edit button next to the shader dropdown of your material to see the code of the shader and find the property name.

  9. If using Poiyomi, set the value to 1. This is so it starts at 0, 0% and then cycles through all the hues until it gets back to the initial color at 1, or 100%.

  10. In the case of lilToon, HSVG is a 4 dimensional value that encompasses the hue and 3 other properties. You may think that you only need to put 1 for the X value, but you actually need to put 1 for XYZ and W.

  11. Test it with gesture manager (included in the VCC)! If everything works then you did it correctly!

And that’s it! If you have any questions, look at the documentation!