Live data from Hacker News

How Unreal Renders a Frame

interplayoflight.wordpress.com

71–80 of 167 posts

Re: How Unreal Renders a Frame

#71
post #27

This is why I don't get why the game industry has such a bad rep for overworking people. It's genuinely hard to do this kind of code so you'd think they take care not to scare away the few people who can do it. I recall at one point Goldmans was bragging to my team about how they'd hired a game dev to do their click-to-trade currency UI. Seemed like the guy found an easier job for more pay.

Game industry is like Hollywood. There's an endless supply of highly talented hopefuls from all around the world who want to get into the industry more than anything else. The focus of exploitation is just different -- the Harvey Weinsteins of the game industry don't try to sleep with brilliant Romanian programmers, instead they work them to death.

As an ex-game dev this is pretty on the mark.

They've honed using your "passion" to extract as much work as they can from you for ~2-3 years. After which there's a 50/50 shot that the studio folds/etc.

In the AAA space there's also a vicious 90/10 rule where 10% of the games make 90% of the money. With rising costs it becomes increasingly difficult to keep hitting that 10% you need to keep your studio running.

Re: How Unreal Renders a Frame

#72
post #38
post #8

Earlier quoted context omitted.

Yes, and more. You’ve also got a rigid body (physics) simulation, ai/pathfinding, animation, networking, audio and gameplay logic all to run. If you’re making an open world game, you also need to have streaming code to load and unload parts of the game on the fly. It doesn’t always happen at 60hz (which is 16ms total processing time for all the above plus what’s in the post). Some games run at 30hz(33ms), some run un…

I'm curious how you would relate in-browser WebGL performance vs. performance of native software such as Unreal. Is running it in a browser 10x worse? or 100x?

I'm afraid I'm nowhere near competent enough in browser technology to comment on the comparison, sorry.

Re: How Unreal Renders a Frame

#73
post #19

Earlier quoted context omitted.

Indeed, that's what I meant by "most hardware", but that hardware is definitely outside the reach of most people right now. Firstly, consoles don't support adaptive sync, and most tv's don't either, so that eliminates all PS4/XB1 (and their derivatives). Then to actually get a screen with GSync, you're talking ~350 pounds [0] for an entry level one, and realistically you're going to need a medium to high-end graphics…

GSync is expensive because it needs a special chip in the screen. Freesync is cheap and has been made into a standard.

GSync is expensive because NVidia know people will pay for it.

Re: How Unreal Renders a Frame

#74

Earlier quoted context omitted.

I'm completely fascinated that games can perform massive amounts of math and render 120 frames per second, while some business applications fail to do completely basic data manipulation in an reasonable time frame.

Different hardware setup - that business might have a database that is dealing with millions of other users at the same time too. In which case they need to invest more in their infrastructure.

It's not always though. Lots of businesses _aren't_ dealing with millions of other users, they're dealing with a handful at a time, and still manage to be painfully slow. Our Jira instance in work is laughably slow despite being hosted on-site on bare metal and used by 20 people (usually not concurrently).

Re: How Unreal Renders a Frame

#75
post #33

Earlier quoted context omitted.

I'm completely fascinated that games can perform massive amounts of math and render 120 frames per second, while some business applications fail to do completely basic data manipulation in an reasonable time frame.

These applications may contain bad code, but on the other hand game engines exploit hardware acceleration, so it's kind of an unfair comparison.

Javascript can use WebGL to leverage hardware acceleration, but GPU acceleration doesn't suit all workloads.

Re: How Unreal Renders a Frame

#76

Earlier quoted context omitted.

EA isn't voted worst company for their working conditions. They're not even that voted for the quality/popularity of their games (games like Battlefront or Battlefield still sell very well). It's just a recognisable brand that people like to criticise, and that makes it an easy target for organized voting. Ubisoft is also in that category.

I could argue that - years at EA, and their abuse.

Indeed. The fact that EA was successfully sued for overtime pay for salaried devs speaks volumes, both about their pay and the working conditions.

Re: How Unreal Renders a Frame

#77

Earlier quoted context omitted.

This is just capitalism at work; in the game industry there is no guaranteed reward at the end of the development cycle, so you have to keep up the pressure in order to beat out your competitors, and increase your chances of winning. This leads to crunching, 60 hour weeks and mass layoffs when you lose - lookup any of the top AAA game companies on Glassdoor and you will find they are awful places to work (Projekt Red…

EA isn't voted worst company for their working conditions. They're not even that voted for the quality/popularity of their games (games like Battlefront or Battlefield still sell very well). It's just a recognisable brand that people like to criticise, and that makes it an easy target for organized voting. Ubisoft is also in that category.

That's because game devs don't know what life is like for other programmers. Longer hours and lower pay, but you get to work on what you love (every blue moon or so).

Re: How Unreal Renders a Frame

#78
post #28

Earlier quoted context omitted.

This is a bit like saying "I don't get why web development is overworking people, just look at all this cool stuff Google is doing with the Go runtime!". Most people who work in the game industry are not doing deep game engine hacking, but doing grunt work like scripting/designing some scene in a giant adventure game who's going to have thousands of those, and all of those need to be finished before the release date.

I wonder what the turn-over is for engine programmers? I'd guess very low. I wonder how many commercial engine programmers there actually are, anyway? I'd guess very few.

Most AAA studios have "engine" programmers (they are called graphics programmers in the industry). Even if such a studio uses UE or some other licensed engine there are still programmers who are modifying it.

Re: How Unreal Renders a Frame

#79
post #72
post #38

Earlier quoted context omitted.

I'm curious how you would relate in-browser WebGL performance vs. performance of native software such as Unreal. Is running it in a browser 10x worse? or 100x?

I'm afraid I'm nowhere near competent enough in browser technology to comment on the comparison, sorry.

Thanks anyways, I see peoplewindow has pointed out some important issues around my question!

Re: How Unreal Renders a Frame

#80
post #62
post #57

Earlier quoted context omitted.

Its kind of amazing how Unity forced change on Epic though. In the X360-PS3 era they absolutely _dominated_ the market, the list of games built on UE during that time is insane. However, after that, Unity started to come up as it had much nicer licensing and as a response to that Epic made UE almost free to use for small studios and more palatable for big ones.

I don't think Unity forced change on Epic, Unity targeted the nascent indie market very well and was a great replacement for the deprecated XNA. I can't think of a AAA Unity title aside from Microsoft's Recore - which launched with problems at $40. Epic's AAA market ended up with bigger budgets and a demand for more control, so many of them simply created their own engines. So most UE games seem to be big budget indi…

> I don't think Unity forced change on Epic,

I know, I know, Correlation does not imply causation. But just from wikipedia:

> On March 19, 2014, at the Game Developers Conference, Epic Games released Unreal Engine 4, and all of its tools, features and complete C++ source code, to the development community through a new subscription model.

Same year Unity took best engine.

> In July 2014, Unity won the "Best Engine" award at the UK's annual Develop Industry Excellence Awards.[1]

Unity made Epic react.

[0]: https://en.wikipedia.org/wiki/Unreal_Engine#Unreal_Engine_4 [1]: https://en.wikipedia.org/wiki/Unity_(game_engine)#History

Post reply on HN