Skip to content

Releases: lyuma/Av3Emulator

v2.9.10: SDK 2022.06.03 + GM 3.6 + float fix

05 Jun 23:43
Compare
Choose a tag to compare

THIS VERSION ONLY WORKS WITH THE LATEST AVATAR 3.0 VRCSDK. PLEASE UPDATE FIRST!

Creator Companion not required. Standalone Avatar SDK is supported.

v 2.9.10: Compatibility with new VRCSDK; Upgrade to GestureManager 3.6.

Download version 2.9.10 .unitypackage HERE!
Download Av3Emulator .zip only (no GestureManager) HERE.

New features in v 2.9.10 (3.0 rc7):

  • Fixed legacy menu being completely broken.
  • Fixed ParameterDriver Copy when setting float parameters.
  • Made ParameterDriver Copy set boolean to true if negative, to match docs.
  • Allow dragging Expression Value in the Floats section of the inspector.
  • In the Floats section, "Value" will show the animated Animator parameter (if driven by curve) which may be different from the expression value which is used for sync and parameter driver Copy.

New features in v 2.9.9 (3.0 rc6):

  • Only compatible with the SDK VRCSDK3-AVATAR-2022.06.03 or newer! Please update the SDK if it is from before June 2022.
  • Added support for the new Copy ParameterDriver feature.
  • Bifurcate exported and internal float values to avoid pollution from AAPs. This should match game better, as you cannot sync an AAP value over the network.
    You will not see exportedValue and value sliders for floats. Value will represent what the Animator sees, while Exported represents the value which is synced (and used for parameter Copy).
  • Please let me know if there are bugs related to the bifurcated float parameters.
  • Make buttons compact by default to avoid issue with huge buttons.
  • Remove use of Reflection, as we are breaking compatibility with older VRCSDK versions.

New features in v 2.9.8 (3.0 rc5):

  • Allow all parameter types for contacts, Strech, IsGrabbed and Angle. (Thanks, bd_)
  • Fix for non-local clones and reduced logspam (Thanks, bd_)
  • Fix animated animator parameters (AAP) support for Debug Duplicate Animator.
  • Ensure animator window is refreshed when switching Debug Duplicate Animator.
  • Fix possible bug when using Default Animator to Debug in emulator control.

Using reflection, the emulator continues to be compatible with older pre-physbone SDK versions. This may be the last version of Av3Emulator supporting older SDKs.

Avatar Dynamics integration (read NOTE)

Latest VRCSDK provides Avatar Dynamics support built-in.

NOTE: To test Avatar Dynamics, you must have a Camera in your scene tagged as "Main Camera" (top of the inspector next to the layer dropdown).

To test, you must be in Game View. Make use of GameObject menu -> Align With View (Ctrl+Shift+F) for easily copying the Scene View to your camera transform.

This update hooks into the driven parameters on both PhysBone and ContactReceiver. Enabled by default. Can be disabled by ticking a box on the Emulator Control before entering play mode. Recommended to set Radius greater than 0.

OSC Now works in the emulator (opt-in): Supports sending and receiving OSC messages for your avatar. Off by default. Simply tick "Enable Avatar OSC" to turn it on.

Supports generating, loading and saving JSON config files for OSC for use in VRChat.

Compatible with VRCFaceTracking. Avatar switch messages are now implemented! Messages are sent without bundles for compatibility.

New OSC features
Avatar 3.0 explanation
(Open the above full explanation image)

See more features and bugfixes in the README.

v2.9.9: Update to SDK 2022.06.02 + GestureManager 3.6

03 Jun 03:44
Compare
Choose a tag to compare

THIS VERSION ONLY WORKS WITH THE LATEST AVATAR 3.0 VRCSDK. PLEASE UPDATE FIRST!

Creator Companion not required. Standalone Avatar SDK is supported.

v 2.9.9: Compatibility with new VRCSDK; Upgrade to GestureManager 3.6.

NOTE: The UnityPackage was updated at 2022-06-03 23:50 GMT to include GestureManager 3.6. Previous downloads were packaged with GestureManager 3.5 + Initialize patch. Av3Emulator code is identical in both cases, so they are still technically v2.9.9, but you may wish to download again.

Download version 2.9.9 .unitypackage HERE!
Download Av3Emulator .zip only (no GestureManager) HERE.

