vrc-worldobject
is no longer maintained. Check out WorldSync instead!
vrc-worldobject
allows you to create world space props that are network-synced for late joiners.
- 19 bits of available parameter space (2 floats and 3 bools)
- TouchOSC
- A custom Fx layer and expression parameters already configured (even if they're empty)
- 1 material slot
Don't forget to MAKE A BACKUP
- Drag the
WorldObject
prefab into the root of your scene. Then, drag it under the root of your avatar. This will ensure that the WorldObject scale is correct, even if your avatar is scaled. - Add the
WorldObjectSetup
script to your Avatar. - (Optional) Set the max range of your object. A smaller range will give you more resolution in placement, while a larger range will allow you to place your object farther from the world origin. 1000 (1 kilometer!!) is a good default that will work for most worlds.
- Press the "Build Animator" button.
- Remove the
WorldObjectSetup
script from your avatar before uploading. - Open
WorldObject.tosc
to control your new world object parameters.- Don't forget to set up the correct mappings in your JSON config!
- Closing TouchOSC will break syncing for late joiners.
- Fixes issue where TouchOSC was sending float params, but a default VRC OSC config file would require bool params. TouchOSC will now properly send bools.
Bug fixes:
- Hopefully fixes #2 (NullReferenceException when building animator)
- Fixes PositionPanel compile error
Pull requests are welcome. Contributors will be listed below.
Major credit goes to VRLabs for the development of the original World Constraint on which this project builds.
Because no self-respecting project is ever complete.
- Is there a simpler way to blend the X/Y/Z animations, so we don't have to have 3 separate "mover" objects in a hierarchy? (I don't think it's a problem, it's just untidy.)
- Put an actual explanation in the methodology section, instead of just dumping my napkin notes.