Skip to content

Commit

Permalink
Merge pull request #7 from jojothka123/main
Browse files Browse the repository at this point in the history
Minor corrections, added Unlimited Params documentation
  • Loading branch information
SenkyDragon authored Jun 7, 2024
2 parents 63108ac + 4aad907 commit 6d54b17
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 10 deletions.
12 changes: 7 additions & 5 deletions docs/40-components/full-controller.mdx
Original file line number Diff line number Diff line change
@@ -1,15 +1,17 @@
---
description: Merge an entire pre-made animator controller into the avatar
description: Merge an entire pre-made animator controller, expression menu and parameters into the avatar
---

# Full Controller

> Merge an entire pre-made animator controller into the avatar
> Merge an entire pre-made animator controller, expression menu and parameters into the avatar
This is mostly useful for prefab creators. Provide an animator controller, VRChat expression menu, and expression parameters, and it will be merged into an avatar automatically.
If you're working on your own avatar, you should usually just add these things to your avatar's own controller, menu, and params instead. Advanced users may use this component for modularity.

Animation clips in your specified controller should have animated paths relative
### Animation Paths

Animation clips in your specified controller should usually have animated paths relative
to your prop's root. VRCFury will automatically rewrite any animation paths so they
work anywhere on the avatar.\
If you wish to animate properties on the avatar outside of the prop, you can specify a path from the root of the avatar (as you traditionally would), and they will
Expand All @@ -24,7 +26,7 @@ Therefore, you should use Write Defaults `on` for merged controllers, as convert
## Advanced Options

### Global Parameters
Normally, parameters used in a Full Controller will have a `VF##` prefix added to prevent parameter conflicts with other props or features on the avatar, effectively isolating the Full Controller from the rest of the avatar. Parameters defined in this list will not be prefixed and have their name kept as is, allowing you to interact with parameters in the avatar itself or other instances of the prop.
Normally, parameters used in a Full Controller will have a `VF##` prefix added to prevent parameter conflicts with other props or features on the avatar, effectively isolating the Full Controller from the rest of the avatar. Parameters defined in this list will not be prefixed and have their name kept as is, allowing you to interact with parameters in the avatar itself, other instances of the prop or with OSC apps that do not ignore the prefix.

If you want to make all parameters global, you can do so by entering a `*`. If you want to make all parmeters global except for a few, you can mark specific parameters as not global by prefixing them with a `!`.
:::note
Expand All @@ -37,7 +39,7 @@ All parameters listed here that are found in FX controllers listed above will ha
This allows you to rewrite the binding paths used in the animation clips used in this controller. Useful if the animations in the controller were originally written to be based from a specific avatar root, but you are now trying to use it as a re-usable VRCFury prop.

## Debug info
This will show any animation paths in the merged controllers not found as children of the object on which the Full Controller component is placed on. If you want the prop to be reusable, you should make use of the Path Rewrite Rules feature in `Advanced Settings` to rewrite these paths so they work with how the objects are located within the object. If you intend to animate these paths as absolute paths from the avatar root, you can ignore this as VRCFury will also try matching the paths from the avatar root.
This will show any animation paths in the merged controllers not found as children of the object on which the Full Controller component is placed on. If you want the prop to be reusable, you should make use of the Path Rewrite Rules feature in Advanced Options to rewrite these paths so they work with how the objects are located within the object. If you intend to animate these paths as absolute paths from the avatar root, you can ignore this as VRCFury will also try matching the paths from the avatar root.

A warning will be displayed here if a controller using Write Defaults `off` is detected due to the issue mentioned in the note at the top.

7 changes: 7 additions & 0 deletions docs/40-components/zzz-other.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,13 @@ This component uses constraints to always show the object that it is placed on a

Given an action for down, up and splay, this creates a puppet for toe control in your menu.

## Unlimited Params (Beta)

This component will optimize all synced menu-controlled Float and Int parameters into 16 total synced bits.

Non menu-controlled parameters and parameters used in two/four axis puppets are not optimized as they might be driven by OSC for features like face tracking or used for puppeting things like tails, ears or other avatar features.
This is to ensure real-time sync for those use cases.

## When-Talking State

This is a very simple component which activates the given action(s) only while the user is "talking" (with any viseme).
2 changes: 1 addition & 1 deletion docs/43-actions.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ If the Material Property should be applied to all renderers on the avatar, enabl
Note: Material Properties will be applied across the entire renderer, this is a unity limitation. If your shader has any, This can be avoided by using the Renaming function of your shader, for example [Poiyomi Rename Animated](https://www.poiyomi.com/general/locking#rename-animated).

## Scale
Scales the specified object to the defined multiplier. Note that this is not the absolute scale value, but rather a multiplier. For example, an object set to an absolute scale of 0.75 will be animated to ab absolute scale of 1.5 by a Scale action set to a multipler of 2.
Scales the specified object to the defined multiplier. Note that this is not the absolute scale value, but rather a multiplier. For example, an object set to an absolute scale of 0.75 will be animated to an absolute scale of 1.5 by a Scale action set to a multipler of 2.

## Material Swap
Swaps the material on the specified renderer and material slot to the defined material. Note that unity starts counting material slots at 0. If you are unsure of the slot number you want to animate, look at the Element number shown in the `Renderer` component on the mesh.
Expand Down
8 changes: 4 additions & 4 deletions docs/50-tutorials/troubleshooting.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,17 +24,17 @@ import reinstallAll from '../assets/reinstall-all.png';
### Still not fixed?

* Open the Unity Console tab by pressing Ctrl+Shift+C Unity, then click Clear on the top left. Take note of any errors.
* If there are errors related to AV3Manager, delete the folder for that plugin.
* If there are errors related to AV3Emulator, delete the folder for that plugin and (optionally) use Gesture Manager instead.
* If there are errors related to Poiyomi, delete the Assets/_PoiyomiShaders folder and import a fresh copy from their website.
* If there are errors related to AV3Manager, remove it in the VCC or delete the folder for that plugin.
* If there are errors related to AV3Emulator, remove it in the VCC or delete the folder for that plugin and (optionally) use Gesture Manager instead.
* If there are errors related to Poiyomi, reimport it using the VCC from https://poiyomi.github.io/vpm/.
* If there are errors related to Gesture Manager, ensure it is up to date in the VCC or get a fresh copy from their github.
* If there are errors related to some other script, try deleting it if you don't need it.

## Toggles or other properties "stick" or do not work at all

* This is most likely because of a [broken Write Defaults mix](/technical/wd#mixed-write-defaults).
* Look for a [VRCFury | Fix Write Defaults](/components/other#fix-write-defaults) component under your avatar's root (the same object containing the VRC Avatar Descriptor), and change it from `Disabled` to `Auto`. `Disabled` indicates that you clicked `Skip and stop asking` when VRCFury detected a (likely) broken WD mix and asked whether or not it should try to fix it for you automatically.
* In case `Auto` causes other issues or breaks something, please report this on the [VRCFury Discord].
* In case `Auto` causes other issues or breaks something, please report this on the [VRCFury Discord](https://vrcfury.com/discord).

## 'Client' does not contain a definition for 'Resolve' {#2019-vrm}

Expand Down

0 comments on commit 6d54b17

Please sign in to comment.