License opinion query

If your topic doesn't fit anywhere else, put it here.

Moderator: joepal

License opinion query

Postby ingeras82 » Tue Aug 19, 2014 10:30 pm

Hello MH team, I'm sure you get a lot of license questions, I've been searching the forum and I think I have a clear image of the limitations. Still, I want to make sure:
I plan on implementing a character editor program based on Makehuman (morphs, proxies, rigs, the whole package). Not Python, but C++ or .NET. I would like to use this character editor together with other applications (standalone game, mmo game, simulator, whatever).
I understand I should release the software under AGPL3 license or later (public open source). Now, I don't have a problem with making the character editor open source (and the targets, base mesh, rigs, etc. are AGPL3 of course), but the game/sim/etc... that's a different issue :) . So I understand I have 2 options:
1) Come to terms with the Makehuman team for a close source/commercial option (probably small chance :mrgreen: - still, worth a try);
2) Split it in 2 -> open source (AGPL3) character editor and closed source application. The character editor exports content in a human readable form (JSON, XML - the specification would be in the open source editor anyway, even if binary). Content is CCO and I make my own importer and game/sim/etc (closed source). So in short: - editor (+ morphs, basemesh, etc.) is AGPL3, - generated content belongs to the user (the exported character), - importer and application belong to me. Anybody else is free to make their own exporter/importer and use the content in their separate applications.
In conclusion: Please correct me if I have misunderstood the way your software is licensed and if option 2) would breach the license terms. Otherwise, an "your ok" would suffice :). Congratulations on the fine work with Makehuman.
ingeras82
 
Posts: 13
Joined: Tue Aug 19, 2014 9:21 pm

Re: License opinion query

Postby joepal » Wed Aug 20, 2014 4:50 am

This is my opinion, which is written early in the morning and which might be discussed, so take it as preliminary right now...

You can't use the CC0 split in your own software since you are not the copyright holder of the MakeHuman assets (base mesh, source code etc). When you download MH you get a CC0 exception for when using MH. However, an application based on parts/assets/whatever is a different animal. The license grants you access to these parts under AGPL, but not the option to make license exceptions. It does not follow that an application based on parts of MH automatically has output licensed CC0. Possibly this should be clarified in the license texts.

So in my view the following is the case:

If you take assets directly from within MH and implement a separate application: You're bound by AGPL, no exceptions, not even if you push those parts onwards automatically and call it export.
If you export a character from MH and use that in an application: You're not bound by anything in particular, since the export is CC0
If you make a routine that calls the original MH software to generate a set (possibly large) of characters and thus create a library of your own: still ok, you're kosher with CC0

This might be considered cumbersome for an indie developer obviously, but the consequences are intended. AGPL is intended to be viral.

EDIT: the following paragraph was updated cause someone thinks I was unnecessarily belitteling the crew :-)

Regarding separate copyright deals with indie developers: This has been discussed but been put on hold until we have a registered juridical persona. Until such a point the AGPL deal is what we can offer.

But as said, the above is my early morning view. Maybe there is some solution to get forward.

One question that remains is how changed the MH application can be and still be considered to be MH. For example, if you download the source, make a typo fix in the UI and then export a character, is it still CC0? Probably, but that'll have to be discussed with the said bunch of guys.
Joel Palmius (LinkedIn)
MakeHuman Infrastructure Manager
http://www.palmius.com/joel
joepal
 
Posts: 4465
Joined: Wed Jun 04, 2008 11:20 am

Re: License opinion query

Postby Manuel » Wed Aug 20, 2014 6:59 am

joepal wrote:You can't use the CC0 split in your own software since you are not the copyright holder of the MakeHuman assets (base mesh, source code etc). When you download MH you get a CC0 exception for when using MH. However, an application based on parts/assets/whatever is a different animal. The license grants you access to these parts under AGPL, but not the option to make license exceptions. It does not follow that an application based on parts of MH automatically has output licensed CC0. Possibly this should be clarified in the license texts.


Exactly

joepal wrote:One question that remains is how changed the MH application can be and still be considered to be MH. For example, if you download the source, make a typo fix in the UI and then export a character, is it still CC0? .


Only the copyright owner of the assets can renounce to the copyright and apply the exception to the AGPL.
So if the modified version is distributed from makehuman.org the output is still CC0, but if distributed by someone else that has not the copyright of the database, it's AGPL3.
Manuel
 

Re: License opinion query

Postby ingeras82 » Wed Aug 20, 2014 4:25 pm

Thank you for your prompt answers. They lead to some other questions :).
1)
joepal wrote: It does not follow that an application based on parts of MH automatically has output licensed CC0. Possibly this should be clarified in the license texts.

Ok, so I get that the problem is someone may take my source code and make a character editor clone that doesn't release CCO content. I would be more than happy to add a license specification that forces the content to be CCO. They would be also abusing me in that case :lol:. My interest is to get more content, not sell it. I just want to control how the editor looks and works (no offense intended for Makehuman proper).

