Switching Game Engines Halfway Through Development
An anonymous reader writes: Third-party game engines are wonderful creations, allowing developers to skip a lengthy and complicated part of the development process and spend more time on content creation. But each engine has its own strengths and weaknesses, and they may not be apparent at the beginning of a project. If you realize halfway through that your game doesn't work well on the engine you picked, what do you do? Jeff LaMarche describes how he and his team made the difficult decision to throw out all their work with Unity and start over with Unreal. He describes some technical limitations, like Unity's 32-bit nature, and some economic ones, like needing to pay $500 per person for effective version control. He notes that Unreal Engine 4 has its problems, too, but the biggest reason to switch was this: "Our team just wasn't finding it easy to collaborate. We weren't gelling as a cohesive team and we often felt like the tools were working against us."
$500 per developer doesn't seem particularly absurd, nor have I heard of any particularly onerous restrictions on using these engines.
What's $500 work out to? A day's pay?
Daikatana
Sometimes a switch may be warranted if you're running into a physical limitation. One issue I could see is that - if upgrading just for the "looks better" factor - you might end up in the realm of Dude3d/DNF, where constant changes push your end date so far out it never reaches a realistic/satisfactory completion.
That said, I see the issue of switching as one of the weakness of graphical toolkits. The underlying code could be fairly engine-agnostic in many ways, so a full rewrite shouldn't be necessary depending on what the base language/structure is.
This managing partner has no idea how look dev works. Shaders are essentially written using the libraries from the GPU language. The GPU capabilities determine the look far more than the Engine.
I can attest that Unity can look as good as any Unreal game and have the assets to prove it.
About 3 or maybe even 4 days pay, more likely. We're talking game devs here. Not exactly the highest paid in the industry.
File under 'M' for 'Manic ranting'
Yeah, let's spend a month rewriting our code so that we don't have to pay 2 days' wages as a fee...
Peter predicted that you would "deliberately forget" creation 2000 years ago...
Lets say I know how to make quality games in OpenGL already. Is there a reason for me to pick up Unity or UnrealEngine? To me, it seems like they don't have all the possible features having access to the raw data at the lowest level gives... Including really cutting edge networking techniques. I know all the jobs are looking for Unity developers, but it feels like I won't have as much control over the details. Should I spend a few months and learn Unity, or should I be content with getting things done at a lower level?
I've been tossing the idea in my head for an Xwing vs TieFighter(like) MOBA in my mind, and it wouldn't be out of the scope of what I could do in 2-3 years.
God spoke to me
It's $19 per month per developer for their latest engine, and 5% of all revenue once your game ships. Unreal Engine 4 ncludes source, downloadable assets, etc.
"Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
More like 3 or 4 days wages, actually... and for each and every person in the studio who willl need access to it. For every 10 people you have on the dev team, that's a whole month of salary being spent just on licensing.
File under 'M' for 'Manic ranting'
Kerbal Space Program (a bleeding edge physics sandbox game built in Unity that includes orbital space travel) had unofficial 64 bit support back in... February '14? And now has official 64-bit support.
$500/developer is pretty cheap, did you buy the developers $250 Chromebook "workstations", too?
Anonymous poster slamming Unity and praising Unreal 4 right after the Unreal team announces huge cuts due to lack of engine uptake, and Unity flying high right now reeks of ad-placement.
moox. for a new generation.
Why is version control $500 per person? Haven't they heard of Subversion or GIT? These are problems that have already been solved!
A game engine is a very, VERY big enterprise to make, particularity if you are talking one with modern 3D graphics. It is a big undertaking even for a company who's done it before and has a decent team of people. You will spend a lot of time and effort on it, and it still might not end up being very good.
Game engines get a lot of that low level hard work out of the way. That's why they are so used. You see even large development studios with big budgets license an engine because the cost of doing so is far less than the cost of properly developing their own.
If you want to build a game engine, that's great, but make that your goal. Build an engine for its own sake then, if you have one that seems to work well, think about using it for a game. Don't set off to make a game form the ground up, it isn't likely to happen.
And if you have a hundred, it's like a whole year, man!
That sounds unlikely...at 3 days, that comes out to under $42k, and at 4 days it comes out to just over $31k. 42k would be low for an entry-level video game developer in a low cost of living area even as just a salary. But a common rule of thumb is to take salary * 2 as an employee's total cost. $31k would be nearly unheard of -- only an indie title.
This particular team has membership in the US, Canada, and the UK, and is done by remote work, so it might not actually cost them salary * 2 since office space is an enormous part of that. Still, I'd be shocked if anybody made that little, except maybe a summer intern.
I'd expect the average all salary to be in the low 6 figures, and certainly the all-in cost to be around there.
And all of this is angels on the head of a pin, because even 4 days' salary is small unless you can replace what that thing is doing in less than 4 days (or use half the team to replace it in 8 days, etc.).
That's a ludicrous "version control" fee. Given that you have to set procedures anyway, for effective work flow and creating production releases, it sounds like someone made a mistake in the licensing. What feature could it possibly be adding when you can do robust software management and collaboration at github.com, bitbucket.com, or any of the git repositories with commercial support services?
Switching game engines halfway through development says more to me about a lack of proper requirements analysis and planning than it does about the benefits of one engine over another.
Planning correctly can save you a lot of time and money... not to mention heartache.
He claims that Unreal engine works well on iOS, but this is not really true. Basic features like dynamic shadows are not supported at all and performance is pretty poor - you really need a A6 based device to run it well.
Well, considering unity is a real piece of shit as well, $500 feels like gauging. For the quality, I'd expect a product that doesn't have all kind of strange idiosyncracies and incompreshensible behavior. In several instances, Unity broke so badly that a reinstall did not fix the problem, and an OS restore was required. $500 for a revision control system written by those same morons? No fucking way.
We've got it working decently with git. Content is a bit trickier, but we manage.
Just wait 'til they start touching your bases. I could do without that.
Caveat Emptor is not a business model.
One function of special vocabulary is for specialists to easily communicate. But another, important, social function is as a badge of in-group membership. If you use the words correctly (from the point of view of the group) you show that you belong, and that you probably know and understand all the other explicit and implicit rules of the group. If the word use spreads too far it loses this function and the group needs to find new words and expressions instead.
You dislike "gelling". You dislike "paradigm shifts". It would probably be a fairly risk-free bet on what you think of expressions like "optics" (as in "the optics of this decision is good") and the like. You dislike these words and refuse to use them. Which signals to management people that you are not management and should not be treated as part of their in-group. "gelling" works exactly as intended, in other words.
Asking for words to not be used like this is futile. It would be like asking people to no longer care about fashion (another in-group signal) or to not form groups of like-minded people at all.
Trust the Computer. The Computer is your friend.
You dislike these words and refuse to use them. Which signals to management people that you are not management and should not be treated as part of their in-group. "gelling" works exactly as intended, in other words.
You have a valid point. However, slashdot is not intended as a forum for middle management to trade buzzwords. Slashdot is supposed to be for technical discussions. Arguably even if we can't permanently strike "gelling" from the English Language it should be reasonable to present an argument against using it here.
Damn_registrars has no butt-hole. Damn_registrars has no use for a butt-hole.
Games development is one of those fields where everyone wants to do it*, so the games companies can afford to pay peanuts. Get them in, burn them out, get a fresh batch in. EA is notorious as a meat grinder: fresh faced college grads go in, meat comes out, jaded, exhausted, and relegated to working on ancient VB apps for the rest of their careers (I jest). Granted, it's not like they're getting paid minimum wage; from a pure numbers standpoint they do okay for themselves. But those numbers are eroded when you factor in the fact that sure, you're making $80-100k, but you're also working 120 hours/week since you're exempt. Family life? Good luck. Hell, good luck finding the time to meet the ones you want to start a family with.
*Seriously, how many software developers do you know that came out of college saying "Golly, I really can't wait to work on making SSRS reports with pie charts for some MBA to use in a meeting to justify replacing me with an H1B?
If you were me, you'd be good lookin'. - six string samurai
We could run that idea up the flagpole, to the cloud, to have a meeting of the minds. Then we could do lunch. Have your people call my people, and we'll set up a thing.
I think I just made myself nauseous writing that.
Serious? Seriousness is well above my pay grade.
Entirely serious. I've worked as a game dev for 6 years, and I know of what I speak. Okay, it might not work out to be *FOUR* whole days pay, but very easily three to three and a half. Salary ranges in my experience range from about $36k/year to $52k/year... but even with the latter, $500 still works out to 2 and a half days of pay. Also, usually with the higher pay grades comes a greater expectation on the part of those above you that you would be willing to work extended hours on projects, and probably only leaving work at something resembling regular business hours maybe only 2 or 3 times in a single month.
Basically, you do it because you love programming games. That's it.
File under 'M' for 'Manic ranting'
Having worked as a game developer myself, for three different game studios in the past 6 years, I can confidently say that I am not talking out of my ass, to use your turn of phrase.
These days, if you work in a game studio, you do it because you love programming games, not because the pay is anything great.
File under 'M' for 'Manic ranting'
That might have been true 15-20 years ago during the dotcom bubble, but hasn't been true since. Not even slightly.
while(1) attack(People.Sandy);
New grads might make half of even that amount, in my experience.
Admittedly, I've never worked for EA, so I've never seen anything resembling 120 hour work weeks. I have seen 60 hour work weeks, however... as a matter of regular course.
File under 'M' for 'Manic ranting'
52/235 = 221
Just saying...
And there are other costs associated to a salary than the pay, benefit costs and structuring costs.
For salary of 52k, 500 is the cost of two days at most.
If you read the article, the $500 fee isn't really the primary issue. It's only particularly galling because it appears that the fee is used to license a product that's more or less a workaround for an abysmally poor-performing editor. That fee is in *addition* to everything else, if I understand correctly. I mean, 45-minutes to load a project? Are you kidding me? How do you even manage that on modern hardware? There's nothing more frustrating than a clunky workflow or limited tools that you have no way of fixing yourself. That really seemed to be the driving factor in the switch.
I've worked on large games before (200+ developers). We used our own custom engine and tools, and our designers could start up the game editor and be working in about half a minute or so. It's not impossible to keep things nice and snappy for the end users, even with *massive* amounts of content. You just have to be a bit clever about things.
I think that's a potential problem with a company that does nothing but write engines for others to use. They don't have to actually talk to the people that are suffering because of poor decisions they made, or crappy limitations that they never bothered to address. It makes a big difference when you can walk down the hall and watch people at work using the tools you made. There's a pretty big difference between a fully featured game and little tech demos or samples.
Damn, I still can't get over that 45-minute+ load time. There would be blood flowing in the isles if we made our designers go through that, and rightly so.
Irony: Agile development has too much intertia to be abandoned now.
You're thinking in US terms. It's pretty good in the UK (25k GBP, which is the top end of what the main UK graduate careers site thinks an entry-level game programmer might get).
Well, not really... but it should be avoided for one obvious reason: Delays in a potential switch will only make the porting take longer. I can only speak from experience in regard to this android project of mine - I first started out in AndEngine due to the fact that simple things were simple, with ready-made libraries for most of what i wanted to do. However, with time, the effective speed of the project was slower and slower due to AndEngine's complete lack of documentation, coupled with some performance issues. In the beginning I was doubting whether i had chosen the right engine, and I came across libgdx as a potential replacement. However, silly me concluded "I'll get this and that feature done and get the next alpha version up and running before I'll test with a different engine". My conclusion: If in doubt, try swapping the engine as fast as possible. It also enables you to rewrite parts you perhaps approached the wong way to begin with, from a design-perspective
There are several comments suggesting that they had simply planned badly at the start of the project, which had resulted in a bad engine choice.
He actually mentions it in the article; Unreal Engine 4 only became available at a feasible price when they had started the project.
It's not 45 mins load time. It's 45 mins if you need to swap platform with huge numbers of assets. This triggers Unity to convert all the raw assets (max,maya,psd etc) to the native targets. You COULD do what other engines do and just only accept already native assets, by forcing artists to dick about exporting every time they want to look at something in game. Unity's art workflow is brilliant IF you are sticking to one platform. But YES they should include the caching feature as standard (which, once converted to a platform allows all other team members to get that converted asset instead of converting themselves)
There are other advantages ya know, from what I understand Unreal has top notch documentation, its well optimized so it runs on a pretty wide range of hardware, and of course the Unreal mod community can help your game get modders up to speed generating content to help give your game legs.
ACs don't waste your time replying, your posts are never seen by me.
Principle 1. Create something you own
Spend time and energy making something that: (1) you own fully (2) is of value to others (3) you can exchange for value
This is because you can only ever give what you own. Examples: a mobile app, personal skills, bookshelf. Even raising poultry/vegetables in your backyard counts - you exchange these with yourself for money (a.k.a. 'saving cash').
Note, 'Writing code for cash' fails on point (1), but 'Honing C++ skills' ticks all three points. A life devoted tohelping others is the best deal of all - you exchange your life for treasure in heaven.
Principle 2. If you cannot work for yourself, search for a workplace like how long term investors search for stock.
Consider the most famous one of them all - Warren Buffet. He uses 'intrinsic value' to value stock. Companies with price to intrinsic value ratio (lets call it 'P/V' for this post) lower than 1 are more likely well-managed but undervalued -- and hungry to be valued higher -- so Warren 'buys' those companies.
My pet theory: unlike Warren, you want to 'buy into' workplaces that are consistently profitable and whose P/V ratio is as close to 1 as possible. This is because such companies are typically profitable, well run and will treat you fairly -- leaving you enough time and energy for Principle 1.
Let take a look at Netflix (NFLX) -- a well regarded company with a demanding work environment -- their ratio 1.85
http://www.gurufocus.com/term/...
(To check others, replace 'NFLX' in the URL with another stock ticker - remember, its the median ratio we're looking for)
NFLX (1.8) , AMZN (4), and EA (2.5) for instance, have high 'stock price/intrinsic value' ratios. So, while these are very successful companies, these are more likely high-pressure work environments with little time to yourself outside of work. Even GOOG (1.6) and APPL (1.5) are getting a bit up there.
Going lower: SPLS (1.3), MSFT, WMT (Walmart), BA (Boeing) (all 1.2), and INTL (1.1).
Now the magic unity figure -- BRK.A (Warren's Berkshire Hathaway itself), BAC (Bank of America), PFE (Pfizer) - all around 1. Strangely, so is ODP (Office Depot - 0.97).
Further down seems to be the domain of banks -- FNF (Fidelity National -- 0.9), PRU (Prudential - 0.28), MS (Morgan Stanley - 0.26), JPM (JP Morgan - 0.27)
Depends on how tight your budget is and how many people that has to cover. I am not familiar with Unity's setup, but that price might include having to cover artists, level designers, etc, which can add up quickly if you have a moderate sized team.
It is not unusual for game developers to start at around 30k. There is such a supply glut, and so much of it is kids coming out of 2 year schools and still essentially being high schoolers in their ability to think things through, it is a situation ripe for abuse.
Hey, at least you're not leveraging synergy to effect a value-add win-win amoung thought-leaders, increasing mindshare and gaining net.
Vintage computer games and RPG books available. Email me if you're interested.
Fair point, I didn't actually sit down and do the math... I just typed what I had estimated to be about right without actually doing the calculations.
However, 221+221=442, not 500. So that's not 2 and a half days, but still (just) more than 2 and a quarter, and technically closer to 2 and a half than it is to 2.
File under 'M' for 'Manic ranting'
uhm, with $500a day times 20-23 a month is about around $10-11.5k a month, well please point me to a company that has a salary like that for the level of work a gamedeveleoper does.... if it's half of that i think you might be glad...
I hate to say it, but this Jeff guy is fairly cluesless when it comes to Unity. And is, therefore, in a poor position to give any useful insight into Unity vs. UE4.
My studio (of roughly 27 years) has used a lot of tech in its time. We even developed our own engine, HeroEngine (used in games like Star Wars The Old Republic MMO). We've made lots of games and have lots of experience with Unity. I used Unity to do the Android port of Temple Run, and we've made a lot other titles with it too. We're currently working on a marquee franchise for a major publisher... using Unity.
Unity is not just for small teams. Jeff didn't do his homework on this one. Our team is 27 strong, using git for version control. We use a deep feature-branch approach and it works well not only for our developers, but our non-techies: artists, designers, sound guys, etc. Sure there are issues with Unity and version control, but you find ways to make it work through convention and approach. Same thing happens in all Engines. They all have their issues. The only engine that put collaboration at the forefront was our HeroEngine, but even that has issues. Though we sold off that tech, you can still check it yourself... just Google.
The 32 bit editor limit is true, but is it really an issue? It never has been for us. His problems smell strongly of bad development practices... they can't seem to manage their memory resources well and that suggests other major issues in their group. Just reads a bit amateur to me. No engine will save you from bad practices. The game builds are 64 bit, and the Editor will be also in Unity 5 (how did he not know this?).
It is notable that the guy is fascinated with a lot of things in UE4 that, as it turns out, you can also do as well or even better in Unity. He loves, for instance, Blueprint visual scripting... did he bother to check out uScript for Unity? He loves the node-based Shader in UE4.... well there is ShaderForge in Unity. He loves Physically Based Rendering in UE4 but doesn't mention Alloy in Unity. Sure some of these things are add on costs (usually pretty tiny) and there are also lower cost or sometimes even free alternatives to many of them. The best part is you can mix and match which pieces work best for you. If you don't like UE4's node-based shader... tough! But in Unity you have a few to pick form..... .... or better yet, you can make your own! The best part of Unity is how seamlessly extensible the editor is. This is a huge productivity booster. Every game we do we create custom tools that enhance the efficiency of the designers and artists. It's so easy to do, you just naturally create augmenting tools as the need comes up. Our designers and artists can do amazing things without ever having worry about writing any code... much less even a visual scripting system. This is because we made the tools specific to the game that let them express what they need all from the inspectors and the scene tools.
Another cool thing: make a great addon that is generally useful... then wrap it up and sell it in the Asset Store. Monetize that sucker! Or give it away for free if you like.
Is Unity perfect? Nope. But it is insanely efficient for developing games. Works with any sized team well enough, and creates titles that run across tons of platforms. And the Asset Store is a treasure trove of extensions that just make it better and better all the time.
The places where it falls behind a tad are either addresseable from add ons, and ultimately in Unity 5.
I am not advocating that one choose Unity over UE4... but if you are going to make an argument, at least make a balanced one with all the facts. I would take his critique with a grain of salt. Try each engine yourself, but make sure you take the time to fully understand both the tool and its eco-system and how it applies to what you are doing. And above all, make sure you have sharp developers on your team who understand the fundamentals. Like I said, no tool will get you out of a jam of your own making.
David Whatley
Its more than 500$.
Its 1500$ a seat, plus $1500 for iOS plus $1500 for Android, PER PERSON. Then another $500 if you want the cache asset server.
So, it could easily be 5k per seat. Now, is that alot? To me no, but I am used to bootstrapping CG workstations that are 3k a pop with 10k worth of software on them.
But when these are things that should not really cause problems i.e. versioning? and that you can't work around with an easy solution like git/hg/perforce, that makes pipeline a little awkward. So when you see software that accomplishes the same workflow sans the hacky ass workarounds, for "less" upfront money? Water flows to the least resistant path.
I also told you about other costs than the pay.
It usually costs two times the pay to the employer.
You have great management potential. :)
Serious? Seriousness is well above my pay grade.
This is because you can only ever give what you own. Examples: a mobile app, personal skills, bookshelf. Even raising poultry/vegetables in your backyard counts - you exchange these with yourself for money (a.k.a. 'saving cash').
Until the city threatens imprisonment for growing a victory garden, or until the federal government steps in and seizes your crop under the legal theory that it competes with commerce among the states (see Wickard v. Filburn).
If you cannot work for yourself, search for a workplace like how long term investors search for stock.
For example, after having invested in your skills at a four-year college, you might have to "pay your dues" by working for a recognized video game studio in order to gain experience so that once you do start your own video game studio, you have 1. knowledge about how to get a project done, 2. contacts, and 3. enough verifiable industry experience to make the console makers more willing to sell you a devkit.
unity is a real piece of shit [...] I'd expect a product that doesn't have all kind of strange idiosyncracies and incompreshensible behavior. In several instances, Unity broke so badly that a reinstall did not fix the problem, and an OS restore was required.
Are you sure you aren't confusing Unity the game engine with Unity the Ubuntu desktop environment?
On top of that, the subject matter is questionable. It's a "furry's vs human's" game
Would it be any better if it were a "furries vs. dwarfs vs. congenital amputees" game like RHDE?
Another difference is that the majority of desktop PCs include a Windows operating system. On a traditional video game console, the operating system is paid for by licensed game publishers, not by the end user.
I wonder how Steam OS will approach this. It uses a proprietary store on top of the free GNU/Linux operating system. Yet because it runs GNOME apps, developers can skip paying a 30 percent cut to Valve by offering sideloadable copies for sale outside the store. How has Valve planned for the possibility of third-party stores compatible with Steam OS competing with Steam?
Just wait 'til they start touching your bases. I could do without that.
They're not going to stop touching your bases. First they see them. Then they touch them. Then they take them by force. Then all your base are belong to them.
If your project has a significant 'switch platform' overhead, you'l simply have more that one working folder for each, and then no switching necessary.
It's totally a non issue.
Never happened. True story.
I don't understand the issue.
You can use git with Unity - that costs nothing (except time/admin/etc)
I use it every day - never had an issue.
Never happened. True story.
That makes a lot more sense. I couldn't even imagine how load times could be 45 minutes. Those are build times, not load times.
Still, that wasn't their only complaint. Whatever their technical merits, the team ended up unhappy with Unity, and seemed much more happy with Unreal, apparently. In the end, we'll probably find out if the real problem was the tools or the developers who couldn't use them properly when we see the final game - the proof of the pudding, if you will.
Irony: Agile development has too much intertia to be abandoned now.
....and you're back to a day's pay.