A-Frame v0.8.0 - Performance and Production
The A-Frame train continues! v0.8.0 has been released, bringing many, many performance improvements through being battle-tested in production applications. Notably, we ported many fixes and performance through building out Supermedium using A-Frame!
We hit A Week of A-Frame 100, highlighting the long way we’ve come such that there are companies and startups taking the leap with A-Frame. There’s even an A-Frame application published on Steam VR! Including:
- Ottifox - A nimble design app that helps you create VR and AR prototypes that run in the browser - without writing code.
- Halo Labs - VR/AR design, prototyping, and collaboration solution for teams.
- Archilogic - Turn floor plans into virtual tours.
- Vragments - Build and publish your own 360 story.
- Scapic - Create immersive worlds.
- Lucid Web - WebVR player.
- Ideaspace - CMS.
- Supermedium - The virtual reality browser.
Alongside many other companies!
The biggest change is allowing to modify three.js Object3D position, rotation,
scale, and visible directly while still maintining in sync in the A-Frame
layer. There is currently overhead with
.setAttribute, but all of that can be
skipped for position, rotation, scale, visible by directly modifying three.js
Object3D. That is a simple object property change. Since object transformations
are one of the most often updated things, this saves on a lot of overhead. In
general, we begin to try to find ways to skip
.setAttribute when able.
Lots of other performance improvements, both in the core of A-Frame and in top A-Frame community components (e.g., animation). We scoured a lot of the codebase removing unnecessary memory allocations and event emissions.
We’ve also upgraded to three.js’s WebVR API, which was a long and grueling process to integrate and catch all the bugs, but we did it! Still a lot to be done on the performance side.
The A-Frame Inspector also got a few nifty features such as tree collapsing on
the entity panel, pressing
f to focus on an entity, and some bug fixes.
Check out the release notes for the complete changelog which includes a list of all new features, optimizations, and bug fixes.
ð Weâre excited to announce the launch of Supermedium, the virtual reality browser! Download it from https://t.co/Lnyvgt7HBY, put on a headset, and surf dozens of VR experiences on the Web. https://t.co/2rloFZl5ko #webvr #ycombinator pic.twitter.com/6aArQKvgpn— Supermedium (@supermediumvr) January 31, 2018
Todayâs the day! Ottifox 2 is here - with Google Poly search built straight into the app, grouping features, streamlined UI and more! For a full run down of all the new features check out our blog post: https://t.co/pzcTTGZJz5 Examples to come! #webvr @aframe #madewithblocks #VR pic.twitter.com/6FfpLZjpqJ— Ottifox (@ottifox) February 6, 2018
I've just released an @aframevr component to pan, rotate and scale the user camera on #webvr, inspired by VR editors like #UnrealEngine and #unity3d. #threejs version coming soon :) https://t.co/bDyWnZVbcH pic.twitter.com/iNF97dhpZy— Fernando Serrano (@fernandojsg) February 28, 2018
Weâre proud to announce the launch of our first WebVR experience! Visit Pierre Koenigâs Case Study House 22 in full 3D on your HTC Vive, desktop, or mobile device. Check it out! https://t.co/SljvOHRnQ2#VR #webvr #aframe #threejs #losangeles #midcentury #modern #architecture pic.twitter.com/iM8AJ8DYT3— Paragram (@ParagramVR) November 19, 2017
Try âc o m p o s u r eâ - immersive experience for stress relief. Built with @aframevr, its #WebVR & #3daudio for desktop, mobile and #VR! Many thanks to @ianpetrarca & @datavized for their skills, wisdom and guidance. Try it. PM me your feedback. Share! : https://t.co/bENdn6U5uk pic.twitter.com/VgYfFLfMbD— Jeff McSpadden (@macspaddy) February 9, 2018
Since v0.7.0 was released in September 20th, 2017:
- There have been 30 new contributors, totalling 223.
- We have 1246 new members in the Slack community for a total of 5980.
- 202,000 people have visited aframe.io since last release.
We will continue performance improvements and battle testing. We will look at how to enable people to build more full applications and games versus small demos. That includes disseminating the knowledge we’ve gained from building a browser, full games, and complex applications using A-Frame. Via guides, frameworks, boilerplates, and open game projects!