1. Neos VR
  2. News

Neos VR News

0.8.17.4813 - Support for up to 8 Vive Trackers for full body tracking

Support for up to 8 Vive Trackers for full body! You can now calibrate hips, feet, chest, elbows and knees. Also finally fixed up all issues with user getting dropped out of their avatar when calibrating (hopefully! Let me know if it still happens, but I think it should be good now).

New Features:

- Added full body support for elbows, chest and knees
-- You can calibrate all of them using the full body calibrator. Automatic T-pose calibration is supported for all as well
-- Knees can only be used if feet are calibrated as well, others are independent
-- You can use up to 8 trackers simultanously (11 when you include head and hands)

Tweaks:

- Changed ActiveUserRootOnly on grabbables to ActiveUserFilter with folowing options (based on feedback by @H3BO3#7957)
-- Disabled
-- OnlyActiveUser (can only by grabbed by the user under which this is parented or nobody if not parented)
-- ActiveUserWhenPresent (can only be grabed by the active user or anybody when not parented)
-- ExcludeActiveUser (can be grabbed by anyone but the user it is parented under)

Bugfixes:

- Fixed another case of user being dropped out of their avatar when triggering avatar full body calibration, in cases where the trackers weren't initially mapped (based on report by @Nexulan#6449)
- Neos VR will automatically use the legacy SteamVR input when running through Virtual Desktop on Oculus Quest (this fixes issue with hands stuck in the ground)
- Fixed grabbing of the full body calibrator by another user causing their seated mode to disable momentarily (reported by @RaccoonRezillo#3830 )
- Fixed full body calibrator breaking in some cases when user switches their avatar that they're actively calibrating
- Fixed sessions that didn't end cleanly (crash, timeout) lingering in Neos and #active-sessions on Discord
- Fixed AvatarRawToolData not working correctly when the avatar is not equipped by the wearer (e.g. when spawning into a session, as reported by @RaccoonRezillo#3830 )

0.8.17.21761 - Major cloud infrastructure performance improvements

Major refactoring of the cloud infrastructure! Sorry for the lack of updates to Neos itself, since we started experiencing severe server congestion, I had to prioritize some major work on the cloud server. It should be much speedier now and better prepared for scaling! There’s still a few things left to do, but should be better now. Also managed to slip in some full body improvements and fixes! ;)

New features

- Added buttons for rotating the platform and new grabbable toggle directly on the full body calibrator platform
- Added ability to set position/rotation smoothing on feet and hips with full body tracking. This will allow for filtering out tracker jitter (especially on feet when stomping) and provide nicer motion
- Added BooleanValueDriver (under Transform/Drivers)

Tweaks

- AvatarPoseSmoothLerp now has separate smooth speed for position and rotation. Using negative values will disable the smoothing completely
- Upgraded to Unity 2019.2.8 (from 2019.2.7)

Optimizations

- Reworked cloud infrastructure into separate API frontend service and background processing app to significantly improve performance and server congestion
- Ported cloud API frontend and background worker to ASP .NET Core 3.0 (from .NET Framework) to improve performance
- Optimized thumbnail upload to reduce server congestion
- Optimized session management on the cloud server to reduce background processing
- Improved caching of user information on the cloud server to improve performance
- Upgraded to v3 CosmosDB SDK for the cloud server, which should help with some performance issues
- Various other optimizations to the cloud server infrastructure

Bugfixes

- Added a mechanism for extending cloud session duration. This fixes issues when Neos runs for too long (e.g. longer than a day for headless, as reported by @tehturk )
- Fixed fetching of attributes for nested lists in the inspector, which would break generating UI for certain components (like MaterialSet discovered by @H3BO3 and @ProbablePrime )
- Fixed potential duplication of tracker objects and world tracker manager lingering after it has been removed
- Fixed position and rotation stream duplication for Vive trackers when the user is respawned
- Fixed issue with avatar objects slots sending node availability messages for all users (this could cause some unpredictable avatar behavior)

Known Issues

- Large assets may fail to upload right now, will be fixed soon

0.8.17.16150 - More improvements for full body tracking calibration

Lot's of improvements and bugfixes for full body and calibration process! Hopefully all the hip twisting issues should be squashed now.
Also I messed up and lost my update notes, so these might be incomplete as I had to reconstruct them, sorry!

New features:

- Full-body T-pose calibration now computes height compensation as well, which fixes issues with bent knees (based on feedback by @ProbablePrime, should help with neck issue reported by @Flame Soulis)
- Added "Show Reference Overlay" for full body avatar calibration, that lets you hide the reference for better view of your avatar
- Added PositionDeltaDriver (in Transform/Drivers) which drives a vector from a position difference between two objects (optionally normalized)
- Added "DontDrive" setting for draggables (Slider, Joint..) which directly assigns values, without driving them

Tweaks:

- Knee offsets for full body calibration cannot be placed too close anymore, which fixes the knees bending in strange directions, especially with walking animation (based on feedback by @ProbablePrime)
- Changed knee offset visual to vectors, to help signify that they're directional references (based on feedback by @ProbablePrime)
- Added avatar full body calibration finish screen, that offers choice between finishing process or returning, to decrease user confusion (based on feedback by @Dante )
- Added search term "by group:" for groups for the world browser. This fixes not being able to filter by group if there's an user of the same name (reported by @Medra )
- Changed full body calibration platform material and mesh to help increase contrast (based on feedback by @ProbablePrime)
- Tweaked tracker calibration page of full body calibrator, to make it clear that avatar calibration is optional step (based on feedback by @Dante )
- Updated full body T-pose calibration text to make user aware of the red overlay reference (based on feedback by @Dante )
- Full body calibrator body overlay now renders even when trackers aren't calibrated yet, to make user more aware of it (based on feedback by @Dante )
- Avatar full body calibration preview now preserves dynamic bones
- Added a offset distance limit to full body calibrator, preventing user from pulling the parts too far away (encountered by @Groxxy)

Bugfixes:

- Improved full body IK forward calculation. This fixes hips and legs twisting when leaning forward or lying prone (encountered by @Nexulan, also likely same issue as reported by @Groxxy)
- Fixed full body calibrator not showing T-pose for others (encountered by @Nexulan)
- Fixed full body T-pose reference being misaligned in some cases, requiring user to walk too far in their playspace and resulting in nonsensical calibration (encountered by @Nexulan and @ProbablePrime)
- Fixed interactive camera not getting cleaned up when the owner exits in an unclean way (timeout or crash)
- Fixed Logix node visual doubling, resulting in multiple copies of the node UI, which also prevented packing (reported by several users in the past)
- Fixed flipped tangents on conical frustum meshes (cone, cylinder...) and missing tangents on the caps
- Added guard against AvatarPoseNode remaining in equipped state when duplicating avatar for preview in the full body calibrator - this fixes certain cases when calibrating avatar breaks the user
- Fixed exception in CommonTool when grabber is missing (discovered in log from @JustlyDeclarable )

0.8.17.3809 - Quick T-pose full body calibration

New features:

- Added quick full body T-Pose calibration, which allows quickly mapping trackers by posing in a reference and pressing both triggers
-- This is now the first calibration step for the full body calibrator, with the adjustments serving to fine tune the calibration
- Added AvatarPoseRotationConstraint, which allows constraining the orientation of a body node (limiting swing and twist around an axis)

Tweaks:

- "Reset Mapping" on Full Body Calibrator now just recalculates the default avatar calibration, rather than disabling it (this would break avatar body anchors)
- Full body calibrator now has basic instructions displayed on the top
- Light Orb Tip will now spawn light in the current local space of the user, rather than global
- Updated default SteamVR bindings of Oculus Touch controllers. This should fix some symmetrical bindings not working correctly (like touching X/A buttons, reported by @Hayden )
- Changed default render distance to 4096
- Upgraded to Unity 2019.2.7f2 (from 2019.2.6f1)

Bugfixes:

- Prevented avatar from being grabbed when entering or leaving fullbody avatar calibration, preventing it from being re-equipped
- Fixed filling of empty slots on avatar (spawning default hands/head) from dequipping just equipped avatar in some cases - this should fix the full body calibrator sometimes dropping user out of their avatar and leaving them without voice (encountered by @Nexulan , @pikapetey and others, please let me know if this bug still happens!)
- Fixed being able to anchor user to avatar anchor that's part of their hierarchy (e.g. being held or being on another user anchored to them) (reported by @Shifty )
- Fixed avatar anchors incorrectly unparent objects when the target space is not part of the anchor
- Fixed friends dialog trying to update message UI that has been removed in the meanwhile
- Added guard for invalid number of read samples from and audio source
- Fixed rare exception when updating online status, due to accessing uninitialized user instance
- Fixed labels for avatar calibration references in the full body calibrator being too small or too large for certain avatars
- Fixed exceptions when playing looped OGG audio clips causing audio issues and heavy performance (discovered thanks to log from @LeonClement )
- Fixed not being able to set unregistered user as a target for the interactive camera

0.8.17.40507 - Improvements for full body and avatar anchors

New features:

- Added "Use Symmetry" for avatar calibration in the full body calibrator, which will move the feet and knee offsets symmetrically
- Added skeleton visualization to the full body calibrator, for both reference and calibrated avatar
- Added "UnparentEverythingOnDestroy" option to AvatarAnchor. This will unparent any objects in the user root when the anchor is destroyed. This prevents any items spawned or created while under avatar anchor from being destroyed along with it
- Added "Generate Debug Visuals" to Rig and BipedRig in the inspector, which allows generating temporary skeleton visuals for debugging purposes

Tweaks:

- MultiUserAvatarAnchor will now filter out second pointer if one is already pointing at it, preventing the highlight point from jumping around
- Automatic avatar hips/feet calibration will now replace old calibration in cases where the rotation is close enough, but the offset is too large
- Improved automatic calibration of hips for avatars where the hip bone is too far up the spine
- Added cross bar to avatar calibration references to better visualize their orientation
- Added labels to avatar calibration references (tracker labels will be hidden when calibrating avatar)

Bugfixes:

- Fixed random bone drift for IK avatars, causing some parts of the body to randomly become elongated or shortened (reported by @RaccoonRezillo and @Reks )
- Fixed sent invite messages showing incorrect timestamp in the history (reported by @AlienInArea51 (MR-Alex) )
- Fixed spelling error on RandomObjectSpawner (reported by @NotMeCoffee )
- Fixed exception in UserDistanceValueDriver when user root is missing (e.g. on headless or when respawning) (discovered in log from @tehturk )
- Fixed MultiUserAvatarAnchor breaking when the anchors root has children that are not anchors
- Fixed OverlayFresnel writing into ZBuffer when opaque, preventing it from functioning properly
- Fixed GetChildrenWithTag() not searching children correctly
- Fixed incorrect positioning by hips for full body avatars, which should fix pose problems with certain avatars when entering avatar anchor
- Fixed full body calibrator not resetting reference visual correctly after avatar calibration is finished