GPL'ed games and creative content
The GPL was not intended for graphics, sound, music, etc. I know that, but other people don't. Other games that license their content under the creative commons share-alike license (such as The Urquan Masters and FreeOrion) basically are allowing other developers (ie: me) to "borrow" their art work, music, and sound effects for their own games so long as credit is given. Other developers are free to distribute, modify, sell, or do whatever they want with the graphics. However, if you make a game and link GPL'ed graphics, does your game need to be GPL? I figure this is a legal grey area, but I'm interested in "the right thing". Obviously there's some level of seperation that the GPL will not cross over. Running a GPL program on Windows does not force Microsoft to license windows as GPL, even though windows is running the GPL program. A GPL plugin for photoshop doesn't require photoshop to be GPL, even though it's linking a GPL component at run time. A software library, on the other hand, forces any code that links against it (wether statically or at run time) to adopt the GPL license (hence the so called "viral" nature of the GPL). That's why the lesser GPL was invented. Graphics fall somewhere in between a plugin and a run time library in my mind. Your game can be made to run without these GPL graphics (substituting a "missing texture" texture, for instance), but obviously it's meant to run with them. These GPL graphics could be thought of as an independant plugin. The graphics themselves keep their "source open" since anyone can just edit a png or jpg. The picture and the source are the same. Same argument holds for other assets like models, sound, music, etc. Obviously the best anwser is to hound any open source games to adopt an appropriate license for art assets, but if I was a hard worker I'd be making my own graphics :P
[size=2]Darwinbots - [size=2]Artificial life simulation
Quote:
Original post by Numsgil
However, if you make a game and link GPL'ed graphics, does your game need to be GPL? I figure this is a legal grey area, but I'm interested in "the right thing".
I've heard convincing arguments for several different interpretations of the GPL as it applies to non-code assets. If you're planning to make your game at all high-profile or make any money off it, I wouldn't chance it without explicit written permission from the author. That dovetails with "the right thing" to do.
Very good point. For the reasons you outlined, I think licensing content under GPL is plainly wrong. I think some Creative Commons license might fit way better. As for your question, I don't know but eagerly want to know the answer.
I agree it's a grey area. It's like the recomendation to "not to use" the GPL for documentation, since it was not thought for that purpose.
My interpretation, you should release anything needed to modify that asset. It might be jpg, but if it was created i.e. with the GIMP, an xcf file should be included too (xcf: the native GIMP format) before all layers, filters, etc, were fused to make a single image. And any modification to the file should be released in an editable form too.
If you're using a mesh created with the 3ds Max, you'll have to release the whole scene in *.max format before the mesh gets converted into an editable poly.
That's my idea.
Of course, whether depending on such assets would be a violation of the GPL if you don't release the code, is a very difficult question open to debate. (but, honestly, we should leave this to lawers)
Quote:
Original post by Numsgil
The graphics themselves keep their "source open" since anyone can just edit a png or jpg. The picture and the source are the same. Same argument holds for other assets like models, sound, music, etc.
My interpretation, you should release anything needed to modify that asset. It might be jpg, but if it was created i.e. with the GIMP, an xcf file should be included too (xcf: the native GIMP format) before all layers, filters, etc, were fused to make a single image. And any modification to the file should be released in an editable form too.
If you're using a mesh created with the 3ds Max, you'll have to release the whole scene in *.max format before the mesh gets converted into an editable poly.
That's my idea.
Of course, whether depending on such assets would be a violation of the GPL if you don't release the code, is a very difficult question open to debate. (but, honestly, we should leave this to lawers)
I have a GPL open-source driving game (vdrift.net) and had similar questions about how to license data included with my game. Here's an excerpt from a response from Michael Fötsch of the Free Software Foundation:
So, it sounds like you're able to license the data and the source code very differently if you want (think Quake 3), although it makes a lot of sense for the licenses to be compatible. If you have questions I'd recommend asking the folks at fsf.org. They're knowledgable and polite.
Quote:
> We want to start including some music with our game. [...]
> my question is this: what sort of licensing terms do I need to work
> out with the musicians?
This page lists some of the free licenses under which the musicians
might want to license their works:
<http://www.gnu.org/licenses/license-list.html#OtherLicenses>
Quote:
> How will the GPL (which is what my game is licensed under) affect
> the agreement?
The license for the software does not generally affect the music and
artwork at all.
--
Michael Fötsch
Please note that I am not an attorney. This is not legal advice.
So, it sounds like you're able to license the data and the source code very differently if you want (think Quake 3), although it makes a lot of sense for the licenses to be compatible. If you have questions I'd recommend asking the folks at fsf.org. They're knowledgable and polite.
I would think the GNU Free Documentation License would be the one better applied to content.
As for the GPL for content, I guess you would have to GPL your code if your application cannot run without it otherwise.
As for the GPL for content, I guess you would have to GPL your code if your application cannot run without it otherwise.
My non-lawyer but legally-trained take on the subject:
Look carefully at the GPL.
The first and foremost issue with attempting to release images under the terms of the GPL is the mandatory preamble in the license.
Anything released under the gpl *MUST* contain a notice. Specifically from section 0 of the license: "This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License."
The typical notice is the 5000 character block of text stating that it is copyrighted, by whom, that permission is granted under the GPL, and where they can obtain a copy of the GPL.
If the original copyright holder failed to provide that notice within the image file (most allow embedding text) then they probably did not release the image under the terms of the GPL. Most often, the people who claim to have released the resources under the GPL have not actually done so -- they merely intended to do so. It is a subtle but very important legal difference.
The OP specifically mentioned a possible issue with the FreeCiv project. This has been discussed on the FreeCiv mailing list. Submission of images requires that they "must either by public domain or licensed by the copyright holder under a licence that allows anyone to reuse the images." Those images are NOT covered under the GPL, and can be freely reused for any purpose. The same is true (though worded differently) for audio and other assets.
Lets assume that the copyright holder actually did incorporate the required notices into the works.
The next issue with non-program GPL content is what constitutes the "preferred form of the work for making modifications to it."
The post by "Matias Goldberg" hinted at this, but you must clearly define what "source code" and "object code" means in this context. What is the "source code", or preferred format, of images? If they were released as lossless PNG or lossless jpg, that could be one of many preferred formats.
Next, assuming the art assets are in the proper source code, you must determine if you are incorporating them into your non-GPL project, or if they are sufficiently separate entities.
All versions of the GPL allow permissions for GPL and non-GPL systems to interoperate as long as they operate under the principles of being "at arms length". If they are separate entities that don't strictly on each other, then they are fine. The LGPL is much more permissive with these permissions, but the GPL itself is quite generous.
There are a few successful programs that do exactly that. They offer up a fully functional GPL product that can interoperate with a separate non-GPL product.
If the images were incorporated as textures to your project, then clearly the viral properties of the GPL would apply. Your game would directly incorporate a GPL licensed work, and therefore your work must be released under the GPL..
There is a common workaround for this. One such is an emulator and software for the emulator, where both exist under different licenses. In this situation, the two entities are separate. You could use a different emulator with the same data, or you could use the same emulator and different data. Since neither is incorporating the other, merely interoperating with it, the two licenses are not at conflict.
For specific examples, someone could use the (free) Blender3D engine and create a (non-free) game that runs on it. You can use a (non-free) game engine and create a (free) game that runs on it.
About a decade ago there was a really competitive instance of this. There was a text-based game engine, I forget what it was called. There was a fairly successful non-gpl engine that was competing with a GPL engine, both able to parse and process the actual game code. Some of the released games were under the terms of the GPL, others were proprietary. There were many questions about if any one of them impacted the other, and the ultimate consensus was that they were two separate programs working together. I wish I could remember the names of those products, and Google isn't helping much.
Ultimately the business answer is simple: If you cannot ensure that the things you are working on are two separate (not incorporated) working independently of each other with completely separate licenses, or if you are unsure about the legal status and cannot otherwise get permission, then don't do it.
Look carefully at the GPL.
The first and foremost issue with attempting to release images under the terms of the GPL is the mandatory preamble in the license.
Anything released under the gpl *MUST* contain a notice. Specifically from section 0 of the license: "This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License."
The typical notice is the 5000 character block of text stating that it is copyrighted, by whom, that permission is granted under the GPL, and where they can obtain a copy of the GPL.
If the original copyright holder failed to provide that notice within the image file (most allow embedding text) then they probably did not release the image under the terms of the GPL. Most often, the people who claim to have released the resources under the GPL have not actually done so -- they merely intended to do so. It is a subtle but very important legal difference.
The OP specifically mentioned a possible issue with the FreeCiv project. This has been discussed on the FreeCiv mailing list. Submission of images requires that they "must either by public domain or licensed by the copyright holder under a licence that allows anyone to reuse the images." Those images are NOT covered under the GPL, and can be freely reused for any purpose. The same is true (though worded differently) for audio and other assets.
Lets assume that the copyright holder actually did incorporate the required notices into the works.
The next issue with non-program GPL content is what constitutes the "preferred form of the work for making modifications to it."
The post by "Matias Goldberg" hinted at this, but you must clearly define what "source code" and "object code" means in this context. What is the "source code", or preferred format, of images? If they were released as lossless PNG or lossless jpg, that could be one of many preferred formats.
Next, assuming the art assets are in the proper source code, you must determine if you are incorporating them into your non-GPL project, or if they are sufficiently separate entities.
All versions of the GPL allow permissions for GPL and non-GPL systems to interoperate as long as they operate under the principles of being "at arms length". If they are separate entities that don't strictly on each other, then they are fine. The LGPL is much more permissive with these permissions, but the GPL itself is quite generous.
There are a few successful programs that do exactly that. They offer up a fully functional GPL product that can interoperate with a separate non-GPL product.
If the images were incorporated as textures to your project, then clearly the viral properties of the GPL would apply. Your game would directly incorporate a GPL licensed work, and therefore your work must be released under the GPL..
There is a common workaround for this. One such is an emulator and software for the emulator, where both exist under different licenses. In this situation, the two entities are separate. You could use a different emulator with the same data, or you could use the same emulator and different data. Since neither is incorporating the other, merely interoperating with it, the two licenses are not at conflict.
For specific examples, someone could use the (free) Blender3D engine and create a (non-free) game that runs on it. You can use a (non-free) game engine and create a (free) game that runs on it.
About a decade ago there was a really competitive instance of this. There was a text-based game engine, I forget what it was called. There was a fairly successful non-gpl engine that was competing with a GPL engine, both able to parse and process the actual game code. Some of the released games were under the terms of the GPL, others were proprietary. There were many questions about if any one of them impacted the other, and the ultimate consensus was that they were two separate programs working together. I wish I could remember the names of those products, and Google isn't helping much.
Ultimately the business answer is simple: If you cannot ensure that the things you are working on are two separate (not incorporated) working independently of each other with completely separate licenses, or if you are unsure about the legal status and cannot otherwise get permission, then don't do it.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement