Fixing up some extra issues with context menu and UI. Also two semi-major optimizations that should make things run a bit smoother! (I've done some profiling and found more things that cost CPU/GPU time, but those will be optimized in the future).
Optimizations:
- Reworked global (skybox) reflections to only update on skybox changes, saving up a lot of CPU overhead for rendering them every frame - Heavily optimized SkinnedMeshRenderer connector updates, avoiding constant rebuilding of materials, bones and other properties when they haven't changed - Optimized blendshape updates on SkinnedMeshRenderer - Added more reference breaking/cleanup to (Skin)MeshRenderer connector to avoid more potential memory leaks
Bugfixes:
- Fixed stray clicks to UIX canvases when the trigger is held, particularly when using the flick selection with the context menu -- This fixes options being immediatelly clicked in the Create New dialog (reported by @Shifty) -- Also fixes randomly clicking options when opening inspector, causing objects/avatars get messed up (reported by @Rukio) - Fixed broken libVLC library after recent Unity update due to Unity build process changes, causing various multimedia files not to play -- This fixes MP3 files not play (reported by @ProbablePrime) and anything other than MP4 not playing (reported by @Zane) - Fixed Undo/Redo buttons in the context menu not being properly updated (having proper labels and gray out) when a tooltip is equipped (reported by @Shifty)
We have an exciting announcement this week. After recently reaching our goal of 300 Patreon supporters (thank you!), we have begun working on the promised community developer fund. Neos is a platform that’s alive thanks to you, our community and creators.
Your creativity and passion is what makes this project a success and allows us to grow and we want to share that with you. We have introduced the Community Developer Fund Token (CDFT) as a way to reward the passionate contributors in our community.
In another news, the first piece of new UI is nearly there, the new context menu! There’s also some progress on getting Neos to run with IL2CPP runtime to provide a performance boost. Details below!
Neos Community Developer Fund (CDF)
As you may already know, Neos has its own currency called Neos Credits, or NCR. It’s a cryptocurrency minted as a reward for our Patreon and Ethereum supporters. A way to share the current and future value created by Neos back to the community that is making it happen.
We are allocating a 2 million portion (4%) of all the NCR that will ever exist (50 million) to the first phase of the Neos Community Developer Fund, which has been designed to provide support to the extraordinary community efforts we see. The Neos Community Developer Fund will ensure good liquidity for awarded members, and open a path for even more CDF funding of their projects in the future.
How it works
During CDF Phase 1, community members contributing extraordinary value will be rewarded each portion of the 2,000,000 CDF Tokens that automatically convert into 2,000,000 NCR. Every 25th NCR minting batch is reserved to convert 1/20th of all CDFT to NCR.
How much is Phase 1 of the CDF worth?
It depends. If all holders hypothetically sold their CDFT right after each NCR mint, it would bring them $11,032,178. If they wait for the initial coin offering (ICO) to finish, that would make it $59,061,185, and if/when Neos becomes a really successful project with the same market cap at some point as Ethereum has right now, that would make it worth approximately $634 million.
Not bad, how do I apply?
Neos Teams will try to review every exceptional, deserving community member we know of. You may also apply through the review application form to provide us with context of your contributions, and future plans for Neos. You may also recommend or vouch for someone else. Recommendations of deserving users are especially appreciated.
Review process
Teams will try to reach a consensus based on this approximate guiding criteria:
1) How much value is the community member bringing, and for how many people? 2) How long term are their efforts? 3) How many new users do their contributions attract?
So efforts that bring a lot of value to a small amount of Neos users, for example accessibility tools, as well as efforts that bring value to a lot of users, such as highly popular worlds and games will qualify. The third criterion carries less weight.
Timeline
We would like to have a good estimate of the number of CDFT awards granted by the time batch 50 of the ICO is reached, and to have all CDFT awarded prior to reaching batch 100.
Phase 2 and beyond
After batch 100 of the ICO, we will have enough Ethereum, and other monetary assets to officially start the NCR Buyback Programme to increase liquidity for existing CDFT holders, and to provide NCR for Community Developer Phase 2 and beyond.
The future and reality of Neos
In conclusion, I’d like to say that it’s hard to predict the future of Neos, how our forward looking technical design decisions, engine and data models, VR hardware and other interfaces in general will work out.
It's hard to say how popular Neos will become, but we're pushing towards the goal of being one of the most popular metaverse and spatial computing platforms. It has the potential to get big fast or get big slowly and we will be working tirelessly towards that goal. We’re in this for the long run.
At the end of the day the only thing that really matters is that we and everyone involved have all found many new friends thanks to Neos and we treasure you beyond belief.
To find more about Neos, and its vision, check out the Neos White Paper. For questions, and discussions, join the Neos Discord, and check out the #💲neos-credits-ncr channel.
Thank you all for your current, and future support of Neos. 💛
Progress on new UI (help us name it!)
One of the pieces of the new UI has nearly finished , the new context menu! This will very likely go out tomorrow, replacing the existing radial menus. It is designed to be much simpler to operate, requiring to just point and click and to avoid blocking other controls, which often confuses new users.
While other parts of UI are still being worked on, the context menu will still contain options that will later on be part of the new dash, like the locomotion settings or scaling options. We’ll also do tweaking as we go to make sure it’s quick and comfortable to use, let us know what you think once you play with it!
One of the nice benefits of the new menu is that it will improve the performance as well. During our profiling sessions, we have found that the existing radial menus eat massive amounts of CPU time. With the new one being designed in a much more efficient way and built on top of UIX, this should free up some resources.
Another part of the new UI that’s being worked on in parallel is a styling system for UIX. This will allow defining styles somewhat similar to CSS, that will define how the UI looks in a unified way. This will serve as the basis for easily customizing the look of the new UI and making custom themes.
The technical design of this system is still being worked on, but here are some technical design notes if you’re curious!
Help us name the new UI!
While the technical parts of the new UI are progressing well, we have gotten stuck on the most feared programming problem… naming!
Rather than just referring to the new UI as… well “the new UI”, we’d like to give it a proper moniker, to signify its status as the serious Neos UI that we put real effort in and make it easy to refer to the whole system of new dash, facets, styling, contextual menus and other pieces under a nice catchy name (also I need to name it properly in the code, it’s been bugging me for a week now).
To go along with the whole “Facet” gem metaphor for the modular pieces of UI, we have thought up a few potential candidates:
Radiant UI - based on the radiant gemstone cut. This is a nice metaphor as this cut is typically rectangular (like UI!) and the name could also be interpreted as glowing or radiating, like a hologram.
Quartz UI - another gemstone metaphor. Quartz is a very “versatile” mineral, that comes in many forms and colors, an aspect it will share with the new UI!
OnyX UI - one of the many forms of quartz. It has a cool sounding name that fits along with the likes of LogiX, BaseX, CodeX and other Neos systems. The actual mineral is very dark and matte though, so doesn’t quite fit conceptually.
Jade UI - after the green mineral. Metaphor doesn’t quite work though as it’s not usually cut (no facets) and is green.
Ruby UI - similar to above, but red. This one is pretty shiny! Could be confused with the Ruby programming language.
Gemstone UI - very direct, not much of a metaphor here.
Glint UI - shiny! Simple and cute, who doesn’t like a pretty gem?
Baguette UI - based on the baguette gem cut. It’s a real thing! But no... just no xD In fact I don’t trust you to even put this one into the poll!
What sounds best to you? If you’re a Patreon supporter, you can head over to the Patreon poll and vote for your favorite! If you have any other suggestions, post them in the comments and if we like them we’ll add them to the poll.
Getting Neos to work with IL2CPP for performance boost (WIP)
Another of the long running background projects has recently made some important strides. Neos is currently running inside of Unity, using the Mono runtime. For a long time this has put some limitations on certain optimizations, due to suboptimal JIT compiler and lack of access to certain modern features of the CLR.
One alternative that we were pursuing for a while is getting Neos to run with IL2CPP runtime, which converts the code to C++ and compiles with standard C++ compilers with aggressive optimizations.
Until recently this was blocked due to bugs in the IL2CPP pipeline, but after those were fixed in the latest Unity release and working more on Neos’ codebase to make it compile and run well with this runtime, it’s now nearly fully functional!
Apart from audio and some cloud functionality not working well yet, the build pretty much works with a nice performance boost. There’s still more to do before this is ready and more tweaking afterwards, but the results so far are promising. We’ll keep you updated as we progress more!
Note that the example above wasn’t compiled with maximum optimizations. With heavier optimizations the performance gains were even higher, with still more room to grow.
Community Highlights
Viva La Villa, by Bobotron
Yet another world designed by Bobotron for relaxing with friends. The lighting in this world is superb, providing a relaxed yet dynamic atmosphere.
Rocky Greenhaven, by Enverex
A serene landscape, seemingly fully designed by nature, rests along a shore in the evening sun. This wide-open land full of valleys and hills is great for shooting off fireworks and having virtual barbeques!
What’s Next?
We’ll be releasing a new build with the new context menu very soon, very likely tomorrow! Enjoy the last moments with the current radial menus, because they’ll be gone soon! ;) After this there will be tweaks and modifications based on your feedback and more pieces of the new UI.
The things coming up next is a new laser system, having it and the context menu render through objects to avoid objects obscuring it and reworking some other basic interactions, like grabbing and equipping.
As we’re picking up the pace on the new UI you should see more updates come soon! Thank you for reading our weekly update, let us know if you have any questions and we’ll see you at the next one!
Welcome to our weekly update! This week has been a bit quieter, as the development was scattered over some smaller additions and fixes. Nevertheless we’re picking up speed on the new UI, the new context menus should come next week.
We’ve also done another livestream dedicated to the community creations of the month, so if you missed it, give it a watch!
March Community Showcase
At the end of every month, we showcase all the amazing community creations during our regular Friday livestream. In case you missed the stream live, you can watch the recording below!
Curiously we saw an uptick in worlds largely built from primitives inside of Neos, rather than being imported from an external 3D modelling program. Regardless of how the content was made, we’re always amazed by everyone’s creativity and passion!
Updated Roadmap on GitHub
Based on feedback, we have reworked and updated Neos’ roadmap on GitHub, to make it easier to read and include better information about our plans for the future and things currently underway.
You can find the long term planned features, the major upcoming features and things that are currently being worked on, as well as related GitHub issues where applicable. We hope this will give you a better idea of what’s planned for Neos and roughly when it’s coming.
Keep in mind though that our approach to development is quite flexible, so priorities can change based on the needs of community and Neos and new features in the list can be added (the list itself isn’t fully comprehensive). It’s why your feedback on these things matters, so let us know what you think!
Additions to Xiexe Toon, more new UI components, some optimizations and other improvements
As usual, we have released a bunch of builds this week, but the work was mostly scattered over smaller features and additions. The newly added Xiexe Toon shader has received more options (including cutout rendering) and optimizations.
We have added some new LogiX nodes as well for working with boolean vectors, Rects (used in UI), math and more. The CircleAligner component has also been expanded with new options for better control and flexibility.
Some time was spent also profiling Neos’ codebase and making smaller optimizations where possible, as well as looking into ways to update the runtime (e.g. compiling with IL2CPP) to get a big performance boosts, but currently this work is more in the background with uncertain results.
Lastly, there are some new UIX additions with bits and pieces of the new UI, particular circle segment UI elements and layouts for the new menus. These will serve as the basis for the new context menus, but you can use them with your own UI already!
This devlog video show them in action (WARNING: Has loud music on)
Community Highlights
Legoshi’s Dorm Room by Ballistic
This room, from the BEASTARS series, was lovingly fully recreated by Ballistic. The textures were created in Gimp and are utilizing the Xiexe shader we recently implemented, but every object was created using only Neos’s built-in tools. If you’re a fan of the series, you should absolutely give this room a visit!
Space Out by Coffee
Low gravity, low lights, relaxing music! Coffee’s Space Out world is great for doing just what the name entails, as well as a great environment for conversation with friends!
What’s Next?
We’ll be replacing the radial menus for new ones next week, replacing the lasers/remote interactions and adding the snapping mechanism to tools and items, so get ready for the change!
It will probably get a bit of getting used to, but we think that the replacements will allow for easier and faster use for everyone, so it’ll be worth it.
Thank you again for reading our weekly update and for supporting this project! Whether it’s by simply hanging out in the community, building awesome content or supporting us on Patreon, Twitch and other sources, it lets us keep focused on making this metaverse better every day!
Welcome back to the weekly update. We have some wonderful news; The Neos Team has grown again! We have three lovely new members who have been working very hard alongside the rest of the team for quite a while now. If you wish to, give them congratulations when you see them online in Neos!
We also have a new, highly configurable addition to our Materials, the popular Xiexe Toon Shader used by many in other platforms. Over time, this will replace our current “Unlit Toon” shader. We’ll be going over why this is a pretty important step forward for our platform below.
COVID-19 has been changing the way a lot of us are communicating. The Neos Team is very thankful that we can at least provide you all with a virtual universe where you can safely communicate face-to-face in these trying times. If you ever feel lonely, come give us an in-world visit! There’s always friendly faces here. We’re all in this together, so let’s keep going strong!
Welcome to the team, Lewis, Rue, and Shifty!
We have three lovely new team members who have been working hard the last few months to help our community grow and thrive.
In all the excitement we forgot to take a proper group picture, so these two random ones will have to do!
Lewis Snow: Neos Team Sound Engineer!
Lewis has been a part of the community for quite some time now, and has been making some amazing items for everyone to enjoy within Neos. He’s quite multifaceted in his talents, ranging from modeling, world creation, LogiX creation, and sound design. He hardly needs an introduction, though, as he’s quite the social butterfly and is well-known throughout the community.
Rue Shejn: Neos Team 3D Modeler
Ever since Rue has joined, he’s shown a huge interest in helping Neos move forward. Within his first day, he built out a world using only in-world tools. Now he’s progressed on to 3D modeling from within Blender and bringing his creations into Neos. He’s been working alongside our main 3D artist, Aegis_Wolf, for a couple months now on the MetaMovie project, improving his skills and showing his team spirit.
Shifty: Neos Team Bug Management/Triage
From day one, Shifty has shown a huge interest in learning all they could about Neos, and has used their knowledge to assist anyone in need. You’ll frequently see Shifty in our official Discord server’s #questions-help channel, eager to answer any questions they come across, and taking the burden of helping users with troubleshooting bugs off of the shoulders of the rest of the Neos Team.
Xiexe Toon Shader
Based on popular community demand, we have added a new Toon shader, to replace the aged Cubed’s Flat Lit Toon we’ve been using for a while. After evaluating several candidates suggested by our community, we have picked the Xiexe Toon Shader as the best balance of features and clean maintainable code.
Because long term compatibility is crucial for Neos, we have stripped away some functionality that we’re not certain we can ensure will stay supported, especially with some upcoming changes to the rendering pipeline or introduction of our own toon shader at some point.
Nevertheless this shader still offers greatly expanded functionality and customizability and better interactions with the lighting in worlds. So far we’ve heard positive feedback on this new addition!
Once a few more functions are added in and the integration is polished, we’ll deprecate the Flat Lit Toon and auto-convert existing instances of it to a close equivalent of the Xiexe Toon.
The functional UI elements have their name: Facets
During the design phase, we have called the individual functional pieces of UI “widgets”. However this term doesn’t quite describe them well, because they can be anything from just a tiny FPS counter to a complex component or scene inspector.
After a discussion with the community on our Discord (in the #devlog channel), we have settled on adopting a new term: “Facet”. This will describe any individual self-contained modular piece of the new UI.
Each facet is going to be a part of a “container”. This can be the dash, its own individual window or a grid on your palm. The important part is that they can be freely moved between containers, allowing you to rearrange, modify and extend the UI so it suits your needs.
Under this new system, each screen on the dash is going to be a container, usually with multiple facets. By default it’ll be preloaded with the official ones for the common functionality, but allow it to be customized and expanded with community made facets, to introduce completely new functionality to the UI.
We chose this term for a few reasons. One of them being a nice metaphor. Facets can be nice and shiny pieces, like on a gem. And having the UI be highly customizable can be considered to be multifaceted.
But also importantly, it’s not a term that would be used too commonly and confused with other things. We expect that the community will start building lots of custom facets and once we roll out the Neos Workshop, share or sell them, so having a unique term will make it easy to search.
Community Highlights
Avatar Motion Recorder by Dante
Dante has created an amazing piece of LogiX, which can record a user’s body movements, save them into an avatar, and that avatar can play the recorded animation! This will be great for creating NPCs in all types of games!
Planetary Prometheus by BIOHAZRED
This dark, beautiful world is inspired by Destiny, and features many interesting areas and mysterious structures. Great for hanging out and exploring! Come bring your friends to this amazing world!
Celebrating Saint Patrick’s Day in Neos
We hope everyone had a happy Saint Patrick’s Day this week and stayed safe! And thanks to everyone who joined us for the celebration party in Neos in Epic’s Cave Club by Epica2m! You can check out this beautiful world in Neos or watch the livestream here:
GDC 2020 event in Neos
This year we had the honor to participate in the Playable GDC 2020 event as one of the social VR spaces that people could try out at the event and serve as one of the camera feeds for their livestream. It was a blast, thanks everyone for joining and trying out Neos!
What’s Next?
Currently the work is undergoing on implementing the new UI. A few small components have already trickled into the builds, with more to come. First we are replacing smaller parts of the UI that can be released in smaller chunks, to provide improvements early on.
This includes the new circular menus, lasers and laser interactions (like remote grabbing and clicking) and equipping tools and items. You’ll be able to use these still with the old dash and windows.
The next step after that will be the dash itself and the facet system. Since for this it’s harder to replace things piece by piece, it will take longer to rework all of the important bits and swap the dash, but we’ll release the bits and pieces in regular bits for you to play and experiment with as we have done with UIX.
Hello everyone, welcome back to your weekly dosage of NEOS news! This week we’ll be talking about our new semiweekly podcast, brought to you by our wonderful Team member, Coffee!
We’re moving our release schedule around a little bit to adjust to the Neos Team’s new work schedules, our Friday night streams will still remain on Friday, some time between 6-6:30 PM Eastern.
The Weekly Update will be releasing on Sundays in the evening, specific time pending. The semiweekly podcasts will be Sunday 3 PM Eastern (12 noon PST) and Wednesday 10:30 PM Eastern (7:30 PM PST).
We’re also sorry for missing the weekly update last week! Frooxius, our project lead, had his wisdom tooth pulled last week and was out of commission, so last week was pretty quiet. Hopefully this week updates and details will make up for it!
Semiweekly Podcasts
Coffee has initiated our new Podcast schedule, where on Sundays, we will be having a podcast talk with users along with Coffee and I (Veer). We’ll be talking about some fun and interesting topics revolving around Neos, creativity, philosophy, psychology and how it ties into VR in general! If you want to join the cast, please contact Coffee about joining!
Topics change every week, and we’ll be showing off various worlds as well during the podcast. We’ll be currently utilizing Mixer for our podcasts but our friday streams will continue using Twitch. We want to expand Neos to a bunch of new horizons!
Also, after the streams, we typically will do something fun after for a while. Last sunday we infiltrated Nexulan’s CreatorJam Twitch Stream. We hope to see you there. Feel free to ask us anything, we’ll be responding to chat!
The work on the second phase of the UI/UX overhaul has already begun. The first and most important step is defining the fundamental principles of the new UI. We’ve collected information on common user frustrations with the current UI, the issues it has and things people would like to see.
Based on this we’re designing a new system to solve all of those issues, while providing a good set of ground rules to keep the new UI system consistent and avoid confusing and frustrating behaviors. Decreasing friction for new users is one of the major goals, as well as allowing the UI to grow and adapt as they get more used to Neos.
To achieve this, we’re currently considering a system with following three UI subsystems:
New Dash - this would be a dash screen, similar to Oculus or SteamVR dash. It would contain everything you need to navigate Neos, join friends, socialize and play, all in one place. For new users, this would be the only interface they need to understand to get around and as such having a quick and easy way to open and hide it is key.
Contextual Hand Menus - these would replace the current radial menus. They’d be redesigned to allow quick use and navigation, but also to not block any interactions and automatically dismiss themselves when not interacted with.
The purpose of these menus would be to provide functions that are contextual to user’s hand - destroying, duplicating or equipping items as well as quick access for common functions for equipped tools.
One key difference is that those are non-essential for socialization. We still want to make them easy to use, but any functionality necessary for socializing/navigating will be moved to the dash (e.g. locomotion mode), decreasing the systems a new user needs to learn, while allowing quick workflow as the user gets more experienced.
Hand / Arm / Head / Userspace UI slots - these would be designed for more advanced users, as they get more used to Neos and want to improve their workflow. Thanks for the widget-based design, pretty much any piece of the UI could be taken out and placed in a different place.
For example, instead of having to open dash for access to voice controls, you could take the voice widget and put it on your palm for quick access. Or take the FPS counter and pin it to a permanent place in your viewport.
By default, this system would be empty, not requiring new users to know anything about it. However as the user gets more experienced, this would allow them to customize their workflow and adapt the UI to their needs. Casual users could place shortcuts for any socialization features, while creative users could put widgets for quick tool or prefab access.
These are several other principles and changes that go hand-in-hand with those systems. Namely:
Widget based design - instead of monolithing interfaces, every piece of the UI would be containerized into “widget” (we might call them something else later on) - individual modular piece that can be placed/snapped into lots of different places.
More complex UI’s can be composed from several interacting widgets - for example the friends list can have a widget for friend browsing/search, another for viewing their profile, another for status and another for chat.
This allows for several things. On our end it simplifies the development, by breaking up the pieces and making them have more clear defined roles and allow for better reuse. On the user's end, it lets you take a piece of the UI - say a chat window with a particular user and pin it to your hand or playspace.
And importantly for creators, it gives the ability to extend or modify the UI in much simpler ways. The community can build completely new widgets that you can then place into your UI or replacements for official widgets - for example building a different chat or friend browsing/search, giving everyone more control over Neos.
Emphasis on using tools without equipping - equipping tools and items can be quite confusing for users, so we want to make several improvements there. One of them being more emphasis on being able to use items without having to equip them first, simply allowing to hold an item or tool and use it.
Disabling shortcuts by default - another related change would be redesigning behaviors to be more explicit and use existing systems that the user is already familiar with. For example if the user wants to actually equip a tool or item, they would do so through the contextual hand menu.
This will prevent scenarios where using the double grip to equip is difficult for users to execute correctly or happens by accident, making the users confused, because their controls have suddenly changed.
However we still want to have shortcuts, so having ability to enable them in settings is equally important, again allowing the user to improve their workflow as they get more used to Neos.
Explicit laser toggle - users grabbing or clicking things by accident due to infinite range of the laser is one of the other common confusions. To solve this, we want instead switch to a more common scheme used in SteamVR, Oculus Home and other places, where pressing the trigger once will first activate the laser.
This will let the user to click remote items and grab remote objects. The laser will automatically dismiss itself when not in use. We believe this will also improve immersion, putting more emphasis on physical interactions by default and having the remote ones being more explicitly activated.
It will also let us improve interactions with the UI. Because the interactions will be more purposeful, we can for example allow us to use a joystick for scrolling the UI panel while it’s being interacted with, without fear that it will be randomly blocked by this behavior by the user accidentally pointing at some distant UI.
This is more or less the gist of the crucial UI changes and principles. The are a lot more things, details and implications that are considered and any of these things can change as we go on, but hopefully this gives you an idea of our goals and thought processes for the redesign.
If you have any thoughts, suggestions or feedback, let us know! You can talk to us on Discord or the UI related topics on our GitHub issue tracker.
You can also check out Frooxius' notes on the overhaul by clicking on this thumbnail:
Linux Client Support
Neos now officially runs on Linux! While far from perfect, the native Linux builds are usable both in the debug screen mode and in VR, allowing you to do most things that can be done on the Windows counterpart. You can host or join worlds (there’s a full cross-play support), hang out with others or build.
Currently there are several major limitations. Video playback is not supported, some shaders don’t work (mainly Flat Lit Toon), 3D models can’t be imported on the Linux build (but already imported models will load) and visemes won’t show on avatars due to lack of Linux support in the OVR Lip Sync library.
Regardless, this is an important step towards multiplatform support, as those issues can be fixed or mitigated over time. In the meanwhile, we recommend using the Windows version, but if you’re okay with those limitations simply download Neos on Linux version of Steam and play!
You can discuss the development of the Linux build on our Discord or here on GitHub.
Etee Controller Support
We’ve brought Etee controller support into Neos! Currently, the system is a little buggy since the controllers are still in development, but at least we’re seeing the family of usable Neos controllers grow a bit! Supporting a wide variety of hardware is important for us, as it gives more users access to the shared metaverse.
Updates, optimizations, tweaks as usual
Apart from these big features, Neos has received many smaller tweaks, optimizations and bugfixes as part of its daily development. Watch the #neos-updates channel on our official Discord or the patch notes on Steam for details.
One of the major ones were optimizations to our cloud infrastructure. We have moved from Windows App Service to Linux version, providing significant cost savings and allowing us to scale more freely under load and we have made major optimizations, which improved the stability and lowered server utilization under load.
Community Highlights
Bob’s Sleeping Place by Bobotron
A relaxing little world, dimly lit to help keep a calm atmosphere and may even help users get sleepy before bed. Complete with a unique media player and a full playlist of chill music, you’ll definitely feel zen after visiting.
Avali Campsite by Kazun
This world invokes nostalgic feelings of Starbound, with beautiful music accompanying familiar visuals of Avali architecture. You’ll find a cozy little Avali tent, some computer hardware, a galaxy map visualizer, and a longing to travel the stars in the sky.
Escher Stairs by GearBell
GearBell is continuing to wow us with her amazing worlds! This is her VR rendition of Escher’s Relativity, a gravity defying, mind-bending piece of historical artwork. A really fun tooltip is provided that can shift your gravity so you can enjoy this world from all of it’s respective angles.
Space Commute by Mr.MegaTronic
Mr.MegaTronic has created a stunning world where you’re in a commuter train in Space! The seats are set up with avatar anchors, with a set of chairs utilizing an experimental anchor creation system. The lighting and materials are top-notch, so give this world a visit!
Remote University lecture due to the COVID-19
Because of the Coronavirus COVID-19 threat, the schools and universities in Czech Republic have closed down. Doc. Petr Klán, who teaches VR1 class at the Czech Technical University in Prague wasn't stopped by this, instead doing his lecture fully remotely through Neos, as well as student's exercises.
Unfortunately the lecture is in Czech, but if you're interested you can give it a watch here:
What’s Next?
Our main focus is currently the UI/UX overhaul. We'll be starting to implement first parts of it soon, so keep an lookout for changes!
Thanks again for reading our Weekly Update! We’ll keep you up to date for future events and happenings within the next few podcasts and streams, as well as future weekly updates to come.
Look for us on Twitch and Mixer as some of us will be streaming for fun on non-scheduled days! And as always, stay happy, stay creative and have a great week!
Adding Etee controller support. Sorry for lack of builds or being around recently, I've been out of commission for past few days (my wisdom tooth got inflamed and had to be pulled and I spent most of the week in fever/pain :( ), just pushing this one out because I promised a delivery date. I'll have some more builds for you soon!
New features:
- Added support for the upcoming Etee controllers -- They need to be used with the Vive Trackers for 6 DoF tracking -- Assign the trackers a "Right Shoulder" and "Left Shoulder" role in SteamVR input binding, depending on which hand they're held in (shoulders are used due to some issues with SteamVR Input) -- Launch Neos with -Etee argument to enable etee support -- Here's a quick demo video: https://www.youtube.com/watch?v=BKF-OF1oyus
Tweaks:
- Added info whether a finger tracking solution tracks the metacarpals bones. This allows the hand poser from trying to update or simulate those with some hand tracking solutions, resulting in mangled hands.
We have a very exciting update this week, the technical phase of UI overhaul is now complete! I’m excited to introduce UIX, our new high-performance flexible UI framework that will power Neos’ UI for years to come.
And even though right now the UI still looks more or less the same (that will start changing very soon though), it brings massive performance improvements, significantly reducing lag with inspector, friends lists, inventories and other heavy UI’s open. Read more on it below!
Last week we also held a special stream discussing the future of Neos’ UI. Thank you everyone for your feedback, suggestions and ideas! With UIX complete, we’re now moving onto the second phase of UI overhaul to improve the ease of use and visual aesthetic of Neos and knowing what issues you have and the things you’d like to see in the future will help us with the design tremendously.
Don’t forget to join us for today’s livestream as well! Not only we’ll be talking and showcasing UIX, but more importantly the community creations from February! After all you’re all who gives this metaverse life.
Massive performance improvements for the UI
One of the design goals of UIX was to significantly improve performance with complex UI’s in Neos, particularly inspectors. We have achieved this through a combination of design principles, that have provided orders of magnitude improvements.
The old UI system built with Unity UI would easily bring the framerate under 20-30 FPS opening a single scene root or avatar rig, but with UIX you can open dozens without affecting the framerate.
Similarly if you have accumulated a lot of friends in the Friends dialog, opening this would cause many people to freeze briefly and drop the framerate by dozens of FPS. Virtually all UI interfaces are now significantly more optimized, removing or reducing initial hitches and their continuous impact on framerate.
This makes Neos much more comfortable to use for everyone, allowing more users to easily edit inside for a world without hurting other people’s experience (and their own) and makes accessing and modifying complex components (e.g. DynamicBoneChain with hundreds of bones) possible.
There are 4 design principles that have made UIX a highly performant framework:
Asynchronous - only basic update information is collected on the main thread and computations are then done in the background, while the rest of the game still runs. Complex layouts that take long to compute will no longer freeze you until they are done
Multi-threaded - a lot of the layout and generation work is split across multiple cores, using your CPU better to compute UI faster, resulting in snappier and more responsive UI. Each UI canvas also runs its own loop, allowing them to update independently of each other, instead of freezing the game until they’re all done
Change-driven - only the changed parts of layout will actually be recomputed. UIX intelligently invalidates only properties that have actually changed and “absorbs” invalidations that produce no effect higher in the hierarchy. This reduces the overall amount of work when only parts of the UI update every frame
More efficient - the compute and layout algorithms have been designed and written in a highly-performant way. Even without multi-threading and change tracking, UIX takes fraction of time to compute the same layout as the old Unity solution
Custom font support, materials, unicode and more features
Performance wasn’t the only thing that UIX has improved. Built with our new text rendering system, UIX inherits all of its capabilities as well!
Now you can use any TrueType/OpenType (.ttf, .otf and such) fonts within the UI. Want all inspectors to use ComicSans? We don’t see why you would, but now you can! And of course you can use multiple fonts for your own UI’s, the possibilities are limitless.
Dynamic generation of Unicode glyphs is also supported, so languages like Japanese, Korean, Chinese, Russian and others will now render correctly in all interfaces - inspector, inventory, file browser, in-game messaging and all others.
Another of the additions is support for materials. UIX neatly fits into the rest of Neos’ architecture, allowing you to use pretty much any material for any part of the UI. Most materials don’t support things like masking, so they won’t work well in some contexts, but as we add more UI materials the possibilities will grow!
If you can use inspector like this, you're either massive Neos fan or massive Stargate fan.
Fixed glitchy UI behaviors
Neos’ UI was long plagued by some unpleasant and confusing glitches, that couldn’t be easily fixed due to the hacky nature of the old UI system built on Unity UI. In comparison, UIX is a solution fully native to Neos and independent of Unity, giving us full control and nicely integrating to the rest of Neos’ engine.
As a result, all those long time bugs were fixed. Overlapping UI windows will no longer cause masking issues, making UI render where it shouldn’t. Pointing one controller at one window and another at some other now also works properly, instead of selecting random elements instead, confusing users.
Cases of some UI being randomly mangled, misaligned or missing have also been fixed. For example the notoriously missing “2/@” key on the virtual keyboard, often confusing new users trying to type their email address or the inventory window buttons popping out of its bounds.
UIX makes it significantly easier to move forward, introduce new features and fix more bugs without breaking the whole system.
What’s next? Onto the second phase of UI overhaul!
With UIX complete, we now have complete control over the UI system in Neos and full flexibility to add new behaviors, visuals and interactions, the way we want, without being impeded by the old technically limited system that would just break anytime it was touched.
In the upcoming weeks, we’ll be redesigning the core of Neos’ interfaces, to make it much easier to use, especially for new users just looking to hang out, socialize and play and also look up to today’s standards, ditching the old “programmer aesthetic”. Essentially you'll see the actual visuals and interactions change bit by bit from now on!
We’re very excited, because this will be one of the most significant milestones in Neos’ development, making it and its rich functionality more accessible and discoverable to new users and making it much more friendlier and powerful for the existing ones.
You can still provide us with feedback and participate in the process. Either on the GitHub megathread or on our official Discord or Patreon (links below). Now is the best time to provide feedback and ideas, before the fundamentals of the new UI design get locked down! The new system will still be very flexible though, as we expect it so serve us for a long time ahead.
Designing UIX to allow for high flexibility, while also providing exceptional performance took a significant amount of time, more than I have initially expected, but I believe the performance benefits alone are worth the effort and I am thankful for your support and patience through this.
With the old Unity UI system being excised from the codebase we have paid one of the biggest Neos’ technical debts from its alpha phase and we’re free to move on forward into the future.
Today we have a special one. With the new UI framework UIX now nearing its completion, the technical phase of UI overhaul is going to be finished soon and we can move on to reworking the visuals and interactions of the UI system.
It’s no secret that the current UI has many problems, that lead to a lot of frustration in both new and existing users and doesn’t look or feel like a modern app would. With the technical backing of UIX, we plan to change that and make it easier, sleeker and prettier for everyone.
While we already know many of the major problems from your feedback from the past year and half, we feel that now is a good time to get a lot of it together and help shape what will the new UI and UX of Neos become.
Whether you are a regular Neos user, or someone who tried it and went away because of the bad UI, we want to hear from you. What are the things that frustrate you the most? What would you like to see in the new UI?
Making the new UI both simple, yet powerful
We have several goals for redesigning the UI and UX of Neos to bring up to the standard. One of them is making it easier and more intuitive to use, especially for newcomers, to remove the high initial learning curve most people face and that unfortunately turns a lot of people away.
Part of that will be major unification. Currently Neos has lots of separate UI’s and widgets that have accumulated over time and that aren’t very consistent, adding too many things for new users to learn with how to interact. With the new UI we want to put everything into one place with a consistent usage pattern, so you just need to know how to point and click.
At the same time we want to keep our current power users in mind and allow the newcomers to more easily become ones too. To do this, our goal is to make the new system also a lot more modular. That way you could pluck different parts of the UI and rearrange them or put them on different places within your user space or on your avatar or even completely replace with community made widgets (or the ones you make yourself).
This way the simple unified UI will serve as a starting point, from which you will be able to customize the look and structure of the system to your own tastes over time, while also giving the community the power to build custom parts of the UI and share them with others and later with introduction of in-game economy even sell them for NCR (Neos Credits), giving our skilled creators another avenue for revenue.
Doing both will definitely be a challenging task, but also a very important one. Up until now we always considered the current UI “temporary”, something to hold us over while we work on other features of Neos and a proper framework to power the new system.
Now with UIX nearly complete and getting ready to replace the old technically limited system, we can build the UI we really want, but also the one you want! It is going to represent Neos and our community for a long time, so we want to hear from you.
Help us shape the design of the new UI
What would you like to see in the new UI? What frustrates you the most about the current one? What do you like on the current one? What do you think is the major cause of the high learning curve and what do you think would help to ease it?
Whether you are a seasoned Neos user or you have used it only briefly and have been waiting for a good UI we want to hear from you. For the duration of the next week is your best chance to help shape the design and look of the new UI system by providing us with your thoughts and feedback.
We want you to understand the process as well. While we won’t be able to implement everyone’s exact ideas, in part because we expect a lot of diverse and different ones, we hope to distill the essence from all of it - the good principles, the pain points (to avoid) and incorporate all of that into the design.
Even if your idea or suggestion might not make it its exact form, it will still influence how we think about the new design and our plans for the future, so don’t hesitate to share it, even if it’s out there!
On February 21st at 3PM PST we will hold a special livestream on Twitch to discuss all the ideas and suggestions with you live, so remember to tune in by then!
If you won’t be able to make it, you can still share your ideas before then. Write down a comment here in the discussion or post it on the UI/UX redesign topic on our GitHub. We will gather the comments and discuss them on stream next week.
We’re looking forward to hearing from you and to finally fixing one of the biggest pain points that our users were facing for so long. There are exciting times ahead!
UIX framework is nearing its completion
The new UI framework dubbed UIX is now nearing its completion! There was even more complexity to deal with than I originally expected, so it unfortunately didn’t make it this week, but I’m pretty confident it will be ready sometime within the next week.
For those unaware, this is the new technical UI framework, that will completely replace the current solution built on Unity UI. This will get rid of the technical limitations of the old system, which were a big part of the reason why the current UI is the way it is and solve another major pain point - performance.
In the devlog video below you can see the system now handling multiple layouts - horizontal, vertical and grid and also incorporating the new text rendering system into itself, with full support for layout metrics, autosizing, custom fonts, languages with large characters sets like Japanese, custom materials and more.
The system efficiently handles even large amounts of text and UI elements even when constantly updating thanks to its efficient and multi-threaded design, which is going to be important for things like inspectors.
Near the end of the video you can also see another aspect of its design when handling an enormous amount of text (or any complex UI element) - while the UI itself gets choppy, the game still maintains smooth framerate above 120 FPS.
This is thanks to its asynchronous design - the heavy computations happen on background threads without bringing the main FPS down - no more intense lag when you open a large object in the inspector! (note that the lag you see in the video is due to the Inspector still using the old UI system)
Overall ensuring high performance and reducing the work needed to be done was one of the most challenging parts of designing and implementing UIX. The system does a lot of complex flagging and caching to avoid as many recalculations as possible, especially when only parts of the UI change.
The system also intelligently combines materials and meshes as the UI is generated - e.g. if you have multiple text elements using the same font (and material), they end up batched into a single mesh.
There are still several things to do before it’s ready, mainly adding scroll areas and interactions so you can click and interact with the elements and adding various features and polish to match the current UI system to allow for a seamless swap.
Here's an earlier video showing some of the development work and experimenting with UIX, particularly on the grid layout. Later in the video you can see it handling 5000 individual elements!
I expect this to happen sometime next week. I know I’ve promised that the new framework would come sooner and I have greatly underestimated the complexity required to design and implement it properly (even though I already thought it would be one of the most technically complex parts ^^; ) and I apologize for that.
But I am thankful for all your support and patience throughout this. It will be worth it for years to come!
New versioning scheme
In other news, we have switched to a new versioning scheme for Neos to make it easier to make sense of the build numbers! Due to the build number being semi-random and non-sequential, it was often difficult to tell which build number was newer.
The new scheme follows a more modern approach, where the build number is essentially an UTC time and date of when the build was made, starting with Neos Beta 2020.2.9.629.
The format follows <year>.<month>.<day>.<minute of the day>. First three numbers are simply year, month and day of the build, the last number is the minute of the day when it was built. There are 24 hours * 60 minutes - 1440 minutes per day, so the last number will range between 0 and 1440.
The important take-away is that the build number will now always increase, making it easier to tell if you’re using an older build when there’s a new one out!
Community Highlights
Campfire by Dusty
Sit by this cozy campfire in the woods, roast some marshmallows and hotdogs, and enjoy the night breeze with friends! This lovely little world is small and intimate, just the right place for a small group to hang out in!
Valentines by GearBell
Come check out one of GearBell's newest worlds, right on time for Valentine's Day. With it's lovely Valentines theme, you can take your significant other here for a romantic session of shooting each other with love guns!
What’s Next?
As mentioned in the paragraphs above, the next week is going to be pretty much about finishing UIX and replacing the old UI framework and getting ready for the visual/interaction phase of the UI overhaul, by gathering your ideas, suggestions and thoughts!
Make sure to tune in for our live stream on February 21st at 3PM PST next week (and don’t forget we have one today too ;) ) or post a comment on Steam, Patreon or GitHub before then (wherever you prefer) when we’ll discuss it live with you!
We’re very excited to get to this stage, Neos wouldn’t be here without you, so thank you again for your support, enthusiasm and creativity! We have reached nearly 300 supporters and $5000 per month on Patreon! We're very grateful for your generous support, never we have imagined having such a great and generous community, you guys are all awesome!
Welcome back to the weekly update. We’ve got a small one today, as most of our development efforts have been focused on the new UI framework, which is nearing its completion. Parts of its design proved to be more challenging than expected, but they’re now mostly solved.
Despite that, we had some exciting events. Last week Aegis_Wolf built a functioning simple 3D modelling tool purely in Neos. This week another of our team members - 0utsider, has built a functioning CHIP-8 emulator completely in VR!
Neos has received a bunch of small additions, optimizations and bugfixes as usual, you can read more about them below.
We’ll be talking about this and more during our livestream on Twitch tonight! We’ll be answering your questions and hanging out with the community like usual so feel free to visit!
0utsider’s CHIP-8 emulator!
0utsider, one of our team members, has built an entire CHIP-8 emulator within Neos, based on the original CHIP-8 interpreted language, all made purely in-game with LogiX! This emulator is capable of running ROMs for the COSMAC VIP microcomputer, so you can even play simple games on it.
“It was fun building the Chip 8 emulator in Logix. And hangout with my friends in VR as they would drop by to see the crazy mess of wires running about the gm_flatgrass map where i worked on it. Garry’s Mod was the first game where I made the emulator run in it’s Logix style programming system.“ - 0utsider89
Avatar pose offsets for more flexible setups
We have added a few new components to help with avatars that have unusual body proportions: AvatarTrackingOffset, AvatarPoseOffset and AvatarPoseFilterInstaller. Using these, you can apply a fixed offset to your tracking space or to individual body nodes.
This can be used to setup avatars that have very short legs for example, by pushing the whole tracking space into the floor to compensate, while preserving arm length distances. The offsets are also tied to the avatar itself and are automatically applied to anyone wearing those avatars, without having to fiddle with the settings.
More reliable 3D model import
After reports of some rigged 3D models importing incorrectly, we have investigated and found a series of bugs, particularly for models with bone name clashes. As a result, the Assimp library used to decode the 3D model formats has been updated to the latest version from source and those bugs were fixed, making more models to import correctly out of the box.
Steam Audio branch
Currently Neos is using the Microsoft HRTF Spatializer. While low in audio quality, it provides the best stability and reliability out of available solutions for the moment. Our long term goal is to switch to the Steam Audio spatializer for its high quality and feature set, but at the time it suffers from several issues that prevent us switching to it fully.
However if you’d like to test it out or use it on your own risk, you can! You can do so by switching over to steam-audio branch on Steam, in NeosVR properties. The branch is compatible with regular Neos and is updated in sync with the main build.
While this offers better audio quality, be aware that you might get random pops and complete silence until Neos is restarted and random high CPU usage when playing sound effects. Those are issues with the Steam Audio library that we are waiting to be fixed first and they seem very random in nature, with some users not experiencing them at all, while others encounter them often.
General additions, optimizations and bugfixes
As usual, Neos has received a bunch of bugfixes and optimizations over the course of the week, based both on user reports and our own discoveries. We finally got rid of the slow initial load for inventory folders with lots of items, reduced some memory allocations and CPU usage. Random logging out for long running sessions (particularly headless) was also fixed.
There are some new LogiX nodes as well, particularly Cubic Lerp and Cosine Lerp by Coffee, which allow for building nice procedural animations right inside of Neos. Check out the #neos-updates channel on our Discord or the small patch announcements on Steam for more info!
Layout system for UIX
The full details of the layout system for the new UI framework UIX took longer to design and work out than expected, but they’re now finally being implemented. This is one of the most important parts of an UI framework, as it is responsible for automatically building complex layouts out of several UI elements.
It is designed to handle anything from a simple row or grid of buttons, to complex nested layouts flowing in different directions and provide extensible framework to implement more layout components in the future.
One of the goals of the system and particularly challenging parts of the design was performance. Not only are all computations deferred to a background thread, requiring the synchronous part to do as little as work as possible collecting the necessary information, but it’s designed to avoid recomputations for parts of layout that haven’t been affected.
To achieve this the system is designed to use a hierarchical invalidation propagation, with a way for different components to “absorb” particular changes. For example if a width of a child element changes under an element that has a fixed width itself, the changed width will not propagate beyond that point.
At the same time it will trigger sufficient invalidations that will result in necessary recalculations - even though the width might not have direct effect on parent’s width, it can affect its height though more complex relationships (like text wrapping) and the layout system needs to be able to handle that.
Overall, this will lead to the new UI framework being more responsive, taking less of your system resources (particularly CPU time) and having significantly lower impact on your framerate, while allowing us to build elegant, beautiful and powerful UI’s on top of it.
What’s Next?
With the layout computation system for UIX being worked out and now implemented, we'll be moving to the final stage of the implementation. There are still many things to implement with the new system, but nearly all the hard parts (the layout in particular) are in place now, so the system should be ready to replace the existing UI framework soon.
Thanks again for checking out the weekly update. We hope we’ll have more to share about the UI system soon, it’s been taking long enough, but we appreciate your patience and support. Thank you guys, you’re all awesome!
Our community has brought us a ton of new content! Users have recreated the Prop Hunt game from GMod, another group is building interactive D&D tabletop system called DelVR and there’s an airship game being built with crafting system and customizable ships. So many wonderful projects this week!
We’re getting very close to the UIX framework being completed and replacing the old Unity UI system! The 100% CPU usage issue has been mitigated, memory leaks from saving worlds fixed and the load/save process now uses less CPU and memory overall.
Our graphics designer has built a simple 3D modelling tool completely in Neos. There were some smaller additions as well, like new LogiX node for getting UV coordinates from raycast hit or internal audit log for helping diagnose cases of deleted or overwritten worlds in emergencies.
As always we will be talking about these new features during our weekly livestream, so please come join us! The livestream will be tonight at 3 PM PST (6 PM Eastern). We will be playing the Prop Hunt game on the stream so you can see it in action!
Community Highlights
D&D GameMaster systems by DelVR
DelVR is an amazing project brought to Neos by ChrisWarner103 and ToMo, who are seeking to give players an immersive system to play games like Dungeons and Dragons within VR. They have released their second devlog video, detailing the interactive GameMaster systems they have built. This video is a must-watch, this project is amazing!
Prop Hunt - Medra and Creator Jam participants!
Medra’s weekly Creator Jam had an awesome theme last week: re-creating the beloved hide-and-seek game Prop Hunt, where players would hide as an object while hunters would seek them out, looking for things that seem out of place.
This has been one of the best Creator Jams so far and everyone seems to love to play this game in Neos. Well done everyone!
These two have been hard at work creating an amazing way to build, using triangles and some very clever LogiX to create a polygon building system! Yet another amazing system to show that game development is not only possible within Neos, but can be quite fun! Awesome work guys!
Progress on the new UI framework
The new UI framework, internally named UIX (a joke combination of UI, UX and Neos’ naming scheme adding onto LogiX, BaseX, CodeX, PostX and others), is now heavily in its implementation phase!
The new system is already producing visual output and has most of the major building blocks implemented. It might not look as much on the testing videos, but there is quite a lot going on under the hood, as the system is designed to efficiently handle complex UI’s and layouts without significantly impacting the performance.
Any changes to the UI are collected and registered synchronously as they happen, with minimal amount of computational work on the main thread. The heavy lifting of propagating the updates, sorting items, computing layout and geometry is then done on background threads, spreading the work onto other CPU cores and avoiding stalling the main thread and freezing all the visuals.
The system already handles masking and has a clever way of splitting the layout hierarchy into multiple “graphics chunks” - mostly independent pieces that calculate their own geometry in parallel and isolate the changes happening within the UI to reduce the overall amount of computation needed for each update.
For example the root of a scroll region will become its own graphic chunk, so instead of having to recalculate the geometry to shift all the vertices, the whole chunk is just moved. Graphic chunks are also used to implement masking, naturally splitting the geometry into regions with their own stencil buffer parameters.
Because the graphic chunks can be easily dynamically created and removed anywhere within the hierarchy, we can also implement auto-balancing optimizations. If the system notices a part of the layout frequently changing, while other parts remain static, it will simply insert a graphic chunk at the right point in the hierarchy and isolate the recomputations only to the frequently changing parts.
More memory optimizations and 100 % CPU usage fix
After more reports of memory leaks caused by saving worlds, part of the save and load procedures have been rewritten to be significantly more efficient and work around a memory leak in a BSON library that is currently being used.
Thanks to this loading into worlds and saving them should now be smoother, taking less CPU time and significantly lower amount of RAM, reducing the stutters and the memory used when saving worlds will now get properly reclaimed, preventing the RAM usage from bloating over time.
We have also tweaked the video playback engine selection after the introduction of youtube-dl integration. This should significantly mitigate random 100% CPU usage reported by many users. The change will now favor native Unity playback engine to better utilize system’s native video decoding (including HW acceleration) when playing YouTube videos in Neos and avoid triggering the CPU usage bug in the 3rd party libVLC playback engine.
Simple 3D modelling tool
Aegis_Wolf, our graphics designer, has built a simple 3D modelling device completely in Neos! You can build models out of triangles or quads, with vertex snapping and coloring and using several symmetry modes.
The built model can then be then baked into a single mesh and used as any other model inside of Neos, even exported into FBX or made into an avatar. Aegis is still actively working on this tool, so expect more additions and updates. If you’d like to play with it, you can find it in Neos Essentials or the MTC Art Room.
New LogiX nodes and audit log
We have gotten some new LogiX node contributions from Coffee! There are two new operator nodes x2 and x3 for quickly squaring and cubing numbers. There’s also HitUVCoordinate node under the Physics category, which allows extracting a UV coordinate from a raycast that hit a mesh collider, allowing for some potentially interesting applications.
Neos backend now also has an audit log for any changes being done to worlds and items. This will help us investigate worlds or items disappearing and provide a safety net to restore accidentally overwritten or deleted items and worlds.
However this is meant only for emergency use-cases. If you have important creations you don’t want to lose, it’s a good idea to keep backed up copies and versions of those. In case you lose something you can’t recover, contact Neos staff and they’ll be able to help you.
What’s Next?
There is still quite some work to do on UIX, the new UI framework, namely layout components, interactions and implementing a proper set of components and behaviors so it can fully replace the current hybrid Unity UI system, but after the long design phase it’s finally in the last stretch.
We expect that the swap will happen sometime next week and usher a new era of lag-less inspectors and allow us to finally begin on overhauling the UI visuals and interactions to make Neos significantly easier to use for both new and existing users.
Thank you again for joining us on this week’s edition of the Weekly Update! We hope to see you all at our livestream tonight. And thank you again to all of our Patreon supporters and creative users, without you this project wouldn’t be the same!