Neos VR - Frooxius
Bugfixes:
- Downgraded to OVRLipSync 1.42 (from 1.43) due to high CPU utilization (or even maxing out the CPU) with the latest version (reported by @Shifty and @Reactant, also thanks to @Shifty for helping capture diagnostic data)
- Fixed Interactive Camera incorrectly rendering in stereo when it shouldn't (reported by @sirkitree)



Neos VR - Frooxius
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)



Neos VR - Frooxius
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)



Neos VR - Frooxius
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.



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]”.



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!

Neos VR - Frooxius
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)



Neos VR - Frooxius
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



Neos VR - Frooxius
Another small build with some tweaks and additions. Features extension to the unsafe mode for better automation.

New features:
- Added "-OpenUnsafe" commandline argument that allows auto opening a world in unsafe mode on startup (requested by @ProbablePrime)
-- This requires the URL to be added to a whitelist in Config.json file next to the Neos.exe like this:
{ "unsafeModeWhiteList" : [ "neosrec:///U-ID/R-World-Id", "neosrec:///U-ID/R-World-Id2", "neosrec:///U-ID/R-World-Id3" ] }

- Added "Grabber Body Node" which allows getting which body node goes a given grabber correspond to (requested by @DeliriousJax)

Tweaks:
- Locomotion turning now uses the SpeedExp setting (based on feedback from @Shifty )
- Tweaked combination of speedexp and deadzone
- Vive Pro Eye will now try initializing several times on startup if it fails, increasing robustness of the service
- Adjusted the Vive Pro Eye tracking driver, so it tries to keep fetching data even when there are errors in communication
-- This should fix it eye tracking from breaking due to a temporary loss of connection (reported by @FustyLugs)
- Removed GrabWorld from default locomotion lists (existing worlds are unaffected)

Bugfixes:
- Fixed "Clamped Sum" dual input locomotion handling for movement breaking locomotion modules (reported by @InsaneGrox)
- Fixed private worlds not opening correctly with the -Open or -OpenUsafe due to the user not being logged in yet when starting neos



Neos VR - Frooxius
Some small but important additions, tweaks and bugfixes! Fixed another issue preventing worlds and items from saving encountered during last Creator Jam.

New features:
- Added "POST String" node which allows sending a POST request with a string body (based on feedback from @AlienInArea51 (MR-Alex) , @Bom "Bitman" bomb (PolyLogiX) and @Alex from Alaska)
- Added StatusCode to the "GET String" node
- Added "Skip and just adjust avatar" button to the full body calibrator, which allows to use the height compensation without using full body tracking (based on feedback by @Turk)

Tweaks:
- Removed "Height Compensation" for the tracking reference in the full body calibrator (based on feedback by @Coffee and @Nexulan)
- Optimized world/item saving and world transfers to use async methods, to prevent blocking threads
- You can now remove components from the component inspectors
- Component inspectors now clean themselves up when the component is removed

Bugfixes:
- Fixed world/items saving breaking when there are assets in the hierarchy that cannot be gathered
- Fixed world data not getting correctly dumped in some cases when there's an error in the saving process
- Fixed nodes that use dynamic impulse targets not packing properly, e.g. ImpulseDemultiplexer (reported by @ProbablePrime)
- Removed old ClipboardSlot and ClipboardRecord components
- Fixed broken baking of meshes when none of the meshes have tangents



Neos VR - Frooxius
https://www.youtube.com/watch?v=W7kiRb83V0Q&feature=youtu.be

It was filmed and edited by Theofilus The Folf , with Nexulan as main dancer and director. Also featuring InsaneGrox as me as backup dancers.

It was made almost entirely using in-game tools (except the video editing), collaboratively across the globe, to show what's possible in our metaverse!

Music is My Favourite Drug by MorganJ ft. Philip Matta.

Hope you will enjoy!
Neos VR - Frooxius
Welcome back to the Weekly Update. We’ve got some exciting features to share with you this week! We’ve implemented a major new shader, a new world mode, and some session management options.

We’ll be talking about these features in our Friday Twitch live stream, so come and hang out with us, ask us questions! We'll also be showing off community creations from November. The stream starts at 3 PM PST (when this post is 2 hours old).



Color grading with LUT Shader
Want to have more control over the color grading of your world? We’ve implemented LUT (look-up table) shader to do just that. If you want to just boost the contrast, create a colder looking atmosphere or make the world look psychedelic, this feature makes it easy to accomplish your goal!

There are two ways you can get LUTs into Neos. Simply take a picture in Neos of your world, export it as a LUT through the file browser. Then apply color grading in a photo manipulation tool such as Photoshop or GIMP, and reimport the image as a LUT. You can also directly import .cube files as LUTs if you prefer.

