v2.0: XR Update
The Future of Open Brush is here, powered by OpenXR
Open Brush v2.0 is finally here! This update marks our second anniversary, and the end of a long year of work to upgrade the project to the latest and greatest in XR tech. Here's a quick sizzle reel of the new update!
The bulk of this year has been taken up with upgrading the Tilt Brush codebase to the latest version of Unity, utilising the new XR plugin framework. This was necessary to bring Open Brush to all the latest headsets and utilise the latest features, namely the OpenXR framework from Khronos. Our Desktop and Quest builds are now fully powered by OpenXR!
Additionally, it allows us to easily bring Open Brush to new platforms. Our in-progress Pico port required only a few lines of code to add basic support!
The upgrade has also delivered a huge performance increase vs Tilt Brush and Open Brush v1.0. Highly complex sketches that previously ran at 5FPS are now hitting 50! Many thanks to Bill and Mike for their contributions to this huge upgrade, and Mike for managing our ever-changing build pipelines! An extra special thank you to our power users in our Discord for helping us debug all the small quirks of this switchover! Zandy AncientWorlds Mana 松田浩二
Switching to the OpenXR backend means we can support some great OpenXR extensions. First up, the obvious target was Mixed Reality passthrough on Quest! It's a great feeling to be able to paint in your real world space, and augment your room. So much we can do with this going forward, including world anchors and a new occlusion brush!
This mode works especially nice on the Quest Pro with full color passthrough. We're hoping to bring passthrough support to all platforms in the future, including Desktop via a lovely plugin by Rectus: https://github.com/Rectus/openxr-steamvr-passthrough
Access this via the Environments button! Thanks to Mike for adding this feature.
OpenXR Passthrough on Quest!
Open Brush finally has layers support! This adds a new panel, which currently allows for 8 layers, including the main one. You can add, delete, clear, squash layers, and copy selected strokes to the currently selected layer.
We think this is a really powerful feature for larger sketches, as each component can be contained in a system larger than groups. It also works great to show or hide your drafting lines or reference material easily!
Two new tools have been added to the advanced tools panel, Snip and Join. This works exactly as you'd expect, allowing you to cut strokes in half via their control points, giving you very fine control over the shape of strokes.
Similarly, you can now knit different strokes together, which joins the start and end control points as if it was one stroke! This works really well with the hull brushes.
Snip and Join are the beginning of a whole suite of control point editing tools, we've got some really cool ones in the works such as push and pull points! We can't wait to share more.
We've frequently heard from power users that we have too many builds floating around. They're not wrong! We've taken the decision to distribute experimental mode inside the main release, but we've hidden it behind a toggle that requires a restart, in settings.
Experimental means experimental! We won't be able to provide full support for users using this mode and the experimental brushes. Use at your own risk!
As mentioned above, Unity XR framework allows us to bring Open Brush to new devices. We're pleased to say we're working on ports to Vive XR Elite and Pico devices! Look for more info in the coming months.
We dug into some of the unused features of the Tilt Brush code and found a handy camera control panel! Access this by long-pressing on your camera button.
Options currently include changing the FOV, video smoothing on desktop, adding post-process effects (careful on Quest!), and removing the Open Brush watermark. This is a lot easier than manually editing the config file!
Open Brush is a free app. If you use Open Brush for commercial purposes and, we'd really appreciate it if you could contribute to development! You can find more info on our Open Collective: https://opencollective.com/icosa
We have added support for a few new filetypes, including PLY point cloud data and WebM videos! You can add these via the media library, which is now accessible from the 'More Tools' panel.
We've also enabled the models panel for Quest, it's experimental right now, but enjoy!
This is just the beginning of our Import and Export pipeline upgrades, look for lots more file support and glTF upgrades in the coming months.
Finally, we've added support for pressure sensitive strokes. This is supported on a number of brushes, where the amount you pull the trigger will increase the thickness of your paint strokes, just like on your favourite 2D drawing tools! We're always looking for new ways to add more dimensions of expression to your creations.
Open Brush is nothing without it's strong community of artists, creators, developers, testers and donors. We've successfully navigated the perilous chasm of a major backend switch!
Thank you all for your amazing support throughout Open Brush's development this past year. A lot of this work has been background tooling to enable bigger and better features, securing Open Brush's continued development for many years to come.
We've had over 200,000 downloads across all currently supported platforms, and we hope it only grows from here. Thank you so much for keeping the spirit of Tilt Brush going!
Open Brush is primarily developed by a small team in their spare time. If you'd like to support our work financially, you can do so on our Open Collective: https://opencollective.com/icosa. Funds will go towards funding full-time development of Open Brush! Sharing our work really helps us, we're now available in many more places! Twitter Discord Instagram TikTok Mastodon Reddit YouTube
Thank you all, and see you in the next update, hopefully in the next month!