News for hackers. Stuff that matters.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by aphextron on Friday January 11, 2019 @12:54AM (#18881314)
>There should me more push for really open engines, as in FOSS. Unreal might be more open than Unity in some ways, but it's still not really open.

This just isn't possible with game engines. They are the single most advanced pieces of desktop software in existence. Sure, there are things like Godot that are perfectly suitable for a simple indie game. But making a AAA game engine requires the expertise of literally hundreds of top level senior engineers with advanced physics and mathematical knowledge. There's probably less than a few thousand people on earth with the level of skill and expertise to build something at the scale of UE4. Furthermore, open source is really the exception to the rule in game dev. Practically everything is done closed source with some kind of licensing fees involved. It's quite a different culture from web dev.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by fzeroracer on Friday January 11, 2019 @01:46AM (#18881491)
This sounds more like an excuse rather than any sort of rational argument as to why game engines can't be open sourced. The reality is that there are plenty of projects out there helmed by incredibly talented engineers with extremely high level knowledge that exist in the open source realm; one only has to look at the geospatial community to see this.

Unity fucked up hard here and I hope that their planetary-level screw up will lead to game developers pushing for open source engines to avoid the control of their games being stolen.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by aphextron on Friday January 11, 2019 @02:32AM (#18881644)
>This sounds more like an excuse rather than any sort of rational argument as to why game engines can't be open sourced. The reality is that there are plenty of projects out there helmed by incredibly talented engineers with extremely high level knowledge that exist in the open source realm; one only has to look at the geospatial community to see this.

I'm not saying there aren't talented developers working in open source. But the sheer breadth of expertise required is unimaginable. You need top-of-their-field engineers from practically every conceivable discipline within CS to build a AAA game engine. Physics, lighting, rendering, networking, audio, UI, and that's just the tip of what I can think of. Engines like Rockstar's RAGE are easily on par with the Linux kernel for complexity.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by TomasSedovic on Friday January 11, 2019 @03:33AM (#18881828)
I was about to bring out Linux as a thing that according to your argument just isn't possible with open source.

But you've mentioned it yourself, so you presumably don't see that as a contradiction.

What do you think makes the complexity of Linux achievable with FOSS while the comparable complexity of a AAA engine not?

Re:Improbable and Epic Games establish $25M fund for ‘more o... by aphextron on Friday January 11, 2019 @04:44AM (#18882116)
>What do you think makes the complexity of Linux achievable with FOSS while the comparable complexity of a AAA engine not?

It just comes down to incentives. Practically every living human being stood to gain from the existence of a high quality general purpose FOSS operating system, and so Linux naturally came about.

The people who would benefit from a AAA open source game engine are... closed source AAA game development studios. As such there's really no incentive for some physics whiz to spend their extremely valuable time toiling away on something that is only going to be used for someone else's profit. The intersection of people who build game engines, and people who make games with those engines, is extremely small.

There's really no such thing as open-source game development except for hobbyists, because that would be literally giving your product away. Games are a hit based, one-and-done type product much more akin to movies than other software.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @10:36AM (#18884195)
Which doesn't mean movies can't be made using open source tools.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by gamblor956 on Friday January 11, 2019 @03:07PM (#18886452)
They give out Academy Awards for those, so there's a large prestige element. Also, not commonly known, but many FX tools are research-based so there's a strong research component driving many FX developments.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by macspoofing on Friday January 11, 2019 @06:39AM (#18882764)
>What do you think makes the complexity of Linux achievable with FOSS while the comparable complexity of a AAA engine not?

Clearly there's something because it hasn't been done. Why do you think there are no high-quality FOSS engines?

Re:Improbable and Epic Games establish $25M fund for ‘more o... by TomasSedovic on Friday January 11, 2019 @08:38AM (#18883470)
I haven't the faintest idea, which is why I asked aphextron. Indeed, until today I thought the Unreal Engine was FOSS, but seems to be just source-available. That said, didn't id Software / John Carmack release a bunch of engines under FLOSS licenses in the past?

There are many more or less serious potential explanations: not enough people care, it wasn't (or still isn't) financially feasible, the people able to develop AAA engines are actively against sharing source or ideas, there's an engine development cartel actively pushing against it to keep their revenue.

Or it might just be a social or historical accident -- we may just have been extremely lucky with Linux and projects on that scale will never come again.

Or maybe everyone thought it would be a great idea but they also thought it would never work and so no one seriously ever started an open source engine. Maybe Godot will be a true AAA engine that will surpass them all in a few years.

I don't know.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by dkersten on Friday January 11, 2019 @08:53AM (#18883553)
id Software released their old deprecated engines as open source, when they had new engines they were pushing instead. It was a nice friendly gesture, but the engines typically weren’t competing anymore.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by morcmarc on Friday January 11, 2019 @05:02AM (#18882250)
There's also Blender. 3D modelling is arguably a fairly complex and large field (lighting, rendering, physics, simulations etc). Yet, the team behind Blender are doing an amazing job and the gap between commercial software (e.g. Maya, 3ds Max) and Blender are closing with every release.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by wolfgke on Friday January 11, 2019 @06:55AM (#18882844)
> I'm not saying there aren't talented developers working in open source. But the sheer breadth of expertise required is unimaginable.

In my opinion, the problem rather is that the skills that are helpful/necessary to build "typical" open source software are really different from the skills for a good game engine.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by meditate on Friday January 11, 2019 @01:47AM (#18881497)
Godot doesn't get much interest from AAA developers because typically they are interested in shipping on consoles, and it's impossible to support the current crop of locked-down proprietary consoles in a free and open source engine. Despite this I am actually very surprised at the speed that Godot has accumulated features. I think we will start to see it shape up a lot more when Vulkan support becomes first class. The culture change is happening, give it time.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by dkersten on Friday January 11, 2019 @08:29AM (#18883423)
In my (admitedly limited) experience with Godot, I think one reason it doesn’t get more interest from AAA is that the 3D support doesn’t perform that well and isn’t so solid yet. It will improve though and they are actively working on it. On a more fundamental level, Godot’s design internally isn’t very data-oriented (lots of indirection in their data structures), while even unity has switched (or is in the process of doing so) to a data-oriented design (thanks in part to Mike Acton working for them now, it seems), this means that Godot will always leave some performance on the table, since cache-efficeincy is very important for high end games. It can be improved, of course, but it will take time and Godot devs are (rightly!) averse to changing core internal stuff.

About this time last year, I wanted to make a simple little 2D platform game in Godot and my experience was mixed. Some stuff was really easy and pleasant, some stuff was middling and then other stuff was frustrating enough that I gave up: for example, I had to spend an entire day just so I could get sprites correctly sorted so that tilemap tiles and objects that were in front of the player would be drawn in front and those that were behind were drawn behind. Basic stuff. There’s an option to enable for this (y-sort) but it did not work without a bunch of unintuitive tweaking. The docuentation didn’t help, reddit couldn’t help, their discord couldn’t help and I wasted a lot of time on it.

Having said that, I have high hopes for Godot and I do think it has a bright future, but it has a ways to go. I’ve even made some (very small) contributions to the gdnative c++ library, so its not like I’m just complaining ;)

My point is that Godot doesn’t get much interest for more reasons than just consoles (there’s commercial support for porting available). But, as you say, the culture change is happening, it just needs time.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by crazysim on Friday January 11, 2019 @02:15AM (#18881593)
Impossible? There's a company offering porting of Godot games to consoles.

https://docs.godotengine.org/en/3.0/tutorials/platform/conso...

Re:Improbable and Epic Games establish $25M fund for ‘more o... by meditate on Friday January 11, 2019 @02:28AM (#18881628)
Sure you can port it, but as it stands that code will never be mainlined. Meaning it will be mostly impossible for AAA developers to come together to improve it.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by pjmlp on Friday January 11, 2019 @03:01AM (#18881716)
Consoles never were open after 1983's crash, actually that is what saved them from the dumpster like quality from copy-cats on other platforms.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @03:41AM (#18881851)
> actually that is what saved them from the dumpster like quality

Did it? Lot's of gamers see consoles as something that holds developers back from using better hardware, since they need to target 5 year old systems. Quality both artistic and technical isn't something consoles can claim to be leading in. And clearly, "consolization" in its various forms isn't something gamers appreciate, when it spills out into PC gaming.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by pjmlp on Friday January 11, 2019 @05:19AM (#18882346)
On the contrary, professional game developers love game consoles, precisily because they have a stable platform to target for at least 5 years, instead of dealing with each customer being a special case.

And that in spite of some bad apples still going through the gates, the large majority of flappy bird clones never makes.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @12:29PM (#18885087)
Easier to work with doesn't make it higher quality overall. General perception of console games is exactly reduced quality, in the sense of art and games mechanics (due to mass market appeal and controller oriented design) and in technical aspects simply due to outdated hardware.

Incumbent consoles are trying to dig themselves out of this perception now, but they got it very deservedly.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by freehunter on Friday January 11, 2019 @10:49AM (#18884299)
There's a big difference between "not using cutting edge hardware" and "unplayable games sold at full price that become literal trash before they're ever even opened".

The average game on a console is going to be higher quality than the average game on PC because the average game on PC has to include the game I made in Visual Basic 6 when I was in high school. With no gatekeeper ensuring basic quality, my VB6 game is every bit as legitimate of a game as Battlefield 5. They both hold the title of "PC Game", but only one of them could ever be called "Xbox Game" because Microsoft would never allow my game on their console.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @12:23PM (#18885035)
I don't think "average game" is a valuable metric. What is an "average book", or "average film"? Art isn't measured by averages really, but by what's available. I'd say, PC gaming offers better tools for artistic expression, including more complex games that console market deems as not fitting.

Technical limitations that hold developers back are only part of it. Another issue is simply creative control of incumbent console owners. PC gaming doesn't have it, so creators can do whatever they want. And masterpieces are always a minority, no matter in what form of art.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by freehunter on Friday January 11, 2019 @01:31PM (#18885636)
I feel like you're still missing the point. Your argument is that consoles have "dumpster quality" games simply because their hardware is outdated compared to state-of-the-art PC hardware, which is such a non-sequitur that I'm not even going to touch it.

Pre-crash there were tons of high quality artistic masterpieces on consoles too. But it was swimming in absolute garbage [1], turning a lot of customers off [2], losing their trust [3], and threatening the entire platform [4]. If you haven't followed any of these links yet, PC gaming still has that problem.

The argument isn't that PCs have more powerful hardware (the reality of which is debatable [5]). The argument is "do console makers guarantee quality better post-crash than they did pre-crash" and the answer is unequivocally yes. The question you then raised was "do console makers guarantee quality better than PC games" and I would still argue unequivocally yes. And then I would point out that PC gaming benefits from this, because if Activision wants Call of Duty to sell on consoles, they're going to make sure it passes Sony and Microsoft's quality standards, which then the PC game most likely will pass as well.

This isn't always true, of course, because there are plenty of times a game runs better on consoles than it does on PC [6]. That's probably what you refer to as "consolization", but again that's just missing the point. People buy consoles these days because they work and they work consistently. That's directly the result of the post-crash quality control that console makers implemented.

[1] https://kotaku.com/unfinished-steam-game-abandoned-after-tho...

[2] https://www.theverge.com/2017/4/4/15172908/valve-steam-explo...

[3] https://www.greenmangaming.com/newsroom/2017/09/27/valve-rem...

[4] https://kotaku.com/the-people-fighting-to-keep-crappy-games-...

[5] https://store.steampowered.com/hwsurvey/Steam-Hardware-Softw...

[6] http://www.escapistmagazine.com/forums/read/9.937131-Let-me-...

Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @01:48PM (#18885796)
If you don't want to touch the topic, then don't. It's quite obvious outdated nature of consoles hardware is holding developers back, and "consolization" spills out to PC gaming, to the irritation of many gamers. You don't need gaming articles to know that.

> That's probably what you refer to as "consolization"

No, I refer to cut down design, oversimplified interfaces, lack of depth and etc. which were characteristic for console games, backfiring to PC games, when developers don't want to do extra work and simply use "one size fits all" method to save time.

Technical limitations is only part of the problem. The bigger one I'd say is the incumbents' control over the platform and heavy mass market bend. Quality has many meanings, and poor art (in many meanings of the word art, not simply graphics like you might think) caused by mass market commercialization can justifiably be understood as reduced quality.

So, I'll stick to what I said. Incumbent consoles didn't save games from worse quality, they actually made them worse.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by barbecue_sauce on Friday January 11, 2019 @11:46AM (#18884729)
Recent Nintendo eShop and PlayStation store releases are quickly driving down the average console quality. (See Life of Black Tiger, for example). Though, I must admit, it is not something I'm actually concerned about.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by qplex on Friday January 11, 2019 @04:08AM (#18881949)
Sometimes it's nice to have a limited canvas to work on.

For example in demoscene the art is to make these old consoles or computers do wonderful things that seem impossible on such limited resources.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @04:24AM (#18881999)
Sure, you can make good art with minimal tools. But consoles for a long time were not after good art (in its various meanings), but after mass market. So art suffered, same as technical side of things. My point is, consoles don't have any claim for higher quality in all meanings of the word.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by pjmlp on Friday January 11, 2019 @05:24AM (#18882370)
GDC attedees and IGDA members happen to think otherwise.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by ndnxhs on Friday January 11, 2019 @02:58AM (#18881708)
Impossible because its too hard or impossible because legally you can't?
Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @01:02AM (#18881344)
Collaboration solves this. Instead of reinventing the wheel, collaborating on the engine can pool resources. This works in other cases, so why not with engines? It's not engines that are sold, but games. Having good open engine doesn't prevent developers from selling games made with them.

> There's probably less than a few thousand people on earth with the level of skill and expertise to build something at the scale of UE4.

That's really bunk. I mean "only elite can do it" it claim. Sure, it's not something you can create in one day, but it's not something that out of reach either, especially when people are collaborating on it.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by aphextron on Friday January 11, 2019 @01:08AM (#18881370)
>That's really bunk. I mean "only elite can do it" it claim. Sure, it's not something you can create in one day, but it's not something that out of reach either, especially when people are collaborating on it.

The graveyard of hundreds of abandoned open source game engines begs to disagree with you. I agree that it seems absurd, but you really can't underestimate the amount of man hours put into these things. Unreal has been under constant development for over 20 years.

It's the same as flight simulation. Why is there only one viable flight simulator (X-Plane) on the market? It's because that kind of coding is simply beyond 99% of developers, and it takes a huge well funded and focused team to make something state of the art.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by shmerl on Friday January 11, 2019 @01:11AM (#18881380)
Same claims have been made about codecs. "Only elite can do it", "you can't make it open" and etc. Yet, we have great open collaborative projects today for state of the art video and audio codecs. So it's not a technical issue.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by ulasbilgen on Friday January 11, 2019 @01:45AM (#18881490)
There’re are some difference between a codec or OS with a game engine. One is the user base. I think there’re simply not enough game developers to extensively use the open source engines, every single computer needs an OS and in most cases needs a codec. But not everyone is a game developer. Another one is requirements I guess. For OS and codecs, I think the requirements are much more defined and manageable, but for a game engine the user uses it to create something else, hence the capabilities needed from the game engine may change wildly per project.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by bsder on Friday January 11, 2019 @01:53AM (#18881520)
And yet those codecs still aren't in hardware devices or widely implemented in all browsers.

I wouldn't cite open source codecs as a success story ...

A GUI toolkit is probably more on point and of the correct scale, and those also demonstrate that without significant backing from somewhere, progress doesn't get made at that level of complexity.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by dkersten on Friday January 11, 2019 @08:38AM (#18883468)
What about the hundreds of thousands of abandoned open source web apps/tools/libraries? I guess only a small few elite are able to write any functionining code at all, then?

A commercial quality game engine is a huge project, and as such, requires a huge projects worth of time and effort to build. Same as any other huge software project (which all have countless abandoned open source attempts). Remember that most open source projects start of tiny (one developer is common, certainly very few start off with more than a handful) and work on it in their free time, while commercial teams like Unity have hundreds of peolpe working on it full time.

The reason they are abandoned is typicaally that 1) the developers, who are doing it in their spare time, don’t have the time anymore; or 2) they get frustrated at the amount of work/lack of contributors/lack of interest and stop working on it; or 3) they simply lose interest and work on something else.

Its not lack of ability, its lack of time/motivation/interest to keep working on it for many, many years.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by AnIdiotOnTheNet on Friday January 11, 2019 @11:36AM (#18884645)
There are hundreds of abandoned open source anything. There's no barrier to entry and and no incentives to keep working on things when you're no longer interested in doing so. It doesn't mean anything.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by lasagnaphil on Friday January 11, 2019 @02:12AM (#18881581)
From what I've heard and experienced, you need at least the following knowledge to create a good game engine:

- Understanding of modern CPUs / GPUs and the capabilities/shortcomings they have

- Understanding the behaviors and quirks of the OS

- Familiarity with multicore programming

- Skillful memory management (such as making your data structures less prone to cache invalidations)

- Mastery of a low-level language (C++, Rust, whatever)

- Familiarity with build systems (CMake, SCons, etc, ... or sometimes you might have to roll your own)

Already I could see the number of contributors who would know all this stuff being pretty low. (I've dabbled a bit in graphics and made a simple OpenGL scene graph renderer and a fluid simulator, but I still don't feel like I'm competent enough...)

An engine is comprised of multiple components (Graphics, Sound, Physics, etc...). So you wouldn't need to know all of it, but contributors would need to have a clear grasp on at least one. So for each component, you would need...

- Entity System: You need a universal way to handle game entities. Implementing it efficiently requires a good knowledge of computer systems, because you need to think carefully about how you store data in the memory.

- Job System: You need a system to execute various tasks (rendering, physics, game logic, ...) simultaneously on multiple processors, so that a single game frame can finish in less than 16 milliseconds. Implementing this would require some knowledge in concurrency as well as OS concepts.

- Resource Management: You need a way to store and keep track of the game's various data stored in files, such as images, models, sounds, game objects and their parameters, settings, etc. You need to implement efficient serialization and compression for this.

- Graphics: Mastery of a graphics API (OpenGL, DirectX, Vulkan), and understanding its various patterns and shortcomings. You also need knowledge in how rendering works (which also requires some math), and nowadays a PBRT renderer (https://www.pbrt.org/) is basically a minimum requirement for modern 3D game engines.

- Physics: Lots of math and physics (Linear Algebra, Differential equations, Mechanics, etc.), and also optimization skills like assembly and SIMD (speed is critical in this area!). Fortunately many people just use already-built middleware such as Havok or Bullet..

- Sound: This is actually the most neglected part in game engine development, and it is hard to find good resources on this.

I think the people who would have the knowledge to build a game engine would be already busy working on other stuff, such as working for an AAA gamedev company (which sometimes does a lot of crunch, so they might not have enough time for open-source stuff), or a proprietary game engine company like Unity or Unreal. But I still see some hope around the edges. From what I've seen, Handmade Hero (https://handmadehero.org/, which is a livestream of making a game engine from scratch, accompanied with various education materials) is the most impressive. It tries to teach those skills needed to make a game engine to interested programmers, which I think is a crucial first step in encouraging open-source gamedev.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by AHTERIX5000 on Friday January 11, 2019 @07:58AM (#18883217)
...and you need tools and editors to make the content for the engine in proper format. That is the "boring part" OSS projects usually lack since writing renderers and job systems is much more fun than fighting with inconsistencies in scene formats or writing custom importers.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by dkersten on Friday January 11, 2019 @08:41AM (#18883487)
Creating a high quality game engine is by no means an easy task, but you don’t need each contributor to know all of these things and you can use existing libraries for a lot of them. A lot of the things you mention have good quality MIT-licensed (or similarly liberal license) libraries you can use to save time. Its still going to be hard, but its not thaaaaat inaccessible.

Some examples: for entitiy systems, EnTT is amazing. For a job system you’ve got stuff like cpp-taskflow, for physics there’s bullet, for graphics there’s bgfx or full blown renderers. Sure, these won’t solve all of your needs, but they’re a good starting point that frees you from having to do a lot of stuff yourself.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by bsder on Friday January 11, 2019 @01:51AM (#18881511)
> That's really bunk. I mean "only elite can do it" it claim. Sure, it's not something you can create in one day, but it's not something that out of reach either, especially when people are collaborating on it.

You need to be damn near Johnathan Blow levels of skill and perseverance to create a decent game engine.

Maybe you wouldn't classify him as an "elite", but I sure would.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by throwaway2048 on Friday January 11, 2019 @01:36AM (#18881459)
You could have made many of the same claims about operating system kernels not very long ago.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by jononor on Friday January 11, 2019 @04:59AM (#18882220)
It has been demonstrated possible for a large range of projects that are similar in complexity. For example: web browsers (Firefox), OS kernels (Linux), 3d-modelling applications (Blender), compilers (GCC), databases (PostgreSQL).

Won't be easy for sure, neither on technical nor marketing level. Many of the successful examples took 10+ years before they got really viable. But to say it is impossible to do this for a game engine, just because no-one has done it yet, is defeatist.

Re:Improbable and Epic Games establish $25M fund for ‘more o... by Cmerlyn on Friday January 11, 2019 @01:43AM (#18881482)
> There's probably less than a few thousand people on earth with the level of skill and expertise to build something at the scale of UE4

Thankfully, there are millions of people who can build something at the scale of linux or firefox. Why else would it be possible for them to be open source?

Re:Improbable and Epic Games establish $25M fund for ‘more o... by nogbit on Friday January 11, 2019 @09:35AM (#18883790)
It also requires solid partnerships with console companies (MS, Sony, Nintendo etc) unless they were to also go a FOSS route with their systems.
Re:Improbable and Epic Games establish $25M fund for ‘more o... by nothis on Friday January 11, 2019 @06:07AM (#18882578)
Same could be said about operating systems, yet we have Linux.