2)
joepal wrote: If you make a routine that calls the original MH software to generate a set (possibly large) of characters and thus create a library of your own: still ok, you're kosher with CC0
coupled with
joepal wrote: One question that remains is how changed the MH application can be and still be considered to be MH. For example, if you download the source, make a typo fix in the UI and then export a character, is it still CC0? Probably, but that'll have to be discussed with the said bunch of guys.


Ok, so I basically get from this that any Makehuman port to another programming language (I'm not comfortable with python for example) or any fork generates AGPL content not CCO. The character editor described by me would do more or less what Makehuman does and also be open-source. But if I use Makehuman (via command line as quoted), the content generated is CCO.
So: Makehuman clones/ports/forks (be it AGPL) are in a more disadvantaged position (from a license freedom point of view) than the Makehuman proper. I can understand this, after all... it can be considered competition (open-source competition).

Conclusion: if I understood corectly, if I want my game/sim/app to be closed-source I have to couple it with Makehuman proper, not my open-source character editor/makehuman clone forked/ported to another programming language? I don't get to make my own open-source UI to distribute to the users, I must distribute Makehuman from makehuman.org.
Thank you for your patience.
ingeras82
 
Posts: 13
Joined: Tue Aug 19, 2014 9:21 pm

Re: License opinion query

Postby joepal » Wed Aug 20, 2014 5:33 pm

The thing is that if we granted people the ability to make CC0 exemptions themselves, we'd essentially be licensing the whole thing CC0, not AGPL. There would be no difference between open source developers or your normal evil empire then, cause all they'd need to do is make a modification for exporting the whole MH content as CC0 to themselves and then relicense it (which would then be legal since sublicensing is perfecly valid with CC0). It's not about competition, it's about not giving everything away to someone who makes closes source products of it without giving back to the community.

There's no practically functional way to make a difference between a nice guy and a bad guy in the license setup. Which is why we offer the components of MH under AGPL to everyone. It's restrictive, and we know it. It forces all derivates to be open source, which is basically the intention. Anyone is perfectly allowed to make an open source program that builds on MakeHuman technology, as long as that open source program adopts the AGPL license.

So you're right: You can use MakeHuman to get exports under CC0. If you're reusing components or the source code you're bound by AGPL.

Further, before making an aggregate where MakeHuman is a component, take a look under which cases the setup as a whole would also fall under AGPL. Here you'll note the difference between LGPL, standard GPL and AGPL. With LGPL, it's perfectly valid to package the component into a bundle which has another license as a whole (as long as you didn't make the LGPL part inseparable, give users access to its source, and offer them the ability to replace/change the LGPL part). With GPL and AGPL this is not as easy.

See for example the answers in this thread:

http://stackoverflow.com/questions/1114 ... strictions

(AGPL works the same as GPL except that you also have to share the source if you run it as a server instead of distributing the software itself)

Anyway, the above consequences are intentional and not a mistake. We discussed this license setup for years and had numerous flamewars on the forums about various alternative licensing schemes. In the end this was what was agreed to be the best possible approach for a) giving maximum freedom to artists (granting them CC0 access to art assets), b) allowing anyone to make open source derivates and c) still protecting the core assets from being hijacked.
Joel Palmius (LinkedIn)
MakeHuman Infrastructure Manager
http://www.palmius.com/joel
joepal
 
Posts: 4465
Joined: Wed Jun 04, 2008 11:20 am

Re: License opinion query

Postby ingeras82 » Wed Aug 20, 2014 6:38 pm

joepal wrote:The thing is that if we granted people the ability to make CC0 exemptions themselves, we'd essentially be licensing the whole thing CC0, not AGPL. There would be no difference between open source developers or your normal evil empire then, cause all they'd need to do is make a modification for exporting the whole MH content as CC0 to themselves and then relicense it (which would then be legal since sublicensing is perfecly valid with CC0). It's not about competition, it's about not giving everything away to someone who makes closes source products of it without giving back to the community.

Thank you for taking the time to explain your choices. I see now I have misunderstood the CCO exemption. I still can not let this go so easily :) and I have to ask another question: what if the Makehuman team expressly grants a permission only for my software to release CCO content. Anyone using my source code would not be covered by this exemption and in turn would have to ask it from you. Is this possible and would it protect your work (and I see now, also mine :lol: )?
joepal wrote:Anyway, the above consequences are intentional and not a mistake. We discussed this license setup for years and had numerous flamewars on the forums about various alternative licensing schemes. In the end this was what was agreed to be the best possible approach for a) giving maximum freedom to artists (granting them CC0 access to art assets), b) allowing anyone to make open source derivates and c) still protecting the core assets from being hijacked.

