Live data from Hacker News

How Unreal Renders a Frame

interplayoflight.wordpress.com

51–60 of 167 posts

Re: How Unreal Renders a Frame

#51
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.

Yeah, "low and falling" for both of them.

There are only a handful of major engines today and it's been that way for years. Unreal, Unity, Frostbite .... a few games still roll their own but the costs of keeping up are getting extreme.

I really doubt the Unreal Engine developers feel abused. For one thing, the release schedules of engines and games are now to some extent disconnected. Games get whatever the engine can do. Epic isn't going to move mountains to add a feature to UE for a licensee unless they get a TON of money to do it.

Re: How Unreal Renders a Frame

#52

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…

> in the game industry there is no guaranteed reward at the end of the development cycle The same is true for any product industry. There are things you can do (customer development, short iterations that involve your potential customers, etc) to increase the chances, but if you're not doing work for clients directly, then there is no guarantee. Note that the "doing work for clients directly" exists in game developme…

Yeah I agree, the problem applies to most of the entertainment industry. As a result more investment is put into sequels of successful games, artists, TV shows, movies, books etc.

Edit: as for crunch times, I expect this is to do with the interactive element of gaming. There is whole lot more work involved when the client has the ability to break your product.

Re: How Unreal Renders a Frame

#53
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?

WebGL isn't trying to be competitive with full blown game engines, is it?

For one, game engines normally don't use OpenGL unless they have to. The GL drivers on PC tend to be very weak. High end games target Direct3D on Windows/Xbox and these days are moving to Vulkan/Metal, even on mobile.

On Windows the GL driver situation is so bad that Chrome translates GL to Direct3D. This obviously will impose some overhead and complicate the driver bug situation still further.

Even when games do target GL they tend to exploit lots of vendor specific extensions and be tested against very specific graphics card/driver combos to enable them to workaround bugs and performance cliffs. Does WebGL even expose driver specific extensions? I don't think it does.

So you are not going to be competing with native apps on the web anytime soon in this area (as with all other areas...)

Re: How Unreal Renders a Frame

#54
post #20
post #6

So all of this processing happens for one frame? And this is going on at 60 Hz?

Yes? You're looking at an entire vertically integrated software-hardware business built to make this possible. A GTX 1060 has 4.4 TFLOPs of processing power. 1920 * 1080 = 2073600 pixels per frame, or 125 million pixels per second. Divide that into 4.4T and you get a budget of max 35,000 operations per pixel. That's quite a lot. In practice you will often spend time waiting for textures to arrive from RAM. The techni…

Bear in mind however, that Unreal also had the best software renderer that could handle most of the visual effects on even something as simple as a 200 MHz Pentium w/ no 3d accelerator. I myself ran the game smoothly in 320x240 on such a system (and could run 400x300 if I didn't mind the slowdowns)

Re: How Unreal Renders a Frame

#55

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.

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.

Re: How Unreal Renders a Frame

#56
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?

WebGL isn't trying to be competitive with full blown game engines, is it? For one, game engines normally don't use OpenGL unless they have to. The GL drivers on PC tend to be very weak. High end games target Direct3D on Windows/Xbox and these days are moving to Vulkan/Metal, even on mobile. On Windows the GL driver situation is so bad that Chrome translates GL to Direct3D. This obviously will impose some overhead and…

The recently released Doom game is using OpenGL (and Vulkan).

Re: How Unreal Renders a Frame

#57

Earlier quoted context omitted.

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.

Yeah, "low and falling" for both of them. There are only a handful of major engines today and it's been that way for years. Unreal, Unity, Frostbite .... a few games still roll their own but the costs of keeping up are getting extreme. I really doubt the Unreal Engine developers feel abused. For one thing, the release schedules of engines and games are now to some extent disconnected. Games get whatever the engine ca…

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.

Re: How Unreal Renders a Frame

#58

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.

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

Re: How Unreal Renders a Frame

#59

Earlier quoted context omitted.

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.

Yeah, "low and falling" for both of them. There are only a handful of major engines today and it's been that way for years. Unreal, Unity, Frostbite .... a few games still roll their own but the costs of keeping up are getting extreme. I really doubt the Unreal Engine developers feel abused. For one thing, the release schedules of engines and games are now to some extent disconnected. Games get whatever the engine ca…

We might also include engine component suppliers, such as Speed Tree, Physix, and (whoever makes) Bink Video.

Re: How Unreal Renders a Frame

#60

Earlier quoted context omitted.

WebGL isn't trying to be competitive with full blown game engines, is it? For one, game engines normally don't use OpenGL unless they have to. The GL drivers on PC tend to be very weak. High end games target Direct3D on Windows/Xbox and these days are moving to Vulkan/Metal, even on mobile. On Windows the GL driver situation is so bad that Chrome translates GL to Direct3D. This obviously will impose some overhead and…

The recently released Doom game is using OpenGL (and Vulkan).

id has always made opengl engines. They get to deal with endless driver breakage. When Rage came out I believe AMD cards didn't work at all for over a week.
Post reply on HN