3D Game Engines for AEC
Christopher Diggins
Creating the Next Generation of Parametric 3D Design Tools
A couple of weeks ago I made a post that Unity was sunsetting their VisualLive and Reflect offerings. Even though it appeared to be stepping away from the AEC industry, it was simultaneously opening doors for smaller software companies, like my own , to release their own offerings targeted at AEC professionals, built on top of the Unity platform.
Unity, from a technical standpoint, is an excellent tool for the rapid development of cross-platform 3D enabled AEC applications that simultaneously target multiple platforms from mobile to VR to desktop. For me it seemed like a perfect opportunity to jump into the market with an offering from Ara3D.com .
All this changed three days ago, when on September 12th, Unity announced a change to its pricing, which included a new fee for run-time installs.
To say this was not well received by the community, would be an understatement. Brandon Sheffield wrote a scathing and thoughtful analysis on the change called the Death of Unity, where he brought up several important points. Not the least of which:
“On top of this there is no minimum cooldown period after they change their fee, so they can raise it as they like, whenever they like. Effectively we're all locked into an upward-only, per-install pricing model that can change whenever Unity decides they need extra revenue to make their stock look healthy.”
On Twitter/X, Cactus VR Studios asked a very important question to the Unity team:
How are installs tracked?
We leverage our own proprietary data model, so you can appreciate that we won’t go into a lot of detail, but we believe it gives an accurate determination of the number of times the runtime is distributed for a given project.
Or in the words of several Twitter/X accounts, “Trust us, bro”. This isn’t an acceptable business for anyone trying to run a business. It leaves so many unanswered questions: what data is gathered on users by Unity, does it comply with GDPR regulations, what happens when a game is bootlegged, or given away as a gift, or resold by a 3rd party, etc.
The way Unity has been dealing with this and responding, it is clear that this was not a well thought out strategic business decision, but rather an opportunistic cash grab. I think it’s safe to say that Unity is flailing about, trying anything to figure out how to generate more money, without a true understanding or consideration of how and why people use the product.?
How it Affected me and My Company
My business Ara 3D was on the brink of launching a free trial of a BIM/CAD to Unity conversion service. The plan was to offer to generate Unity projects plus a Windows executable, for users which embedded their Revit, IFC, Navisworks, or AutoCAD model for free (at least for the first project or two).
Our plan was to include a set of useful scripts and capabilities specifically designed for AEC models above and beyond the basics of visualization and exploring of models: such as counting, analyzing, querying, simulation, mark-up, exporting, importing, and more. ???
In response to the news from Unity, several questions popped-up: do I have to pay a fee for every time someone installs an app I build? What if the customer I gave the app to, decides to sell it to their customer, do I have to pay the fee? These are important questions, but frankly I don’t care about the answer anymore. Why? Because I trust that even if I get a satisfactory answer, that they will not pull the rug out from under me in the future.
Like many other business owners, right now, my Unity plans are on hold while I reassess my options. (Of course, if this service still sounds interesting to you in some form, please don’t hesitate to reach out to me and we can discuss it further.)
What are the alternatives to Unity for AEC?
To answer this question, we need to first start by asking, what we are expecting from a 3D real-time game engine? Game engines like Unity can be used for a lot of things.
If one’s interest was primarily in high fidelity real-time rendering I think options like Twin Motion , Enscape , and Lumion are popular choices. If on the other hand your interest is more in leveraging AR on the job-site, a number of examples include: XYZReality , Argyle , ?Datamesh , Next-BIM , vGis.io , Sitevision . Another use case are collaborative multi-user VR experiences such as those offered by: Resolve , Vrex , and IrisVR . ?
领英推荐
My interest in Unity was as a cross-platform application development platform for any 3D-enabled application we could imagine for construction professionals and business owners. In other words, it was the scripting and plug-in capabilities of a game engine that caught my interest, and I think has a lot of untapped potential as a product.
In reconsidering my options, there are several popular and well-established 3D capable game engine options that I am currently looking at:
However, of special interest to me, are a couple of smaller companies which I am working with who have also built their own scriptable modern real-time 3D engines: VIM and 3dverse .
Both VIM and 3dverse built their own extensible game engine with a modern architecture on top of the Vulkan rendering API.
The VIM Real-Time 3D Engine for AEC
VIM built a real-time engine with both a C# and C++ API and is optimized to handle with ease massive architectural scenes with tens of thousands of objects and hundreds of millions of polygons (e.g., a fully coordinated skyscraper, with all the electrical, plumbing, structural, and architectural details). The VIM engine is tuned to handle 3D models with large amounts of complex instanced geometry, but with simpler materials and shaders, and basic animation.
The first version was developed on Windows but has being ported successfully to other platforms including Android. You can give it a try by downloading the desktop viewer from their website . Talk to them if you want to know more about the API and scripting capabilities of the engine.
Alternatively VIM also has an open-source 3D web viewer written using TypeScript on top of WebGL and Three.JS. ?
The 3dverse Collaborative Game Engine
3dverse is a Montreal based company that also decided to build their own extensible game engine. Their engine (called FTL) is built around the idea of the multi-user experience being architected into the core. They use pixel streaming to provide users with the same high-quality experience across all devices. The 3dverse engine is designed to be extensible using JavaScript. Unlike VIM, their engine was designed for game developers as well as professionals from other industries. This means that the 3dverse engine is supports more complex shading models, and has deep support for skinned animation.
You can give a sample collaborative application built using 3dverse a try here .
Final Words
In the end I think Brandon Sheffield’s summed it up quite accurately when he said: “Unity is quite simply not a company to be trusted.”. Whether or not Unity backs away from this pricing change now, I don’t think it would be safe to assume they wouldn't pull a similar move in the future. I think its clear that they don't understand or care, how and why people use their product, and aren't validating their decisions with their user base. ?
I think everyone in the AEC industry need to work together find and build alternatives, and one way to do this is to work with and support smaller businesses building high-quality innovative technology, and in particular those who are willing to make their source open.
Addendum: September 16th
I recently learned from a Unity product manager that the licensing fee does not affect Unity Industry subscription users. He pointed out to me the relevant text here: https://unity.com/pricing-updates#unity-industry . The Unity Industry bundle costs significantly more per seat, approximately $5000 a year, and I didn't need the extra bells and whistles, so I had never even given a second thought.
What I was told, was that if you or your clients use Unity for industrial applications (AEC, manufacturing, aerospace, etc.), i.e. not games, and your annual revenue is over $1M you have to use Industry. This definitely raised my eyebrows. In the developer world, a licensing fee based on your industry is almost unheard of.
Armed with this additional information, it solidifies my position to avoid Unity, and based on what they just did for developers I definitely wouldn't trust them to not change their policy with regards to the runtime fee.
Founding Partner @ Codeo | Autodesk Expert Elite, Unity Certified Instructor
1 年So basically in your article you are talking about being effected from these changes, but you are not, it might be a good idea to edit it dont you think?
Founding Partner @ Codeo | Autodesk Expert Elite, Unity Certified Instructor
1 年AEC has no changes since they will use "Industry" license type, so no runtime fee
AI strategy for AEC, Founding Member, CPO at Dodda.ai | ex-Autodesk, ex-Katerra, ex-Veev | MBA Entrepreneurship
1 年I had started using Unity for the convenience of creating HTML5 applications. ?? Poof!
Gen AI For 3D at Nvidia | VIM, Autodesk, Disney, Electronic Arts alum
1 年Thanks Chris, nice write up. And yeah, what the heck Unity?!