Freeform Camera
As the last major addition to the first phase of our new Desktop mode we have implemented a Freeform Camera mode, which makes the building process without VR much easier. In this mode, you can decouple your view from your avatar and freely fly around the scene. Currently it is bound to the F6 key, but will be changed in the future. The mode also frees up your mouse cursor, allowing you to interact with the scenes and gizmos without having to turn your view. To change the view, hold the Ctrl on your keyboard and then the Right Mouse button to trigger panning mode. You can release Ctrl afterwards. While panning the camera, you can also use movement controls to fly around.
https://youtu.be/O3CAU6xAsWQYou can also focus the camera on a specific object in the scene. Either hover over it with the cursor in Freeform camera mode and press Ctrl+F, or select it with the developer tooltip and press the F key. In focused mode, the view will move with the object and you can use Alt+Right Mouse button to orbit the view around and Scroll Wheel to zoom in and out. While you’re in this mode, Neos also shows a visual to represent your view to other users in the world. This is fully customizable as well as it’s simply a part of the avatar and we’ve already seen people do some creative stuff with it!
Overall we hope that this mode will complete a well rounded basic set of camera modes for both socialization and building in the Desktop mode, with easy switching between first person, third person, UI Aligned camera and Freeform, as well as switching between desktop and VR when you have a VR headset.
UI Aligned Camera and other Desktop improvements
The rest of the desktop features have received more features and polish as well. We have fixed up lots of issues with the UI Aligned Camera in particular and improved the general interactions to provide smoother and more intuitive experience. The view visual will now activate in UI Aligned Camera mode as well, but only in scenarios where the targeted UI would be too far away or outside the field of view of the actual avatar. This way it doesn’t need to pop up when you’re interacting with a UI that’s just in front of you or perhaps focusing on a video player when watching with your friends. We have added permission components as well that let you control which of the camera modes are available in your world. For example for any game worlds, you can only allow first person mode, to avoid people peeking behind corners or watching other players. Existing worlds are auto-initialized based on their streamer camera permissions since those are usually a close proxy - e.g. if you’ve configured the streamer camera to disallow watching other players, freeform camera mode will be disabled for that role by default as well. Various LogiX nodes were added as well, for checking which camera mode is user currently in, whether the view visual is active or which hand is configured as their primary. You can find all the additions, tweaks and bug fixes in our build release logs either here on Steam or on our official Discord. While there’s still a lot that we want to do with the Desktop (check out our GitHub roadmap!), we think that in its current state it should provide a pretty good experience for both new and existing users and we can put our focus on other issues.
ProblablePrime and Chroma joining the team
This week we have brought on two new members to the Neos Team to help out with Neos’ development, both on the technical and content side. Everyone welcome ProbablePrime and Chroma! ProbablePrime has been a member of the Neos community since early 2019 and many of you probably know him for his numerous Neos tutorials, covering everything from setting up avatars to using a variety of Neos’ tools, components and LogiX nodes. With his industry experience with software development and documentation, he’s joining our team as a Technical Writer and Programmer. Thanks to the access to Neos’ source code he’ll be able to provide better tutorials and documentation on Wiki and any other upcoming resources, providing you with more in depth information on how things work and how you can best utilize them. Apart from documentation, ProblablePrime will be making contributions to the codebase as well, helping to implement features, fix bugs and overall improve Neos’ technical side. Chroma has been helping out with production of the upcoming Neos trailer with his industry VFX and video editing experience, as well as with building out the MTC Streamer room for the past few months. He will be helping with future video and graphics production in the future both for promoting Neos and in-game graphics. We’re excited to have the new team members on to help with this project and we hope everyone gives them a warm welcome!
How our moderation ticket system works
Since there have been some rumors floating around in the community about the internal workings of our moderation ticket system, particularly with team members not being able to see certain issues or people assuming they have gotten automated responses, we have decided to show you some of the internals so everyone can have a better picture of what happens when you make a ticket. The ticket system can be accessed by any moderator or Neos Team member. Each ticket can be assigned to a particular member, but all of them can be seen by everyone in the system at any time, so any member can chime in and see what’s going on. This is a pretty important part, because we have been building a diverse moderation team with different backgrounds and experiences, so different members can provide unique insights based on the issue at hand, whether it’s a social issue or more technical one like exploit. Typically most issues undergo an internal discussion from many members (both moderation and Neos Team where relevant) and are decided on as a group, to prevent biases from a single individual. Our moderation Discord is also heavily tied into the ticket system, with a live feed of tickets as well as a unique channel for each issue which allows us to discuss the ticket internally before making a formal response. Those channels can also be seen by every moderator and Neos Team member who opted in for access. Each ticket is archived for future reference after it is closed. Responses to the tickets have been another source of concern recently, with assumptions that they’re fully automated and not actually looked at. We do not actually have an automatic response system and all the messages have been sent by a person reading the ticket as indication that someone has seen it. Unfortunately crafting a detailed response takes time, particularly with issues that require more detailed analysis (e.g. exploit reports or issues that require gathering evidence), so we typically send a canned response within a day to make sure that the reporter knows that the issue has been received and is now part of the system. To better reflect this, we’ve updated the canned responses wording to make it more clear that the response is being sent by a moderator or team member, but without identifying who they are to prevent cases of moderator harassment and targeting.
Anonymous Reports
Related to the feedback above and some other concerns that we have received, we have also added the ability to send anonymous reports through the moderation system! For any issues where the user doesn’t wish to be identified, but wants to share concerns with the community, platform or even the team, those can be a good way to do them in a safe manner. To make an anonymous ticket, simply go to a page here:
https://moderation.neos.com/anon.php This doesn’t require filling out email as regular tickets do to avoid personal identification. Of course this also means that you won’t be able to receive a response, so those tickets will only be processed internally. Such tickets will also prevent us from getting more detailed information on the issue as well directly and as such depending on the ticket might not be actionable, but we hope that it nevertheless provides a good option to share your concerns for certain situations.
Moving To Azure Pipelines
With the growing Neos Team and community, there has been an increasing need to make certain parts of the development process more efficient and reduce the number of manual tasks that goes into making new builds. As part of this process we have started an ongoing effort to restructure and move Neos’ codebase and its dependencies into Azure Pipelines and switch over to CI/CD workflow. This means that Neos’ own code and code of the dependency libraries will now have scripts in the cloud that will be responsible for building the latest binaries every time changes are pushed to the repository. This is a pretty big task, as we have numerous dependencies, both native and managed (.NET) and will take some time to fully setup, but will provide much smoother development experience, reduce manual labor and errors when pushing out updates or updating the dependencies and enable us to build custom update system and orchestration services (dedicated servers). As the first benefit of this transition, we have recently updated the Assimp library used for 3D model import to the latest version from source for both Windows and Linux and we’ll be able to keep up with its latest developments much easier from now on thanks to significantly reduced amount of manual steps that went into each update.
Updated Roadmaps
Since we often get questions about which features are planned and what’s coming for different aspects of Neos, as well as repeated feature suggestions, we have started organizing some of the major plans into GitHub roadmaps to keep things better organized in a single place, rather than scattered among many issues, Discord discussions and weekly updates. On our official public GitHub Projects page, you can now find several new projects for different parts of Neos, each with some major planned tasks and features, which should give you a good idea of what’s coming and what’s being currently worked on. However it’s important to note that the roadmaps aren’t necessarily comprehensive - there are too many issues overall and the nature of the project often changes during the development, but the roadmaps should provide a good idea of the broad strokes. For example even though we’re now finished with the first phase of desktop implementation, there are still many things we have planned for it. By going to the Desktop project on GitHub, you can find out what those things generally are. We’ll keep updating the roadmaps as we go and anytime a common issue comes up, we’ll try to put it on the roadmap, instead of repeatedly answering it on Discord or inside of Neos. This way we’ll have a good central resource for members of the team, mentors and everyone else to refer to on the plans for the project.
What's Next
With the first phase of the desktop complete and some last polish and bugfixes in place, we'll be refocusing on some other major and minor issues soon. Before that happens though, Frooxius will be taking a roughly week long break, to help reset and refocus after a long time stress from dealing with development and daily issues. This means that there will be no Neos updates for roughly a week and likely no weekly update next week either. While we pride ourselves in a quick development cycle with typically multiple updates each week, we think this is important for a long term sustainability of the development and handling new features and daily issues with a fresh mindset. We're very thankful for everyone's ongoing support of this project, because without your help we couldn't be continually moving forward, implementing new features, tweaks and bugfixes on regular basis!