To give you a better idea of what you can do with LUTs just look at this awesome image made by Hayden and Coffee:



Fog Volume improvements and PBS Color Mask Shader
The fog volume shader has also received significant improvements to help improve the graphical fidelity of your worlds. You can now use it in worldspace mode to prevent thinning around the cube edges, you can clamp the colors to prevent strange color artifacts, set minimum and maximum distance, use linear, exponential or exponential squared fall-off and even use a vertical color gradient!

Another addition is a PBS Color Mask shader, which lets you use a color map to selectively tint parts of a mesh. It’s a cheap and easy way to get a lot more variety out of models without having to separate them into pieces.

Unsafe Mode and Experimental LogiX nodes
For a long time, we’ve been asked to add file manipulation features to Neos by some users, particularly the Sydney Human Factor Research, for capturing research data. We’ve avoided this for security and future compatibility reasons, as we want to take a proper care to implement those features properly, but that put them lower on the priority list.

After recent discussions we found a good compromise solution for the meanwhile! We’ve created a new world mode called “Unsafe Mode” in which you can test some potentially dangerous LogiX. Any session started in unsafe mode cannot be accessed over the internet (it is LAN only or private) and this state is immutable for the whole run of the world.

We’ve also introduced a new “Experimental” category of LogiX nodes. To access it, open your LogiX tooltip through the inspector and check “Show Experimental” field before opening node selector.

For starters, we’ve introduced node for writing/appending text into files. This node obviously only works when the session is in Unsafe Mode and only for the host.

Any nodes you find in the experimental category aren’t going to stay, so make sure to not build anything that you don’t want to break in the future. We’ll make an announcement when they are going to be replaced by a proper alternative, so if you only need them for a project right now, feel free to utilize them!



Research data captured from Spider Island in Neos (see below) and plotted

Session Management Improvements
Recently we’ve received our first griefing reports in Neos. It is sad, but inevitable step in growth of this project. To help you manage your experience better, the long awaited ban from world feature has been implemented.

If you have a user who is causing you grief, even after you’ve asked them to stop, you can easily ban them through the session menu. This will ban them from accessing any world you host, so use wisely! You can also remove the ban from within the Debug menu, but this will be polished and updated later for easier access.

We’ve also changed the default access level for Anonymous users to default as Spectator. This is to prevent users from creating multiple anonymous accounts with which to re-access your world and cause more trouble.

These are just the default settings, you can still change this setting for these users within the Session menu if you choose to do so and trust the user. It’s ultimately up to you!

There have been some other additions to our moderations tools as well to deal with those situations. If you encounter a situation that you can’t deal with yourself, contact a member of the team or user in Neos with a sheriff badge and we’ll take the necessary actions and find ways to provide you with more tools.

Community Highlights
MetaMovie Project

Jason Moore has been working hard at creating his next MetaMovie inside Neos, called Alien Rescue. This has been a huge collaborative effort to provide users with a very unique and entertaining story-telling experience within VR, where YOU are the main character.

He has released this awesome update video on the progress of the project and how he’s utilizing Neos to build this experience. It’s worth watching all the way to the end, the bloopers at the end had us in stitches!



You can also read more about the project on its website: https://www.themetamovie.com

Spider Island by SHFR (Sydney Human Factors Research)

ProbablePrime and other members of the community have been helping out Hamish and his VR lab in Sydney to build a research application in Neos, using the Vive Pro Eye support and the newly added file write support, called “Spider Island”.

Using the eye tracking the application determines when the user is looking at the spider and records this information along with the distance from it. This way the researchers can gather data on how the subject with agoraphobia reacts in the virtual environment and plot it for analysis and study.



Oxford Artificial Intelligence Society presenting in Neos VR

This Wednesday we live streamed a special event held by the Oxford Artificial Intelligence Society held simultaneously at the Oxford Library and in Neos. We had a few AI researchers talk about their work, so if you’re interested in the AI (particularly in the context of MMO) give it a watch!

You can also visit their Discord server to learn more.

Creator Jam Escape Room

Medra and friends have created an escape room in Neos this week! Come give it a shot, and bring your friends for a fun and challenging experience!

Creator Jams are held every Sunday and everyone is free to participate and build collaboratively with others.



What’s next?
The work is still underway on the new font rendering system. Major parts of the system have been designed and the implementation is slowly starting on the individual pieces. So far this is the most challenging and tedious part of the technical phase of the UI overhaul process, as it involves a lot of concepts and additions to the engine.

Once the system is up and running, we expect things to start ramping up! We’ll let you know once we have more.

Thank you very much for reading and see you next time! And don’t forget to join our stream!

...