1. Neos VR
  2. News

Neos VR News

0.8.18.40558 - Unsafe Mode automation, locomotion eye tracking bugfixes

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



0.8.18.13916 - POST String node, fix for worlds/items failing to save sometimes

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



Our first music video - dancing with the full body in VR

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!

LUT Color Grading, "Unsafe" Mode, MetaMovie project, Science Research and more

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!

[previewyoutube][/previewyoutube]

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!

0.8.18.34265 - .CUBE LUT format support, LogiX file access, full body tweaks

"Unsafe Mode", File Write access for logix (experimental), support for CUBE LUT files, full body improvements and more!

New Features:

- Added "Unsafe Mode" for starting worlds, which allows use of dangerous experimental features in safe context
-- You can enable "Unsafe Mode" in the session start dialog
-- Unsafe Mode worlds can only be accessed from LAN at most. They can never be accessed over the internet
- Added special "Experimental" LogiX node category
-- To access, open your LogiX tooltip with inspector and check "ShowExperimental" field. Then open the LogiX node selector
-- DO NOT build anything long term using these nodes. It WILL BREAK at some point.
- Added experimental "Write Text To File" node (requested by @SHFR_H, @ProbablePrime)
-- Only works if the world is running in Unsafe Mode and only for the host
-- This is an experimental node. Make sure to follow the warning above
- Added support for .CUBE LUT format (implemented by @Coffee, requested by @Zane)
- Added NewLine node (this provides new line constant)
- Added ability to switch audio track on the VideoTextureProvider
-- Default is "null" which uses the default audio track. Use a number to override it (there's currently no feedback on how many are available and which ones they are, but usually there's few enough to try them all)

Tweaks:

- Changed the calf rotation for the full body IK, so the calf follows rotation of the foot rather than hips/pelvis (based on feedback by @InsaneGrox)
-- Let me know if it works better this way, might need to do some more tweaks
- Changed default height compensation to 0.95 (based on feedback by @InsaneGrox and @SmolCookie )
-- Existing avatars will be auto updated only if they use the original value of 1.05, otherwise the value is left unchanged
- Tweaked Maintain Height to properly offset the user height by the eye-level difference
-- This fixes avatars standing on their toes when using "maintain height" (they will still stand on their toes if you look down, that requires rework of seated mode)
-- If you changed your actual height to a lower one to prevent this, you'll need to change it so you're not scrunched
- Tweaked height compensation supression to see if it fixes issues with the avatar randomly becoming small until the user height is changed (reported by @InsaneGrox)
- Default Anonymous user role is now Spectator. Existing worlds are auto-updated to this on load, but you can reconfigure them afterwards if needed.
- "Mirror To Display" is now grayed out and cannot be used in screen mode now (based on feedback by @Shalefoot)
- Upgraded to Unity 2019.3.0f1 from 2019.3.0b12

Bugfixes:

- Fixed UI buttons not working when in the screen mode and not the host (reported by @pammematth and @Rukio )
- Fixed "-ForceLANOnly" command line argument not working correctly in all cases (reported by @ProbablePrime)