You also seem to forget that many games use licensed game engines like the
Unreal Engine and even if a company wanted to release the source code for
their game, they couldn't becuase of the terms of that license. The creators
of the Unreal Engine for example rely on licensing the engine to 3rd parties
so they can employ more people to maintain and advance their technology. Have
you seen the credits for a modern video game? They are longer than most
movies!
The problem is that these game companies don't want to worry about the engine
and are more concerned in the artwork and storyline instead of creating the
game engine themselves. The game engine takes time and money and they really
don't want to create a new engine for every game. With potentially thousands
or even millions of dollars put away into an engine, do you think they would
release the source code for their hard work? Especially if they are a small
development house? Keep dreamin.
These conversations keep going around in circles with the responses saying
that everything should be free and given away. Forget the millions of dollars
and man hours put into a technology. Just give it away for free so there can
be copycat and watered down clones.
I love programs like LibreOffice to death, but it still doesn't look as good
as Microsoft Office because money motivates people. This is why it is a
little too idealistic to think that community games can even come close to
the commercial ones. Even if there is a community, many of these open source
projects have only a few people working on them full time. For example, the
Gnome project only has like 1 guy working on GTK3!