Is this a good or bad thing for the long-term usage of their platform, do you think? My gut instinct says bad, since once they go public they will be under continued pressure by stockholders to keep making more and more money, and so they feel increased pressure to increase their prices and/or reduce featureset for the free version (or start charging for it again). They might be more focused on consumer facing features than bug fixing than they have been in the past, also.
I don't know, just seen this go bad with lots of other companies, that leaves me skeptical about how this will go and nervous about making games using their platform in the future.
The investors (Sequoia being the big one) will want to cash out at some point, and then it's either an IPO or an exit. The most likely buyers in an exit-scenario would be platform owners like Apple, Google or Microsoft, which would be terrible for Unity's viability as a cross-platform tool (or at least look that way - just see the reactions that came after Microsoft bought GitHub). Or they get bought by Epic/Tencent, and the market becomes a monopoly, which is pretty damn bad as well. So under the circumstances I think an IPO is by far the lesser evil, even though I do share your concerns about the shortsightedness of public investors (though I'd argue that's a general problem and not a problem with Unity specifically)
I'd be curious to hear your characterization of the reactions to MS buying GitHub.
My observation was a bunch of people in places like the HN comments being angry, but no meaningful mass protest, or exodus from GitHub to competitors, etc.
Seems like Microsoft would be the obvious choice. They just bought Xamarin, they're finally in a good spot with regards to C#'s growing cross platform viability and they're actually a game publisher.
I don't really know why MS would bother unless not doing so would risk a Unity collapse and a loss of a lot of C# development.
Could go either way. If they are smart then they use any money raised in the IPO to create new products or services to grow the business. If they are stupid then they just take the existing customer base and figure out ways to extract more cash out of them by doing the things you mentioned.
This might be a poor PR move for Unity in relation to game developers. Many will read it as a cash grab with more monetization shenanigans lurking on the horizon and decide to switch to engines like Godot Engine. Unity might've actually hurt itself if it loses too many client developers.
It doesn't help that there have already been some recent stories of developers being given the cold corporate treatment,[0] and the recent issue with Improbable.[1]
I've been building a game part-time in Godot[0] and I contribute to the code on occasion. For the most part it has been a pleasant experience[1]. It currently does not have the same feature set or stability as Unity and Unreal, but it IS close and it IS getting better every day. And probably more importantly, it is funded and has smart people on its payroll.
If you are a hobbyist or you are making 2D games, Godot is fantastic right now and I highly recommend that you check it out.
If you are a professional game studio or you care about 3D, Godot might work for you right now, but you will probably hit some rough edges. These edges get smoother every day and now is a fantastic time to help Godot reach the next quality bar, either via donating[2] or contributing code[3].
The whole industry will benefit if we have an open-source toolset without licensing terms and fees. Godot seems to be our best bet right now. There are SO many talented developers in this space and right now most of their efforts go into improving ecosystems that they are PAYING to use. If even a small portion of that group redirected their efforts to improving the commons we would have a top tier product in no time.
While Godot is great it's not really a competitor to Unity with the vast array of use cases that Unity has today, not to even mention the workflows built around the engine.
I would rather bet on Unreal or similar engines with equal features.
As a hobbyist game developer I can attest to the quality and ease of use of Godot compared to Unity and Unreal (note: I've only dabbled with making 2D games). It "clicked" much quicker for me and I can quickly prototype ideas (most of which are terrible, but that's not the engine's fault).
Godot doesn't have authoring tools like ProBuilder, support for FBX, Arnold, Substance Painter (all made impossible do to the licensing put forth by these companies, granted), and poor documentation. They aren't prioritizing design tools the way Unity has. More funding and talent would help Godot on this front. Its changing, but still, nobody outside of hobbyists are taking Godot seriously.
This is almost a standard feature for game engines\game frameworks, Unity, Unreal, Godot, Game Maker, Construct, RPG Maker, Pixel Game Maker and a bunch of other smaller more niche frameworks and engines like Pico-8, Raylib and Oryol all support HTML5 export.
Agree with this - having used Godot and Xenko both are good but with a significant gap between then and Unity/Unreal both can be used to build games/apps and make a living with.
Godot is more polished and excels for 2D and 3D is quickly evolving. Godot also has a great community. Xenko is better for high end graphics and large complex scenes - especially if pushing the edge in VR etc. Since going open source its evolving slowly but steadily. While It is missing some features compared to Unity and Godot it has an incredibly capable foundation and its very easy to build on. The Community is very small but active and it has a lot of promise.
Isn't Xenko done 100% in C#? There is a mentality in gamedev circles, that only C/C++, and maybe Rust are viable for a game engine. Unity supposedly avoids it by the fact that while gameplay code is C#, the engine underneath is still C++. How's Xenko on the performance side?
Yup its C# and then calling through to respective APIS for Directx 11/12/Vulcan etc and via xamarin for mobile. Coming from a C/C++ engine developer background I was very pleasantly suprised how performant Xenko is. It easily gives Unity a run for its money, C#7 is a nice scripting environment and the renderer is a thing of beauty both architecturally and in terms of output.
I was just starting to be hopeful after their decision to hire Mike Acton and put him in charge of a more data-driven alternative to their existing architecture.
Now I'm worried that this will start driving them toward short-term gains more than anything.
I'm predicting that if they go public, they'll ape Epic's storefront model within 3-5 years.
The data-driven architecture seems amazing. They've shown us some great results. I echo your worries that this IPO will probably lock them into short term goals.
I understand the reservation about an IPO changing their motivations, but it seems like a pretty predictable path for a company that has raised >$600m.
It does not seem to me obviously better (for developers or their customers) for Unity to stay private or be acquired. Acquisition could threaten the cross-platform appeal and perpetual private state would not deliver a return to investors.
And I don't think there is an inherent threat to either the freemium model or a perversion of the roadmap. There seems to be real competition between game engines and the value the free offering provides is one of the easiest entry points to game development. This delivers a huge number of potential developers, which is the foundation that sustains the paying developers above it.
Somebody there told me once that their mission was to 'have half the world's creative content created in Unity', meaning not only video games, but films and presumably traditional CAD markets such as architecture and product design. If this is true, I think the real threat to developers irrespective of IPO is one of focus. Can Unity evolve the product for their core market, or will they become too horizontally committed and lose focus?
This is a place where the market could 'correct' a land grab strategy by driving the company to focus on the core business.
Hm, I do not really like that Unity has become such a widely used engine as a completely closed platform. Computer games are part of our cultural heritage by now and tying them to a closed source, utterly opaque and unmaintainable runtime environent will probably not help with keeping them alive as artifacts that can be experienced in the future.
I wish they were in a position to actually open up the core runtime source code so that it can be ported and maintained independently in the future. The tools - the commercially important part of the engine - can stay closed for all I care. I wonder if we would see such a move with shareholders crying for quarterly results.
Unity3D is an implementation detail for games that would be closed source anyways.
The games that are the biggest part of mainstream culture today like Fortnite, GTA, CoD, AAA games in general are not open source.
If a creator is interested in open source they won’t use Unity, but since open source is very far from the “default” for games there’s no difference between a game written in Unity and a game written in some in-house engine.
Not one culture defining game interested in being open source has come out on Unity3d because you don’t start an open source project by building on a closed source engine...
And as an aside, Unity3D is not that opaque either, increasingly large parts of it are being opened up and the Unity executable setup is not designed to be particularly opaque to someone trying to access a specific game's assets.
Your argument does not work from a technological and economic angle.
On the technical side, most game code is present in the final distributable as abstract MSIL, running inside a VM. So you wouldn't need the game source code to port a game in 99% of the cases.
Big budget titles use engines for which they have source code access. So studios can just go and update thesw titles whem they want and that is what they are doing. Small studios and indies don't have that luxury. They use Unity because it isncheap to get locked into that plarform and get the game out. If Unity ever goes under, there is simply no engine code that they can maintain. No indie can afford a Unity source license - it's multiple of their entire budget. They would have to recreate their games almost from scratch on a different engine if they ever want to re-release them. And the results will always be subtly different from the original. This is a fate that awaits about half of the games of the Steam catalog.
I mean, Unreal Engine and CRYEngine are source-available if not open-source. I'm not sure that it's so far-fetched to call for the open-sourcing of game technology like engines.
But unlike Unreal, the source code license is reference-only (yeah it sounds ridiculous, but you are not allowed to modify and recompile the source code.) Someone sent a pull request to the code (a bugfix which solved a lot of GC performance issues), only to get rejected because of the license (although it later got patched internally in Unity)
But how does that affect the above comment trying to spin this as an archival thing? If you want to port to a new platform one day when Unity is bottom up the fact they’re not accepting patches isn’t going to matter
The archival angle works for Unity because the actual game code is run in a .NET CLR (Mono in most variants of the engine).
Maybe the best way forward is source code escrow the way Trolltech arranged with Qt. They had a deal where the if they ever stopped working on an open source Qt, the last release would become automatically BSD- or MIT-licensed and thus available to all. They had the details worked out nicely. I really believe that Unity should be pressured into such a deal. It is not important now, but it will be an entirely different thing 5 to 10 years after they fold (if ever).
These games are closed source with IPs owned by multi-billion dollar corporations.
The engine being closed or open is of literally 0 consequence. Any 3rd party reverse engineering these games to run on a new platform would already be breaking licenses and trademark laws.
How much of the Steam cataöog is owned by big publishers? 10%? These generate most of the revenue. Bit there is this incredibly long tail of smaller games ownes by small publishers and indies who self-publish. These are virtually exclusively Unity engine titles. And there is no way any of thesw could afford the 6 or 7 digits for a source license. And unless thungs changed, you won't even considered eligible without an exceptional track record.
Which just goes back to my original point, if these small titles had been interested making open source games they wouldn’t use Unity.
It doesn’t matter how big the owner is anyways, you don’t own the IP.
So Unity being open sourced wouldn’t matter for a 3rd party trying to port it, and the majority of these small titles that initially willingly built on a closed sourced platform are not going clamoring to port their own games to new platforms decades from now.
Do you have any experience in game development? Unity is an affordable engine that saves small developers a tremendous amount of time by being a well rounded powerful and easy to use package. It has absolutely no open source alternative and not using either it or Unreal is economic suicide.
Most of the Unity titles might be forgotten in a decade. But some (which peobably means a few hundred) will not. Their devs might have trapped themselves by being locked in by the engine.
Yes I do, which is why I handily spotted your attempt to bury the lede
>not using either it or Unreal is economic suicide.
Unreal is source-available, and while you owe them royalties (fairly enough for all the work they've done), you can port it to a new platform.
And how is using Godot, libGDX, cocos2d, or dozens of other engines and frameworks people used for decades "economic suicide"?
The notion that starting from a framework that includes the kitchen sink and more is magically a requirement to make a successful game is silly.
The words of the creator of Braid, one of the most successful indie games of the decade:
> I don't have any desire to use a different engine for many reasons, and it's unclear which are the most important reasons, so let's start with the least usual one. Which is: when I'm making these games, they're not just commercial products. They're expressive works that we're working very hard to make, and we want them to have as long of a lifetime as possible. So I would like this game to be relevant 20 years from now, 40 years from now. How do you do that? Well, you don't necessarily do that by building it on top of a very complicated system, that you don't own, that somebody else will cease to support at some point in the future. Once future consoles happen or current PC operating systems no longer work, we at least have the source code to the whole system so we can make it work in the future. If Unity ceases to support something in the future, you basically have to rewrite it on a different system, and depending on how much of your gameplay depends on the core of how that worked, it may be very difficult or impossible to reproduce the same thing."
Don't confuse the fact that Unity lets you churn out content quickly with the idea you need it to succeed.
Unity's ubiquity is as much from good indie games as it is metric tons of soulless chaff clogging up every major software store on ever platform
And besides, on one hand this thread is talking about archiving games by porting them to hypothetical systems that somehow can't run a Windows executable (laughable in itself honestly), but the know-how and effort to make a game without Unity is "economic suicide"?
>Their devs might have trapped themselves by being locked in by the engine.
This is not Unity's fault or problem. Unity made the huge step of making the C# portion of their engine source-available, which already tells me they're headed in the right direction, but trying to wave the "archival" flag in their face is silly.
Archival isn't a problem on Unity's side. If we ever reach a place where you can't run a Unity game on a Windows PC, the work people will do will not be to try and run Unity games on Windows 2095, it will be to get Windows 10 running on the machines of the future.
I am taking serious offense to your statement that I intended to bury the lede. Do you think that I want a free ticket to their tech and I am constructing straw men to support that?
I respect creators. I am not pirating any games. The games in my Steam account set me back thousands of dollars.
If you think that I am only tying to make copying games easier, you are dead wrong. In another post I was proposing a source escrow scheme for the runtime. This doesn't square with a desire to pirate anything.
I am trying to find a reasonable stance here:
- The true stength of any major game engine offering today is the integrated toolset, not the runtime. The Unity Editor is an amazing piece of software in that regard. I am explicitly not calling for that to be opened up because (a) its job is done once you hit the export button, (b) it is very extensible through scripting and (c) it is how Unity as a company earns money.
- I only called for the runtime to be be made available for future maintainance. That in itself won't make existimg Unity games magically available on future platforms. There are multiple reasons for that. The most obvious one is that games may contain contain other native code components. They would need to be updated or replaced by someone with access to the game source code. Im the vast majority of cases, I do not expect such a task to be particularly hard or time consuming.
- Essentially, I want a world where games are no longer transient experiences. This is why I am singling out Unity because it has the potential to be either the one big enabler of that or the largest roadblock. The way the engine architecture enforces most game code to be platform independent could give games a much longer life than ever before. Yet the risk that the engine is eventually fading away without a meams to keep it updated could rob the platform of that very greatness.
- Windows is extremely complex and emulating it is hard. Wine is only a thing because it "only" needs to act as a system call translator. No hardware emulation is required. And getting that right has taken decades of work and it is still shakey. I don't see this as a viable way forward.
An IPO is almost always a bit worrying, but I'm feeling very optimistic about the direction Unity is going in general.
I've just started work on a new game using their new ECS system. It's not ready for anyone who's not either a very seasoned programmer or very patient, but so far I like it much better than the standard MonoBehaviour workflow.
I don't know, just seen this go bad with lots of other companies, that leaves me skeptical about how this will go and nervous about making games using their platform in the future.