Hacker News new | ask | show | jobs
by gmueckl 2690 days ago
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.

1 comments

I honestly don’t buy that for a minute.

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.
Large parts of Unity (everything C#) are source-available as well.
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)

https://github.com/Unity-Technologies/UnityCsReference/pull/...

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
I don’t think it’s a stretch but the whole “archival and porting” angle just doesn’t work.

The code for these games isn’t going to be available, so the fact the code for the engine isn’t available doesn’t mean anything

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).

What are you going on about.

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.