1. Neos VR
  2. News
  3. 2020.4.22.882 - New grabbing equipping system (Radiant UI), tweaks, bugfixes

2020.4.22.882 - New grabbing equipping system (Radiant UI), tweaks, bugfixes

Another piece of Radiant UI is in! This time the gripping/equipping system has been redesigned to provide more ease of use, fluidity and make the system more powerful into the future for building all kinds of cool gadgets and tools.

One of the major changes is more explicit separation of the grip types. Gripping by hand always results in physical grip, so your controls are no longer taken away by just grabbing an object. Grabbing with the laser will still allow to move the object around with your joystick or touchpad.

Another big change is that you can now use all tools and equippable items simply by grabbing and holding them. You can still equip them traditionally so you don't have to keep the grip pressed.

Related to this, the system on how they snap has been reworked to be built around hands, instead of controllers. The items now define where the hand goes when they're gripped and align themselves automatically with the skeleton of your hand. This fixes many of the items equipping at very akward poses.

IMPORTANT: The gripping poses generally require a manual setup, as the system has no idea where a hand should go. All existing items are upgraded with heuristics on spawn. This works ok for many of the tools and items (especially weapons), but not for all of them. You will need to upgrade your existing items to the new system. This should be pretty easy and quick to do though, check the release notes for details or this video. The process will be made even easier with subsequent updates as well.
[previewyoutube][/previewyoutube]

I know this is a bit of a painful change, but we can't move forward without redesign of the system and since many of the items were never setup properly in the first place due to lack of the system, this now provides them with an easy upgrade path moving forward, allowing you to build content that is more fluid and easier to use, especially for new users!

[h2]New Features:[/h2]
- Redesigned tool/item equipping and gripping mechanics (thanks to @_Turk, @Abysmal, @Shifty, @GearBell, @H3BO3, @Rukio, @PeterTheThinker, @ohzee and other @Danger Tester's for catching early bugs and providing feedback!)
-- All tools/items are now usable simply by grabbing and holding them. They will automatically align themselves and be usable while held.
-- Double-grip to equip still works, as well as other equipping mechanics (context menu or pulling in with laser). Equipping the item prevents the need to keep holding grip
-- Reworked physical grabbing mechanics - grabbing with hand is now always considered physical and won't interfere with secondary/locomotion (only grabbing by laser will)
-- Reworked double grip equip mechanic - if the first grab equips a single tool, the second grab doesn't require to actually grab it, fixing issue where the tool getting out of the grab sphere could not be double-grip euquipped (reported by @_Turk)
-- Removed the obsolete tooltip repositioning mechanism (this will be replaced by Edit-mode repositioning with the new Grip Pose Reference system)
-- Removed several old laser, grip/equip and tooltip internal mechanisms, reducing the complexity and sources of bugs for these systems
- Added "Grip Pose Reference" (under Interaction), which allows defining a hand grip reference pose on tools/items
-- This will automatically align the tool/item with the avatar's hand on grab/equip. It will automatically match the skeleton and size of the hand to the item
-- All existing equippable items/tools are auto-upgraded with heuristics, which estimates where the hand goes. This works ok for some items, but for some it will require manual adjustment
-- To manually adjust, open the root and find the "Left/Right Grip Pose" and check "Show Visual". Then position the hand overlay to where a hand should grip the item
-- You can define multiple grip poses on an item. The one that's closest will be used when grabbing the item

- Added "Flip Preview" to the interactive camera control (in the settings panel), which flips the camera preview horizontally (requested by @GearBell)
- Added "Block Grip Equip" to tooltips, which prevents them from being auto equipped simply by grabbing (requested by @GearBell)
- Added "Timer Start Sound" and "Timer Countdown Slow/Fast" audio references to Interactive Camera, allowing to setup sounds that play with the timer function (requested by @RueShejn)
- Added hideFromPublicListing parameter to headless config for starting worlds, which will hide the world from public listing (requested by @Enverex)
- Added -user, -password and -token commandline arguments to headless to allow logging in the user (requested by @Bitman the Hackerman (PolyLogiX))

[h2]Tweaks:[/h2]
- Removed "Physical" property from Grabbable and draggables (Slider, Joint...), because it's now obsolete
- Removed laser tip touch source, greatly simplifying the touch logic and preventing accidental touches with the laser. Physical touch is now done with the actual index finger on the avatar
- Rewrote brush material/color dipping to be independent on the touch source, making it more robust and work in screen mode as side effect
- Updated youtube-dl to 2020.03.24 (from 2020.03.08) (suggested by @Shifty)
- Generalized custom grab filters in the codebase for Grabbable, Slider, Joint and other Grabbables and expanded the possibilities of the grab checking system (this allows the GrabPoseReference to reject grabbing with specific hand for example)
- Improved baguette detection
- Optimized grabbed item lookup when saving items into inventory to reduce the hiccup during the save
- Cleaned up some old unused libraries from the codebase

[h2]Bugfixes:[/h2]
- Fixed Steam integration (and consequently the Steam Networking Sockets) not being loaded on Linux client and headless (reported by @Cyro)
- Fixed cloud interface breaking when the cloud server responds with 429 or 500 codes, causing assets and other things to not load (found in log from @DeliriousJax)
- Fixed cloud sending repeated Patreon messages every 6 hours in some cases where user email is changed (reported by @Cyro)
- Fixed server errors (500) in some cases when uploading session thumbnail
- Fixed a potential Patreon integration exploit on the cloud server
- Fixed Set Child Index node not working correctly after recent Order Offset rework (reported by @jeana, @Aetoriz)