|
Having worked in games for 13 years, at studios large and small and projects of the same variety, source code access has almost never blipped on the radar. The few times when we had issues with various engines for which we didn't have source, our support contracts gave us the changes we needed to ship on time. On occasion we modified the engine, only to be hit by tricky merges with subsequent releases. In general, I've found that modifying an engine should be done by engine programmers (and if a game company does enough engine development to have such specialists, it's probably not licensing any of these options). The latest Unreal is a wonderful piece of engine software. Their blueprint system as well as their material editor and best-in-class renderer really are something to talk about. They also have a gigantic learning community. And I think their licensing terms are a good approach. However, Unity has blazing fast compilation time on the order of seconds, a properly built play-in-editor mode, large asset and plugin ecosystem, seamless asset pipeline, and support for a modern programming language in C#. Each of these could arguably be considered a game changer in isolation, but in aggregate they are an efficiency avalanche. Nothing makes a better game, faster, than being able to go from idea to prototype in five minutes rather than two hours. It's possible to try more things, to discard ten or even fifty bad ideas for every good one, and still come out ahead. This is what it all comes down to, in my experience. And when you're done, you can port your game to over a dozen platforms (in some edge cases by simply changing a dropdown value). That said, I'm happy that both engines are so good, because it means neither will rest on its laurels. Unreal's marketplace and Unity 5's renderer are no accidents. |
Imagine your game shipped on a version of Unity that's no longer supported but you want to continue using it for projects or bring back an old game to a new OS platform. Without the source, your only option is to port the game to a new version of Unity. That's not so great.
But again, I'll readily admit that all of this is only a win if you have the right team with the right skillset. There are definitely tradeoffs involved.