New features in v 2.9.9 (3.0 rc6):

  • Only compatible with the SDK VRCSDK3-AVATAR-2022.06.03 or newer! Please update the SDK if it is from before June 2022.
  • Added support for the new Copy ParameterDriver feature.
  • Bifurcate exported and internal float values to avoid pollution from AAPs. This should match game better, as you cannot sync an AAP value over the network.
    You will not see exportedValue and value sliders for floats. Value will represent what the Animator sees, while Exported represents the value which is synced (and used for parameter Copy).
  • Please let me know if there are bugs related to the bifurcated float parameters.
  • Make buttons compact by default to avoid issue with huge buttons.
  • Remove use of Reflection, as we are breaking compatibility with older VRCSDK versions.

New features in v 2.9.8 (3.0 rc5):

  • Allow all parameter types for contacts, Strech, IsGrabbed and Angle. (Thanks, bd_)
  • Fix for non-local clones and reduced logspam (Thanks, bd_)
  • Fix animated animator parameters (AAP) support for Debug Duplicate Animator.
  • Ensure animator window is refreshed when switching Debug Duplicate Animator.
  • Fix possible bug when using Default Animator to Debug in emulator control.

Using reflection, the emulator continues to be compatible with older pre-physbone SDK versions. This may be the last version of Av3Emulator supporting older SDKs.

Avatar Dynamics integration (read NOTE)

Latest VRCSDK provides Avatar Dynamics support built-in.

NOTE: To test Avatar Dynamics, you must have a Camera in your scene tagged as "Main Camera" (top of the inspector next to the layer dropdown).

To test, you must be in Game View. Make use of GameObject menu -> Align With View (Ctrl+Shift+F) for easily copying the Scene View to your camera transform.

This update hooks into the driven parameters on both PhysBone and ContactReceiver. Enabled by default. Can be disabled by ticking a box on the Emulator Control before entering play mode. Recommended to set Radius greater than 0.

OSC Now works in the emulator (opt-in): Supports sending and receiving OSC messages for your avatar. Off by default. Simply tick "Enable Avatar OSC" to turn it on.

Supports generating, loading and saving JSON config files for OSC for use in VRChat.

Compatible with VRCFaceTracking. Avatar switch messages are now implemented! Messages are sent without bundles for compatibility.

New OSC features
Avatar 3.0 explanation
(Open the above full explanation image)

See more features and bugfixes in the README.

v2.9.8

25 Apr 04:53
Compare
Choose a tag to compare

v 2.9.8: Fixed bugs with av3 parameters; improved Debug Duplicate Animator; Upgrade to GestureManager 3.4.

Download version 2.9.8 .unitypackage HERE!
Download Av3Emulator .zip only (no GestureManager) HERE.

New features in v 2.9.8 (3.0 rc5):

  • Upgrade GestureManager to version 3.4 in the .unitypackage build. Some constructor arguments changed, so be sure to upgrade both.
  • Allow all parameter types for contacts, Strech, IsGrabbed and Angle. (Thanks, bd_)
  • Fix for non-local clones and reduced logspam (Thanks, bd_)
  • Fix animated animator parameters (AAP) support for Debug Duplicate Animator.
  • Ensure animator window is refreshed when switching Debug Duplicate Animator.
  • Fix possible bug when using Default Animator to Debug in emulator control.

Using reflection, the emulator continues to be compatible with older pre-physbone SDK versions. This may be the last version of Av3Emulator supporting older SDKs.

Avatar Dynamics integration (read NOTE)

Latest VRCSDK provides Avatar Dynamics support built-in.

NOTE: To test Avatar Dynamics, you must have a Camera in your scene tagged as "Main Camera" (top of the inspector next to the layer dropdown).

To test, you must be in Game View. Make use of GameObject menu -> Align With View (Ctrl+Shift+F) for easily copying the Scene View to your camera transform.

This update hooks into the driven parameters on both PhysBone and ContactReceiver. Enabled by default. Can be disabled by ticking a box on the Emulator Control before entering play mode. Recommended to set Radius greater than 0.

OSC Now works in the emulator (opt-in): Supports sending and receiving OSC messages for your avatar. Off by default. Simply tick "Enable Avatar OSC" to turn it on.

Supports generating, loading and saving JSON config files for OSC for use in VRChat.

