I've been developing in Unity since V1.0. Back then you could ring David Helgason and complain about the water shader not working when you run it for 12 hours straight - and get it fixed.
It blows my mind how much they've grown - but not just that - the tool itself is capable of AAA these days. The only real competition at that level is probably Unreal - and that's so very different to get into if you're an old-school unity developer. When you compare the Asset store (where you can practically buy any solution to your common problem) and compare it with Unreal's store - it doesn't really compete.
These two points make me think Unity has such a moat built around developers mindspaces that it's probably super-hard to dethrone at this point.
I'm interested if anyone else has an alternative point of view on unities sustainable competitive advantage.
Game engines live or die based on how they adapt to the constantly changing landscape. Unity made sense of the mobile landscape first and that led to their ascendancy. With mobile gaming on the decline and a looming new console generation, Unity will be put to the test.
Even when game engines don't fail themselves, they can become obsolete. As a general rule: love no language, engine or platform. They all come and go over the span of a career and that's especially true in an industry like gaming which constantly sits at the bleeding edge.
Some of Unity's innovations like the asset store will endure no matter what engine is on top. But the next iteration will probably just look more like a package manager.
> These two points make me think Unity has such a moat built around developers mindspaces that it's probably super-hard to dethrone at this point.
While Unity is great, I think you are a little bit skewed in perspective by your love for Unity. The legacy Unreal has (just look at the insane list[0] of past and present notable games built on it) with developers makes it the king to dethrone for anything AA or AAA.
I guess the point I was failing to make is that Unity has a percentage of developers that have grown up around the architecture. Perhaps they started in Javascript, and ventured into c# when it was depreciated - but the object model of unity - I postulate - is a pattern well ingrained into developers minds. The new ECS architecture is stumping many old-school developers that I know - because it’s just so different.
Don’t get me wrong - I don’t have a huge love for Unity. It’s just I’ve been using it for such a long time. For some retro game projects I’ve used C++ and XNA - which is great fun - but if you ask me to consult on a 3D title that needs all the bells and whistles, Unity is my skill set.
I’ve tried a few times to learn unreal, it’s rendering engine is fantastic - but maybe I’m getting older - but it didn’t grab me.
Again, I’ll reiterate I’m not a unity fanboy - many times I’ve found myself at the fringes of what’s possible - doing things in Unity that break it in ways the support team has never seen. It’s a pain in the proverbial. It’s bloated, it has a render pipeline that has become so amazingly complicated, and when something really doesn’t work because it’s a problem deep in the engine - it’s an absolute nightmare. For example, recently I had to port a project from another language - a 2d retro game that needed to run a 60fps solidly. You’d be amazed that Unity can’t do this without doing timed Co-routines outside of it’s traditional Update() function. That blew my mind. Unity has become so amazingly complicated that it’s at times extremely painful. I was, however, an XNA fanboy before Microsoft discontinued it. However that’s another story altogether...
Jeez.. you called me a fanboy and I went on a rant... soft spots ;-)
I'm gonna offer you another angle. Custom engine. You CAN almost always beat these general solutions if you specialize with your engine. Question is, should you? Would that specialization offer an advantage vs developing something with a general solution like that?
From personal experience custom engines offer more flexibility, assuming they're not 20 year old monolithic behemoths that tens (or hundreds!) of developers added their little piece and nobody bothered to remove much over the years. IF they're not that, it becomes easier to mold them to what your game(s) need (especially if you focus on similar genres, at least from a gameplay/engine requirements perspective).
Also from a tools perspective, big generic engines like Unreal and Unity have their established ways of working internally that may make writing good tools either hard or suboptimal (meaning that you can do something but since it isn't how the engine likes things it would not be fast). It is usually good enough for most uses, but if you want to make something very specialized you'll have a better time doing it with an engine you have control over, otherwise it'll be an uphill battle (there are cases with Unity for example of people having tools outside the engine and just import the final data, using Unity as little more than a scriptable renderer with asset manager and physics).
On the other hand, custom engines mean custom tools and more often than not tools get the short end of the stick in custom engines. It is a double edged sword, on one side you can make some simple and great tools that focus exactly on what your game is all about (something like Unreal is similar to C++: there is a lot of stuff that you can ignore but they still provide mental overhead even when you ignore them), but on the other side you have to make tools (and just in case, using Blender or 3ds max or whatever as your level editor is the perfect road to inflict pain on everyone involved, often leads to low performance with little visibility on why - and unless you have a vendetta against level designers do not even consider using dummy objects for level scripting, the only thing worse than that is asking people to paint triggers on a grayscale terrain texture using Photoshop).
(note that i'm assuming you have access to source code here which rules out Unity for the majority of developers using it - and of course i also assume that you have the know-how for working on custom engines)
I think it comes down to budget and what you're trying to develop. Developing your own full-blown engine with all the bells and whistles; scene management, physics, animation, ik solving, audio, video, asset importing, networking, scripting, UI, VR and so on is what used to be one of the biggest investments a game developer would make. ID software's engine generated a lot of revenue for for them back in the day - because was cheaper to pay 250k than do it yourself. At the end of the day as a gaming company you're trying to provide a unique experience - and as you say - a custom engine can be a way of doing that - but after you've created the engine, then you've got to create the game on top of that. So I think these generalised engines have satisfied a market need that wants to focus on the game itself rather than engine development.
As mentioned below in the comments - tools are also extremely important. If you're going to support standard tools (e.g. Maya etc.) for asset generation there's more work involved. The entire art pipeline has to be considered. It's a huge job. Making your own editors etc. again lots of work. If you have your own engine - you've probably got your own GUI and asset management system at this point for artists.
So this is a long way of coming around to "should you develop your own game engine?" If your use-case means that it's cheaper to do that than extend Unity or Unreal - and you've got the capital and talent - I guess it makes sense. But if you look at the majority of really successful games these days - they're using 3rd party engines. Even rockstar started with using Renderware - and now they have their internal engine with probably really good reason (super deep pockets and use case). But I guess if you're not Rockstar - and you're trying to make something AAA - it's expensive enough without trying for your own engine. Let's not even get started on making the engine cross-platform.
Of course, if you're making space invaders and know how to talk to the graphics API directly - none of this is required ;-)
Just my IMHO.
Something that i haven't seen mentioned much is that some people just prefer to work on custom engines (i'm willing to bet that the main reason John Carmack made his own engines was because he liked working on his own engines rather than the costs of licensing). I know of at least a case (i wasn't part of it myself) where after a developer decided to switch from their custom engine to Unreal, almost the entire engine team quit.
FWIW personally when judging potential workplaces i bias towards those using custom engines since there is way more room for having an actual impact on the project and i am more likely to learn something new from a custom codebase than the 482th Unreal fork.
The fact that people often feel the need to justify working (almost always in a defensive stance) with a custom engine shows that they simply prefer to work with a custom engine despite other concerns.
Also there isn't really a clear cut distinction between AAA and smaller studios using custom and generic engines - while indies are more likely to use something like Unity, that is mainly because there are way more indies than big teams and many indies do not have the knowledge for a custom engine. But there have been many successful indie and small studio games with custom engines and AAA studios with licensed engines to say that if you're Rockstar go with custom, if you're small go with 3rd party engine.
Honestly i think the people involved are way more important (and likely to affect the choice of an engine) than any budget or size concerns (i'm not even considering the game type as most custom engines are used to make games that could also be made with 3rd party engines and the game type is rarely the driving factor for that choice).
Back when Id started, games middleware still wasn't a thing regarding game engines and it was highly seen as an additional needless cost.
The industry was mostly focused on buying libraries for specific tasks instead.
It was around this time that companies like FMod and Bink started.
Nowadays with budgets and teams that rival Hollywood ones, it is a much higher risk to do everything from scratch, before starting to do the actual game given how middleware has turned the table and is now widely accepted, hence the defensive stance.
My point is that the defensive stance shows that many developers want to work on custom engines despite other factors and that is driven by personal preference rather than any sort of cost/benefit calculation.
And it makes perfect sense and you see it all the time in other fields too with people switching companies and/or start (side)projects so that they can work with specific frameworks, languages, etc.
>Most of the value of Unreal or Unity is that the tools are already there and they more or less Just Work and a lot of people know how to use them
This is a very good point I missed above - people - the fact that lots of developers and artists are already experts with the tools lets you hit the ground running and focus on the game. With a custom engine you've got all the training involved to use your custom toolset.
This is something I generally miss in game engine discussions. Good tooling for an engine feature is two or three times the effort of the feature itself on average. So ypu can probably bould an amazing engine runtime in your spare time, but doing anything interesting with it is painful because creating the tools is incredibly fiddly.
The format is somewhat open. Unity stores a lot in plain YAML files. Unreal has a wild serialization framework that is part of the freely accessible source cide (but tons of strings attached - so be careful!). So you might get some reuse out of these editors, but the catch is that they are extremely engine specific (with UE, I can't quite tell if the editor is built for the engine or the engine for the editor). So you'd just set yourself up to replicate the same engine design because it makes handling the output of these editors easier.
Formats tend to be tied in some strong nature to the way the engine works. Think of it this way: you could create your own engine, but then every difference between your engine and Unity is a bug from the artist's perspective (thing works correctly in Unity but does not in your engine).
There's no sense in using the same format for your engine if you don't implement every single last checkbox and dropdown.
Nonetheless, having access to the source gives you insights how things work, build by yourself. With more experience, you can customize it, or suggest PRs. This can be a game changer.
It depends on whether you have the technical prowess of Jonathan Blow or not? He was able to create game aspects in custom engines that would have been impossible otherwise. E.g. low level sound control in Braid, some amazing use of lighting and reflection in The Witness.
I don't think Unity3D has anywhere to go from here but down. Which doesn't mean it's dead, since there is a long sunset in sight - but the gamedev workforce turns over in cycles of under five years, which means that training as an economic moat is only locked in for about that long, too.
The problem is threefold:
1. Almost no game will use all of its features. For any one project a competitor with slightly more niche positioning can find a way to pull ahead - a death of 1000 papercuts.
2. The underlying tech only becomes more of a commodity. Some of the biggest things that Unity solves are things that are still important, but not very differentiating now: having an asset store; having cross-platform deployment options; having modern rendering capabilities.
3. Unity isn't designed for sustainability. Interest in long-term maintanence has become increasingly important for developers who are able to continue marketing the same game, with the same tech, more-or-less indefinitely in today's digital marketplaces. Unity's approach is of the "move fast and break things" sort, which has served it well to grow, but makes it a business risk for developers: updating Unity versions is a perilous exercise.
Unity Plus costs $35/mo for 50 concurrent users, and UNET was a fumble. Grid (https://www.planimeter.org/grid-sdk/) is free, and was built multiplayer-first.
The last time I checked, I couldn't build a project OOTB and in 5 minutes have a multiplayer game to mod and hack on. That's been a feature I've provided for years.
I think the appeal of PBR workflows for 3D games is what Unity and Unreal capitalize on, but for 2D hobbyists, there are much better solutions with far less overhead, and fewer expenses.
The key word here seems to be "up to". It'll be interesting to see how many employees (common shareholders) are actually willing to sell their shares to the investors.
If they're holding on and the full $525M isn't raised, then almost paradoxically, I'd wager that Unity is doing really really well. If they're selling, I don't think it necessarily can be construed as good or bad without proper context.
> If they're selling, I don't think it necessarily can be construed as good or bad without proper context.
This is assuming the employees and stock holders are rational and can maintain long-term risky assets. Plenty of people will be looking to cash out as they've held stock for a long period and want to buy a nice house or car or something.
I'm sure the wealthier percentage will take a longer term look at it. But I wouldn't generalize the average equity owning employee as you would a typical public market.
Selling shares during a tender offer is a perfectly rational move for employees that are cash-poor and faced with the tax implications of exercising their options. Also obviously for anyone looking to simply de-risk.
I was at a company previously that had a liquidity event, and many of my colleagues (not me unfortunately) had very meaningful stock awards.
A lot of people discussed what they should do openly, and recognized the potential for the stock to go up later on- many defaulted to selling half of their holdings as soon as they could to put some cash in their pocket, and holding on to half for potential gains. Not super sophisticated, but it seemed like it made good sense to me.
It will be interesting to see how the next couple years play out. The growth opportunities in my mind are: expanding their suite of hosted services (https://unity3d.com/services); and convincing an increased percentage of large publishers/developers to develop on Unity. While there is a business in building tools for (generally smaller) developers, it is hard to imagine a $6 billion valuation on the back of just developer subscriptions, even the significantly more expensive enterprise arrangements.
Services represent an opportunity to scale based on the success of products built on Unity, not just on the size of the developer community.
They could also be using that money in order to combat Epic and Unreal, especially given that Epic has a lot of money from Fortnite and their owners Tencent.
Because out of the engines that any game studio can use for a new project, there's really only Unity and Unreal.*
* = If they do not have their own internal engine or it is not applicable to their new game.
There's Lumberyard which you could say is a fork of CryEngine. But in general I don't see studios lining up to use either of the two.
Also the idTech engine is limited to games that are published by Bethesda. So you can count it as an in-house engine now, just like Frostbite is for EA.
Lumberyard really doesn't have the support that Unity and Unreal have. It is hard to recommend using Lumberyard when there are alternatives that are well tested, well documented, and many developers are familiar with.
Keep in mind, that with this kind of sell deal, employees and investors have drastically different risk sensitivity. For employees cashing in their stock options or getting stock, it could be up to a half of their middle-class compensation – not the kind of money a rational person would put into risiker investments. But funds that invest in startups are specializing in high risk/reward, which their customers – other financial institutions who put a minor portion of managed money in such ventures, or individuals who are significantly wealthier than middle class and can afford to lose a lot of money without damage to their livelihood and lifestyle.
So, my point is, these kinds of deals are very often win-win, and can't signify that there's something wrong with the company.
It’s important to maintain a diverse investment portfolio, whether you’ve just come into billions of dollars as Mark Cuban did in 1999 or you’re starting with a few hundred dollars.
When Cuban and his partners sold Broadcast.com in 1999, they didn’t get billions in cash -- it was all in the form of Yahoo stock. Instead of holding virtually all of his wealth in one company’s stock, he did a great job of diversifying his investments. Cuban spent $20 million hedging his Yahoo stock with synthetic indexes, and shortly thereafter acquired assets such as the Dallas Mavericks and Landmark Theatres.
It’s a good thing Cuban did all of that. Yahoo’s stock price dropped by more than 96% from January 2000 through September 2011. To put this in perspective, $1 billion in Yahoo stock would have fallen in value to just over $34 million.
The point isn't how Cuban hedged his stock holdings, it is that he hedged them and that he would have lost a huge amount of money if he had not. Applying this to the Unity shareholders, their smart move is to sell some of their Unity stock holdings and use the cash from those sales to diversify their portfolio.
> If they're selling, I don't think it necessarily can be construed as good or bad without proper context.
Maybe they just want to be rich, now? Of course depending on how much I would get, but my decision to sell would have very little to do with how well I thought the company was going.
Yes. I read some study that stated that, contrary to popular belief, stock selling by insiders is not very informative (due to noise from liquidity needs that stem from personal finance) - whereas stock purchasing is quite so. If someone aggresively moves to buy something (s)he deeply knows, there is something to it.
I've been using Unity for more than half a decade at this point. Some of their choices along the way have been really frustrating to deal with, but on the whole, they've empowered me and plenty of colleagues to create things we might not have been able to otherwise. (Or at least, certainly not as easily).
I know it's popular to hate on Unity for some of the bad games produced using the engine, but I don't really think that's fair -- to me, that's a failure of the storefronts that host subpar games. Creating a tool that makes it easier for people to make games is awesome.
Unity has given me a lot, and I root for the company's success.
That reminds me of a discussion around a good (in my opinion) game called Mechanicus that had some poor performance. Unity got the blame for this, but as Subnautica (and plenty other games) has shown, good-looking and performant games can be developed using Unity, it's more an issue of available ressources (Mechanicus had like 1 full-time dev vs +- 6 for Subnautica) and skill. And without Unity, I don't think the Mechanicus team could have developed their game or it wouldn't have been as good.
You have to constantly fighting Unity to get the performance you want, which is extremely frustrating. The time spent on figuring out "WTF are you doing Unity" and coming up with a workaround is huge. Inside had a talk about how they achieve smooth seamless gameplay which involves purchasing access to Unity source code and mod it.
Amazing when what otherwise sound like dysfunctional/toxic orgs do well. No mention of the sex scandal at the top. Checking Glassdoor as well and seems like a lot of unhappiness in general.
To be fair, when we were looking for funding a few years ago in Scandinavia, David Helgason (Unity founder) was one of the most supportive, positive and cool people that we came into contact with. He actually had more time for us than a lot of the other investors we spoke to (many of whom could best be described as "toxic") despite being probably the richest and busiest of them all.
Its more amazing that people desperately try to link behavior to finances.
Its from a teaching style done in Christian sects within the United States (and maybe just protestants in general?) where prosperity is linked to behavioral compliance. So you see this unquantifiable anomaly throughout society as the meme brushes off on more people.
Someone doesn't “deserve” x,y,z because of a,b,c. When the reality is that their network has other considerations, and one key aspect of global issuances is that local reputation is less of a factor.
Its not much of a stretch to suggest that a company that screws over people in scummy ways has a higher chance of screwing over investors in scummy ways, or just engaging in self destructive business harming behavior in general.
Not sure why you think its some kind of deep rooted christian morality thing.
That doesn't seem to me to follow directly. History is full of successful people who treat the wealthy/powerful well, but treat people who aren't wealthy/powerful less well, and come out ahead by doing so. It really is only in Christian morality, imo (or other similar religions' morality), that this kind of thing somehow inherently doesn't work.
and since their investors are hoeing for yield and doing pretty good at that then they'll keep working with certain management and their ventures
investors feel like they can price-in potential financial claims against key personnel or the entity, based on existing controversy or predictable pile-on controversy of the same genre, and don't feel like this has anything to do with dumping higher priced Unity shares on people's 401ks in a few years.
Does artwork become more or less valuable when the artist is discovered to be a mass murderer?
Does artwork become more or less valuable when the artist accused of sexual assault?
Social values may surprise you, because they are inconsistent. And that is before dealing with cross cultural issues, western vs. asian or capitalist vs. socialist.
> I still find it baffling what kind of breed game developers are and why they let themselves get fisted day in and day out
Lots of people grew enamored with videogames, so for them it's a chance to work on something they're passionate about and pay the bills at the same time. I don't think many people can say that, including most software engineers.
I have worked in gamedev for 12 years (the only industry I've been working in my entire life) and have never seen anything like the stories you most likely mean. It's not all sunshine and rainbows, and I often think about switching into something else, but overall it seems just like any other tech.
Plus, in my experience at least, Unity as a tech stack is one of the best paid, at least around here.
Unity could potentially get squeezed between Godot in the low-end and Unreal in the high-end. I've played around with Godot, and for small, performance-insensitive games, like a Candy Crush clone or indie puzzle platformer, it is a nice, license-unencumbered option.
I want to use a game engine in my video editing pipeline. I want real time video acquisition, real time shading, real time camera manipulation, depth / fov tools, object and scene management, etc. I want to extend it to do all sorts of things, but basically the gist is to mix video editing and game engine, and put actors into complex virtual scenes in real time.
Which engine should I use? Which one supports more video things out of the box?
Ideally it works on Linux, but that isn't a hard requirement.
Also, if you can answer my questions on Skype/Hangouts (or in person in Atlanta), I'd be happy to pay $$$/hr. I want to get a broad overview of the space.
If you're fully on a professional pipeline (all professional tooling for 3d work), Cryengine can deliver breathtaking stuff. If you're a little more open source geared, Epic is a little better than Unity. Unity behaves like a framework where you buy the rest of the features from the Unity Store.
A large part of this is allowing their employees to cash out. When a company goes public, there is often a clause that prevents sales for a certain number of months, and who knows what the share price will do by then. This is actually a really good thing for Unity to do, trying to make the "stock compensation" perk into a meaningful cash-out. It also means employees don't have to deal with holding shares in a public company if they don't want to, as that's hassle.
They stated one of the reasons was increased liquidity. But if you look at the jobs - they’re hiring pretty intensely at the moment - it looks like they’ll increase their workforce by around 7%.
Swift, Flutter, React, pretty much any development framework is also great at efficiently producing shovelware. That is to say, a platform for efficiently making things is going to be used to produce a lot of crap, as a rule.
Take a look at App Store and Play store - lots of shovelware in both. Frameworks in a meaningful way enable this because they expand the developer base.
And also has enabled the production of beloved games like Return of the Obra Dinn, Overcooked, Hollow Knight, Enter The Gungeon, Superhot, Kerbal Space Program, Broforce, etc.
Its an empirical claim. Even in the domain of crap, I'd wage there are differences between categories where you would see more crap in some than in others.
You seem to have the notion that only the big studios should be allowed to produce games. What's considered shitty varies from person to person, and is purely subjective.
This is what happens with democratization of any technology. People will try and do whatever they can with it. Sometimes it will be gold. Most times it will be garbage. Shut out the garbage, and you won't get the gold.
middleware can solve "wheel reinvention" problems without gimping developers ability to do much beyond write a few scripts to manipulate engine entities
In the days when it was very difficult to make a game engine there were also many bad games and fewer good ones than now. The past looks good because the bad stuff tends to be forgotten, unless it is a storied disappointment like Battlecruiser 3000 or Duke Nuke Forever. There were lots of quietly terrible games then too.
>Eurogamer's Dan Whitehead complimented Coffee Stain Studios on building in enough content Goat Simulator and potential expansion through Steam to prove it more than a simple joke title, and instead a brief diversion "in which the player is a willing participant". Dan Stapleton of IGN considered the title a "clever interactive spoof of all the broken game physics we’ve seen in open worlds" and despite being short, was a "hell of a good time". Tim Turi of Game Informer stated that the first hour with the game would be amusing, but due to the lack of more expansive features, he "[does not] recommend it to anyone looking for more than disposable entertainment". Steve Tilley of the Toronto Sun described the game as one where "most players will have a few hours of fun and then file [it] away as an occasional novelty to pull out when they’re especially bored".
>Rich Stanton of The Guardian was very critical of Goat Simulator, noting how the title is self-aware of its poor quality, and stated that the game's creation and promotion "demonstrates how social media and the internet amplify our supine tendencies". Andy Kelly of PC Gamer was also critical of the title, calling it a "bad, amateurish and boring game", and considered its popularity was only due to word-of-mouth and YouTube videos that enticed players to buy the game themselves.
Back in the day, shitty games looked more like Corncob 3D, which was at least interesting, than like Yandere Simulator, which is one man's attempt to pretend to be competent at programming to milk attention from teenage girls online. Unity has shortened the cycle time for people who are competent or at least give a rip, but it has also enabled a glut of asset flips, which were pretty rare in the old days.
> Back in the day, shitty games looked more like Corncob 3D, which was at least interesting, than like Yandere Simulator
Nah, that's still the same “more notable things from the past are more memorable bias”; Corncob 3D wasn't considered a shitty game at the time. There were lots of shitty games, CC3D, relatively speaking, wasn't one of them though it might seen like one by modern standards.
For the most part, the shitty games of the past are forgotten (except a few notorious ones that were shitty despite big manufacturer backing and marketing efforts, like E.T.: The Extra-Terrestrial.)
This is actually a plus for Unity, because it means even beginners can create a game with it. Even the biggest asset flip is still a game, even if completely uninspired and broken.
The main issue as I see it is that creatives and beginner/advanced-beginner programmers are very eager to standardize on unity and unreal but it's basically like wearing a straitjacket for advanced programmers.
It blows my mind how much they've grown - but not just that - the tool itself is capable of AAA these days. The only real competition at that level is probably Unreal - and that's so very different to get into if you're an old-school unity developer. When you compare the Asset store (where you can practically buy any solution to your common problem) and compare it with Unreal's store - it doesn't really compete.
These two points make me think Unity has such a moat built around developers mindspaces that it's probably super-hard to dethrone at this point.
I'm interested if anyone else has an alternative point of view on unities sustainable competitive advantage.