A personal opinion if I may: yes your software is great and offers unlimited freedom for artists. For developers and people who may want to mod your application it is kind of restrictive. If I want to make a proxy with it's own (non main rig) bones, I can't do it right now. I may ask for this feature, but it's a bit frustrating to wait, especially if I can code the feature in 5 hours for myself. Artists using my variant would be limited in their freedom.
I think the Makehuman community would benefit from the propagation of Makehuman variants.
Think what effect would tapping into the Ogre3d community artist base have or any other game engine. For now, Makehuman is great if you are a 3D artist who wants to use static content, but if you want to use character editor functions of the likes of Skyrim, Eve Online or others, you would have to carry the same Makehuman application around for every title. If you don't like how it looks, or something else, you're out of luck, and then there's version dependency and so on. It's a great application, don't get me wrong, but it's for proffesionals, not for your every day user, and they can generate content too, not same quality, but quantity. I think quantity brings quality eventually. Artists would come to a large community ready to buy that nice looking character... think Turbo squid. Bottom line, you would get far more people involved.
Anyway, I'm sure you guys thought about this already, just an opinion :).
ingeras82
 
Posts: 13
Joined: Tue Aug 19, 2014 9:21 pm

Re: License opinion query

Postby Manuel » Wed Aug 20, 2014 9:41 pm

ingeras82 wrote:A personal opinion if I may: yes your software is great and offers unlimited freedom for artists. For developers and people who may want to mod your application it is kind of restrictive. If I want to make a proxy with it's own (non main rig) bones, I can't do it right now. I may ask for this feature, but it's a bit frustrating to wait, especially if I can code the feature in 5 hours for myself. Artists using my variant would be limited in their freedom.
I think the Makehuman community would benefit from the propagation of Makehuman variants.



The open source power is the CONVERGENCE of resources.

Look at your case.
All your problems above are because you want to code MH from scratch using C++ or .net. and then using our database.
This would require much more time than look at our python code, and then discuss the things that are missed and perhaps being part of the MH team and implement them in the official MH, with our help.
As C++ programmer, you will find python very simple and easy to understand, trust me.
Also we have designed MakeHuman as a plugin based application. Looking at the example file in makehuman/plugin/7_example.py you will see that's very easy to write a plugin for special purpose.
At the end, you will have an open source character editor that perfectly fit the needing of your application (with CC0 output) and all users of MakeHuman will enjoy the new features developed by you.
Also you will have a new experience (that is not bad on your curriculum) and probably you will know more about how complex team are organized.
Just an idea...
Manuel
 

Re: License opinion query

Postby ingeras82 » Thu Aug 21, 2014 3:39 pm

The plugin idea might be what I'm looking for. Thank you Manuel. So if I join the team and participate in the development of some plugins that eventually get included in the Makehuman official release I could distribute Makehuman together with my application AND get CCO content. The user would edit the characters in Makehuman, export the result and then load them in the closed source application. Please correct if I made a wrong assumption along the way.
Regarding plugins, I guess I would need a plugin that customizes the UI based on some configuration files and a plugin that exports the content (mesh and rig) in a friendly format for the application. Of course, those plugins would need to be accepted and make into the Makehuman official release. But that's another topic.
ingeras82
 
Posts: 13
Joined: Tue Aug 19, 2014 9:21 pm

Re: License opinion query

Postby Manuel » Thu Aug 21, 2014 5:40 pm

ingeras82 wrote:The plugin idea might be what I'm looking for. Thank you Manuel. So if I join the team and participate in the development of some plugins that eventually get included in the Makehuman official release I could distribute Makehuman together with my application AND get CCO content. The user would edit the characters in Makehuman, export the result and then load them in the closed source application. Please correct if I made a wrong assumption along the way.
Regarding plugins, I guess I would need a plugin that customizes the UI based on some configuration files and a plugin that exports the content (mesh and rig) in a friendly format for the application. Of course, those plugins would need to be accepted and make into the Makehuman official release. But that's another topic.


Well, I must ask about the quibble of software distribution done by someone that has not the (C) of the assets.
But the "worst" case would be that your site will have a "Download character editor" link to MH download page, instead to download it from your server.
A very cool thing will be that your game will be the first one 100% compatible with MH as direct character editor, and any new MH release will be practically a new release of your game editor.

About technical side, there are two things to examine:
- A plugin can't modify the interface of other plugins.
- In order to be accepted in the official distribution, it would be much better if the friendly format is something already existent and useful for the whole community, instead a custom format that works only for your game.

But as you said, this is another topic.
Manuel
 

Re: License opinion query

Postby ingeras82 » Fri Aug 22, 2014 4:49 pm

Well, I think I have a clear image now of what the license permits and what not. It's a bit more restrictive for my purposes than I originally understood, but there's the viable option of actually using Makehuman proper as the character editor. Thank you Joe and Manuel for the ideas and explantions. I must process a bit the new information. I think this thread has reached it's final point :).
ingeras82
 
Posts: 13
Joined: Tue Aug 19, 2014 9:21 pm

Next

Return to General discussions about makehuman

Who is online

Users browsing this forum: No registered users and 1 guest