1. Neos VR
  2. News

Neos VR News

0.8.18.42547 - DynamicBlendShapeDriver component, small bugfixes and tweaks

New features:

- Added "DynamicBlendShapeDriver" component, which allows dynamically driving blendshapes by their name on a target skinned mesh renderer (requested by @Coffee for @FustyLugs)
-- This makes it very easy to swap target skinned mesh renderer, without having to setup all the logic for driving all over again
- Added a quick way to reset web host permissions through the Debug dialog (proper UI will be made after UI overhaul) (requested by @Coffee for @FustyLugs)

Tweaks:

- Kiosk mode now hides the radial menus in worlds where the user is host (based on feedback by @sirkitree)

Bugfixes:

- Fixed stereo render mode on the streamer camera not rendering private UI for both eyes (reported by @Toxic_Cookie)
- Fixed secondary stereo camera for interactive camera rendering for other users (reported by @Toxic_Cookie, @Shifty)
- Fixed Torus mesh not cleaning up old geometry when changing parameters (reported by @Hayden (PolyLogiX - ZyroDesign))
- Added extra check for releasing dynamic bone to make sure it's not reset when not actually held (reported by @H3BO3)
- Fixed triggering logic of Fire On True and Fire On Change when using explicit user, that's different than the one under which the node is parented (based on issue encountered by @Lewi-bean)
- Fixed being able to duplicate user or other objects by grabbing their dynamic bone and duplicating (discovered by Iforgotexactlywhosorry ;_;)
- Added a more guards against corrupted database, marking it for repair and notifying the user (based on problematic locations discovered from @CBGog's logs)



0.8.18.10890 - Leap Motion tweak, SDK updates, few bugfixes

Another smallish build with some small tweaks and bugfixes

New Features:

- Added "Use Fingers When Snapped" to Leap Motion settings, which allows disabling the Leap Motion fingers from being prioritized when the hand is snapped to the controller (requested by @Groxxy)

Tweaks:

- Upgraded Oculus SDK to 1.43 (from 1.42)
- Upgraded NatMic to 1.3.3 (from 1.3.2)

Bugfixes:

- Fixed several tools not respecting the user's current space when creating new objects (based on report by @Lewi-bean)
-- Objects created with the "Create New" dialog
-- Several brushes (billboard, box, particle, quad)
- Fixed Neos freezing in some cases when opening worlds from external link (reported by @Shifty)



Full-body dancer, Chemistry educational worlds, font system progress

Hello everyone!

We’ve got another weekly update for you. We’ve made some great progress on the font rendering system and are gaining momentum with it. We also saw some great dances in Neos with our revamped full body system and more users utilizing the 11-point tracking system.

Don’t forget to join our livestream that starts in about an hour from this post (3 PM PST) here: https://www.twitch.tv/neosvr You can chat with us directly, ask us questions or just hang out and have fun with our interactive chat commands.



Font rendering system progress


The new font rendering system is now moving forward, with some important parts of it already implemented. We have integrated the FreeType library and are now able to load various font files (commonly .ttf) and extract the necessary data from them, including glyph outlines.

We also have integrated the Msdfgen library for rendering multi-channel signed distance fields of the glyphs from within Neos - the data necessary for high quality font rendering in realtime. The process is quite fast too, being able to generate thousands of glyphs in a few seconds on a single core and even more when running on multiple cores.

And lastly, the system also packs all the generated glyphs into an atlas, with support for automatic growth. This will allow elegantly generating atlases both ahead of time and dynamically at runtime for any missing symbols (e.g. Japanese or various unicode symbols).

The system isn’t yet in state where you could utilize it, as some crucial subsystems are still missing (see What’s Next section), but here are some of the generated testing data! Here’s a big atlas of pre-generated symbols:



And here are some examples of text rendered directly from Neos code into a bitmap. Text will not normally be rendered this way so there’s no anti-aliasing, but it’s a good quick way of testing that all parts are operating as intended:



Various small additions


Since most of the focus is currently on the UI overhaul, particularly new font rendering system which represents the major part of the rework, there are fewer new features. But over the week we’ve still released a bunch of smaller additions, tweaks and bugfixes.

Based on popular demand, there’s now a “POST String” LogiX node, which allows making a POST request with a string body from within Neos for communicating with remote API’s. The proper set of nodes with rich API’s will have to wait until future additions to LogiX (like the collection system), but this should help in the meantime.

We’ve improved humanoid detection when importing avatars, increasing the compatibility with a variety of different models out there, fixed some issues when setting up dynamic bones on certain models with (near) zero-length bones and did various fixes and improvements to full body setup.

The Vive Pro Eye tracking support has been updated to the latest version of the SDK and a new expression “eye widen” has been added. Now you can make shocked face right inside of Neos when you realize how much has the headset cost you!

If you’d like to see more of the updates I recommend joining our Discord, we have #neos-updates channel with full release notes for each build! You can also follow the patch notes here on Steam.

Community Highlights

We’ve seen some great use of our full body and eye tracking system this week!

Fusty Lugs VR dance
We’ve got an awesome dancer Fusty Lugs come to Neos and stream using 10-point full body tracking on Twitch. Check out her clips and broadcasts on her channel, they look really great!



Reactant’s Fully Body & Eye Tracking impressions
Reactant, one of our new big supporters has went all out on his VR experience with 11 point full body tracking combined with the Vive Pro Eye for maximum avatar immersion. He has created this video talking about his experience with Neos. It’s quite mesmerizing seeing this level of avatar fidelity.

[previewyoutube][/previewyoutube]

Learning Chemistry inside VR
The Sydney Human Research Factor lab has published two new educational worlds created entirely by chemistry students, with no prior VR or programming experience.

According to prof. Hamish MacDougal the students were only given an hour intro to Neos and taught themselves the rest thanks to tutorials by ProbablePrime and BusinessLawyer.

It’s quite astonishing that they were able to create such cool looking worlds to teach chemistry, even with some interactivity!

One of our goals with Neos has always been to give creative power to students and teachers to improve how we learn, so we’re very happy to see such content. We even have a new Discord channel #edu-science for all the educators and researchers in our community!

The worlds are available in the Neos hub if you’d like to check them out, called “Group A V1 [ChemDalyell]” and “Group B V1 [ChemDalyell]”.

[previewyoutube][/previewyoutube]

Neon Arcade Hangout
Love the 80s vibe? Check out the new Neon Arcade Hangout by RueShejn, Shalefoot and Lewis_Snow! It’s a cozy chill hangout world. It’s currently hosted on our headless server too, so you can stop anytime.





What’s Next

With several major parts of the font rendering system implemented we’re now gaining some momentum on this system. Currently the work is focusing on actually displaying the text from the generated data.

This needs a few new subsystems. One of the major ones is parsing and layout, which takes an input text, processes any tags and lays out the glyphs properly, fitting them into boundaries (if present), wrapping words to new lines, adjusting line spacing and computing all the necessary parameters for the actual display.

Once this part is finished, everything can be integrated and put together and you’ll be able to start playing with the new text system inside of Neos and importing your custom fonts!

0.8.18.39489 - New eye tracking "eye widen" expression and hidden sessions!

New features:

- Added new "Eye Widen" eye tracking parameter for Vive Pro Eye from the v2 tracking engine
-- This tracks how much the eye is widened. You can access it on the EyeManager and drive through LinearEyeDriver
- Added "Don't show in session lists" setting to the session dialog, which allows excluding the world from showing up in the session lists, regardless of its access level (requested by @Shifty)
-- If the world access level is set to Anyone, then anybody with a link/invite will be able to join (and anyone can invite anyone else)
- Added "Griping Body Node" to the locomotion grip events, which indicates which body node (usually LeftHand or RightHand) is gripping onto given object (requested by @Vigilabo)
- Added "Remove Alpha" texture processing option which completely removes the alpha channel
- Added "Is User Patron" LogiX node, which allows checking if given user is Patreon supporter (based on suggestion by @0utsider)

Tweaks:

- Increased broadcast volume to normal to compensate the current audio spatializer
- Added a delay when opening world from a link and the engine is booting up, to prevent joining of private/friends-only sessions failing due to not being logged in yet (reported by @Shifty)



0.8.18.18027 - More bugfixes and tweaks!

Some more bugfixes and tweaks!

Tweaks:

- Improved accuracy of color -> color32 conversion (also when writing color values into bitmap), using rounding rather than floor
- Full Body Calibrator will first classify trackers as feet, before classifying as knees.
-- This fixes issue where putting the feet trackers higher causes them to be mis-classified as knees, when no actual knee trackers are present (encountered by @CodeF53)

Bugfixes:

- Broadened auto-retry for unexpected errors in cloud API communication, to prevent syncing and other cloud functions from getting stuck (discovered in log from @RezilloRyker)
- Fixed new dynamic impulse targets not showing properly on nodes (e.g. ImpulseDemultiplexer, reported by @Alex from Alaska)
- Fixed session token not getting properly extended after some recent changes (this could lead to cloud functionality getting broken on long running Neos instances)
- Neos won't auto-mirror to screen when starting OBS recording when using screen mode (discovered by @Theofilus the Folf)
- Added a guard to prevent inventory items being spawned in the world root (reported by @Shalefoot)
- Fixed not being able to perform full body calibration if using previously calibrated tracker for only one elbow, foot or knee (discovered by @CodeF53)
- Fixed the metric/imperial units switch for the full body calibrator not working correctly in world with multiple users