Compatible with VRCFaceTracking. Avatar switch messages are now implemented! Messages are sent without bundles for compatibility.

New OSC features
Avatar 3.0 explanation
(Open the above full explanation image)

Other changes:

  • Upgrade GestureManager to version 3.4 in the .unitypackage build. Some constructor arguments changed, so be sure to upgrade both.
  • Allow all parameter types for contacts, Strech, IsGrabbed and Angle. (Thanks, bd_)
  • Fix for non-local clones and reduced logspam (Thanks, bd_)
  • Fix animated animator parameters (AAP) support for Debug Duplicate Animator.
  • Ensure animator window is refreshed when switching Debug Duplicate Animator.
  • Fix possible bug when using Default Animator to Debug in emulator control.

See more features and bugfixes in the README.

v2.9.7: OSC and Avatar Dynamics stability update.

06 Mar 20:37
Compare
Choose a tag to compare

2.9.7: Fix for VRCPhysBone and VRCContactReceiver components disabled by default.

v 2.9.6 and v 2.9.7 are mostly a stability update to fix common issues with running the emulator.

Download version 2.9.7 .unitypackage HERE!
Download Av3Emulator .zip only (no GestureManager) HERE.

Grabbing and posing should work more reliably now. Make sure not to leave your bone Radius at 0.

  • Made AvatarDynamics parameters more strict to match VRC implementation, so float params must be float; bool params must be bool, and so on.
  • Fixed issues with grabbing and posing bones.
  • Fixed more build errors.
  • Fixed grabbing bones not working when the OSC folder was missing.
  • Added some try/catch for exceptions related to the OSC folder in LocalLow.

A long-awaited release with lots of features to match VRChat's latest feature frenzy: OSC Support and Avatar Dynamics. This is listed as a release candidate for 3.0 which will hopefully support package manager.


New features

Release notes: Issues with DynamicBone and Build and Publish are now fixed. The release package below includes GestureManager, but now defaults off and has a nice UI for toggling it on/off in-editor. If you really do not wish to have GestureManager in your project, you can do so by downloading the Source Code zip below instead of using the unitypackage.

Features? OSC for parameters (click the Enable OSC checkbox). Debugging, Config generation. New way of debugging animator without the "Animator to Debug" layer duplication issue.

Bug fixes? Quite a lot. Uploading with av3 emulator should be safe again. Fixed mirror clone issues.

Bugs? Almost certainly. Please let me know. File issues here or DM Lyuma 0781.

New OSC features
Avatar 3.0 explanation
(Open the above full explanation image)

Full feature list in v 2.9.5 (3.0 rc1):

This build is compatible with all recent SDK versions, including Avatar Dynamics beta. Open Beta is optional.

  • Avatar Dynamics integration (optional) This update hooks into the driven parameters on both PhysBone and ContactReceiver. Enabled by default. Can be disabled by ticking a box on the Emulator Control before entering play mode.
  • For non-open beta, now supports hot reloading scripts without restarting play mode. This can be useful for rapid testing.
  • OSC Now works in the emulator (opt-in): Supports sending and receiving OSC messages for your avatar. Off by default. Simply tick "Enable Avatar OSC" to turn it on.
  • Implement IK sync of open parameters if you spawn a "non-local clone"
  • Supports generating, loading and saving JSON config files for OSC for use in VRChat.
  • Compatible with VRCFaceTracking. Avatar switch messages are now implemented! Messages are sent without bundles for compatibility.
  • Checks for PipelineSaver component: No longer should block upload.
  • GestureManager menu is now off by default, and easy to switch on and off as needed.
  • No longer crashes when some animators are set to null or VRCSDK is installed in the wrong place.
  • Try to reduce inspector bouncing while navigating menu.
  • Added new Jump box to simulate a jump (grounded, up velocity, down velocity). Also supported from OSC.
  • Improved a bunch of bugs with Mirror and Shadow clones thanks to 3. They can be disabled by clicking the boxes in the main Emulator Control.
  • Merged in contribution by 3 to support head scaling.
  • Many more bugfixes.

v2.9.0: GestureManager radial menu, mirrors and more

05 Dec 09:53
Compare
Choose a tag to compare

A long-awaited release with lots of bugfixes including the "ignoring layer weight" issue, and some new and exciting features.

