1. Neos VR
  2. News
  3. 2021.6.18.4 - Nested sessions, Velocity/Cylindrical distance haptic filters

2021.6.18.4 - Nested sessions, Velocity/Cylindrical distance haptic filters

Hello everyone, sorry for a smaller build again, mostly focusing on BEPUv2 still, but here are some significant additions! The haptic feedback system got some nice additions, allowing modulating intensity around a cylinder or by velocity!

Also a potentially big addition for hosting - nested sessions! Those allow you to define your hosted sessions as nested in another, which is ideal for hub worlds - the nested sessions won't display in the world browser (unless you actually enter the parent world) and the parent world player count will now include sum of all the nested sessions within. There might be some quirks to work out as it starts getting used, but hopefully should be a good addition.

[h2]New Features:[/h2]
- Added VelocityHapticFilter which allows modulating haptic intensity based on the current velocity of the haptic point within the volume (requested by @Ryuvi | Technical Artist)
-- Supports smoothing out the velocity as well, to avoid jitter due to random timing intervals
- Added CylidricalDistanceHapticFilter, which allows modularing haptics based on radial and axis distance (essentially a cylinder) (requested by @Ryuvi | Technical Artist)
-- This is similar to RadialDistanceHapticFilter, but it has two modulation parameters - radius (along XZ plane) and axis offset (along Y)
-- Radius and Axis intensities are multiplied together to produce the final haptic intensity. Setting Start and End Axis intensity to 1 will only modulate based on radial distance
- You can override number of background and high priority workers with -BackgroundWorkers and -PriorityWorkers commandline argument (based on request from @Kyuubi and @Alex the фурри авали🐦)
-- IMPORTANT: This is use at your own risk feature for experimenting with performance tuning. If you experience performance problems, loading, UI and other things getting stuck as result of changing those values, we won't likely provide diagnostics and support
- Added support for nested sessions (based on request by @Turk | Mentor Manager, @Gawdl3y, @Epsilion and @Shadow Panther [RU/EN, UTC+3])
-- Each session can have one or more parent session IDs by specifying parentSessionIds in the headless config
-- Nested session won't show up in the world browser unless you are currently present in one of the parent sessions
--- IMPORTANT: This is not a security mechanism, but a cosmetic, the session and its metadata is still public even if you're not in the parent session
-- The host of the parent session must be a contact of the host of the nested session
-- Parent sessions now track total number of joined and active users in their child sessions and display this number in the world browser (this is useful for hub worlds)
-- SessionInfoSource now has TotalJoinedUsers and TotalActiveUsers
-- WorldListManager now has ParentSessionId property which allows showing sessions based on given parent session ID
--- The dash world browser has this driven to the SessionID of the currently focused world
-- This mechanism is mainly intended for public sessions. Using it with Contacts or Private sessions won't work properly

- Added new properties to FocusedWorldStatus (based on request by @LeDrascol)
-- SessionId, RawWorldName, UserCount, ActiveUserCount, AccessLevel, HideFromListing, AwayKickEnabled, AwayKickMinutes, UnsafeMode
- ImpulseMultiplexer now has an output indicating the number of impulses (implemented by @ProbablePrime | Docs)
- Added RolloffMode, MinDistance and MaxDistance to RandomAudioClipPlayer (requested by @AshtonSparx)
-- These are nullable values. You can override them per clip or globally for the RandomAudioClipPlayer

[h2]Tweaks:[/h2]
- Format LogiX node now starts with 1 input (implemented by @ProbablePrime | Docs)
-- This fixes the + button intersecting the node name
- ScaleTransition is now categorized under Transform/Drivers (implemented by @ProbablePrime | Docs, requested by @Sox)
- SessionInfoSource will now display the session info for sessions that are hosted locally, but not public (based on feedback by @LeDrascol)

- Merged Finnish locale additions (including MTC tutorial strings) by @Napo and @Toni Kat
- Merged Czech locale additions (including MTC tutorial strings) by @rampa_3 (UTC +1, DST UTC +2)
- Merged Dutch locale additions and tweaks (including MTC tutorial strings) by @marsmaantje
- Merged Korean locale additions and fixes by @MirPASEC
- Merged Russian locale addition by @Shadow Panther [RU/EN, UTC+3]
- Merged Japanese locale addition by @Aesc

[h2]Bugfixes:[/h2]
- Fixed regression in inspector sometimes not filtering components properly (found in a log from @Tekno Catron)

[h2]Known Issues:[/h2]
- When changing inputs on some nodes (e.g. multiplexers), the wire visuals can become stuck until the connecting node is moved