New features in v 2.9.0 (3.0 beta):

Release note: Lyuma's Av3 Emulator now comes in two versions: lite/classic version with a basic menu; and the other which includes VRC-Gesture-Manager and the radial menu.


  • New! Integration with the Avatar 3.0 Menu when VRC Gesture Manager by BlackStartx is installed.

  • Support for MirrorReflection duplicate with only FX playable (can choose which version to show/hide).

  • Attempt to emulate the uninitialized state for remote players.

  • Add a "update interval" to simulate network delay when sending parameters.

  • FIXED: Default layer weights were being ignored. Unity defaults layers to weight 0, and this should make such mistakes easier to catch.

  • FIXED: Add ParameterDriver was failing half the time.

  • FIXED: AngularY float range to match smooth turn in VR (by NotAKidOnSteam)

  • FIXED: GestureWeight is always 0 for neutral; always 1 for most gestures, and only varies from 0 to 1 for Fist.

  • FIXED: Local player bounds forced to update when offscreen; and animator culling turned off.

Download Classic Menu edition of version 2.9.0 HERE!

Download radial menu + Gesture Manager and version 2.9.0 HERE!

Avatar 3.0 explanation
(Open the above full explanation image)

Known issues: Edit Mode in radial menu does not work

As always, watch out for mistakes with Write Defaults. Also, while animating your own avatar might work for you, it may break the avatar for remote players in game: this cannot be perfectly replicated in editor.

v2.2.2: Bugfix to upload process, and random int

02 Jun 02:31
Compare
Choose a tag to compare

YOUR SDK MUST BE 2021 OR LATER!!! THIS UPDATE IS NOT COMPATIBLE WITH SDK FROM 2020 OR EARLIER!!

KNOWN ISSUE: Having a "Avatar 3.0 Emulator Control" object in your scene can cause uploads to fail. Please delete the Emulator Control from your scene before uploading an avatar.

In 2.2.2:

  • Fix max value for random int, for example used in ragdoll system (Thanks, ksivl)
  • Fix crash when emulator is enabled and exiting play mode (Thanks, ksivl)
  • Made a further attempt to mitigate interfering with the upload process if a PipelineSaver component is present.

In 2.2.1:

  • Fix off-by-one errors with layer and playable weight changes
  • Fix bugs with layer control behaviours
  • Fixed saved parameters. They were broken in the last update.
  • Logspam, exception fixes; TPose testing; Added AvatarVersion=3

In 2.1.x:

  • Supports new features in VRChat 2021.1.1
  • Expression menu support for Bool and Float toggles and submenus, in addition to existing support for Int.
  • Removed support for Parameter Drivers from sub-animators, to match ingame. Use a checkbox on the "Avatar 3.0 Emulator" control object to re-enable the legacy behavior for nostalgia sake, I dunno.
  • To test saving, there is a checkbox (on by default) which keeps saved parameters when the avatar is reset.
  • Supports synced bools and triggers same as ingame. The rules for "Add" and "Set" operations are different for bools and triggers in expression parameters and those not. See below for the rules.
  • Fixed issues with 8-bit float quantization. Should now match serialization in-game. Quantization of floats is now off by default except if you check the "Locally 8-bit quantized floats" box or make a non-local clone.
  • What is quantization? Basically, 0.5 locally is not 0.5 for other users. You should not assume floats are sent precisely over the network. A float is serialized into a value between -127 and 127, and deserialized back to -1.0 to 1.0 range. Only -1.0, 0.0 and 1.0 are sent precisely over the network.

Not implemented: saving and loading saved expression parameters. Parameters are lost every time you enter play mode.

Download Version 2.2.2 of the emulator HERE!

Avatar 3.0 explanation
(Open the above full explanation image)

v2.2.1: Support for VRChat 2021.1.1, saved paramter and layer weight blending bugfixes

24 Jan 19:23
Compare
Choose a tag to compare

Download Version 2.2.1 of the emulator HERE!

PLEASE UPDATE YOUR SDK FIRST!! THIS UPDATE IS NOT COMPATIBLE WITH SDK FROM 2020 OR EARLIER!!

In 2.2.1:

  • Fix off-by-one errors with layer and playable weight changes
  • Fix bugs with layer control behaviours
  • Fixed saved parameters. They were broken in the last update.
  • Logspam, exception fixes; TPose testing; Added AvatarVersion=3

In 2.1.x:

  • Supports new features in VRChat 2021.1.1
  • Expression menu support for Bool and Float toggles and submenus, in addition to existing support for Int.
  • Removed support for Parameter Drivers from sub-animators, to match ingame. Use a checkbox on the "Avatar 3.0 Emulator" control object to re-enable the legacy behavior for nostalgia sake, I dunno.
  • To test saving, there is a checkbox (on by default) which keeps saved parameters when the avatar is reset.
  • Supports synced bools and triggers same as ingame. The rules for "Add" and "Set" operations are different for bools and triggers in expression parameters and those not. See below for the rules.
  • Fixed issues with 8-bit float quantization. Should now match serialization in-game. Quantization of floats is now off by default except if you check the "Locally 8-bit quantized floats" box or make a non-local clone.
  • What is quantization? Basically, 0.5 locally is not 0.5 for other users. You should not assume floats are sent precisely over the network. A float is serialized into a value between -127 and 127, and deserialized back to -1.0 to 1.0 range. Only -1.0, 0.0 and 1.0 are sent precisely over the network.

Not implemented: saving and loading saved expression parameters. Parameters are lost every time you enter play mode.

Download Version 2.2.1 of the emulator HERE!

Avatar 3.0 explanation
(Open the above full explanation image)

v2.1.1: Support for VRChat 2021.1.1

22 Jan 16:31
Compare
Choose a tag to compare

This version is old.
Download Version 2.2.1 of the emulator HERE!

PLEASE UPDATE YOUR SDK FIRST!! THIS UPDATE IS NOT COMPATIBLE WITH SDK FROM 2020 OR EARLIER!!

  • Supports new features in VRChat 2021.1.1
  • Expression menu support for Bool and Float toggles and submenus, in addition to existing support for Int.
  • Removed support for Parameter Drivers from sub-animators, to match ingame. Use a checkbox on the "Avatar 3.0 Emulator" control object to re-enable the legacy behavior for nostalgia sake, I dunno.
  • To test saving, there is a checkbox (on by default) which keeps saved parameters when the avatar is reset.
  • Supports synced bools and triggers same as ingame. The rules for "Add" and "Set" operations are different for bools and triggers in expression parameters and those not. See below for the rules.
  • Fixed issues with 8-bit float quantization. Should now match serialization in-game. Quantization of floats is now off by default except if you check the "Locally 8-bit quantized floats" box or make a non-local clone.
  • What is quantization? Basically, 0.5 locally is not 0.5 for other users. You should not assume floats are sent precisely over the network. A float is serialized into a value between -127 and 127, and deserialized back to -1.0 to 1.0 range. Only -1.0, 0.0 and 1.0 are sent precisely over the network.

Not implemented: saving and loading saved expression parameters. Parameters are lost every time you enter play mode.

Avatar 3.0 explanation
(Open the above full explanation image)

v2.1.0: Original release for 2021, see 2.1.1 for bugfix.

22 Jan 15:44
Compare
Choose a tag to compare
Add support for new Parameter Driver behavior and operations; fixes f…

…or float quantization; support saved parameters across Reset Avatar.

v2.0.0

30 Dec 21:00
Compare
Choose a tag to compare

A NEW VERSION IS OUT FOR 2021! GET IT HERE:

https://github.com/lyuma/Av3Emulator/releases

CLICK HERE FOR THE UPDATE

OLD RELEASE NOTES for version 2.0.0 are here:
v2.0.0: Expression Menu support, improved Animator To Debug

  • Animator To Debug dropdown has been fixed. View your animator in action in the Unity Animator window, and update parameters in real time.
  • The Lyuma Av3 Menu component allows using your avatar's expression menu actions directly from the editor. Click + to open two radial menus at once to test combining puppets. (Thanks to @hai-vr for the contribution!)
  • Support for testing Visemes.
  • Support for the Is VR checkbox, tracking type and more. (Thanks to @hai-vr for the contribution!)
  • Basic support for Generic avatars.
  • After using Tools -> Enable Avatars 3.0 Emulator, set default VR tracking type and other settings by selecting the Avatars 3.0 Emulator Control object before entering Play Mode.

Avatar 3.0 explanation
(Open the above full explanation image)