mrdoob / glsl-sandbox

Shader editor and gallery.
https://glslsandbox.com/
MIT License
1.58k stars 264 forks source link

License? #14

Open mrdoob opened 12 years ago

mrdoob commented 12 years ago

Would it be a good idea to add this to the site?

http://creativecommons.org/licenses/by/3.0/

It's a bit sketchy to "modify" the rights of work after it has been done, but I don't know how else to solve this... ?

kusma commented 12 years ago

Do you mean to imply that works made WITH glsl-sandbox implicitly gets a licence attached? I doubt that would even be legal...

mrdoob commented 12 years ago

Ah sorry, I didn't specify. I don't mean that stuff done with the glsl-sandbox would get that license. I mean that stuff published on the glsl.heroku.com site gets that license. Makes sense?

zz85 commented 12 years ago

from what I observe CC is usually used for non-code work. maybe @mrdoob thinks code from the glsl sandbox are art pieces too :)

there are also different variants of CC, and on soundcloud/flickr/jsdo.it/similar sites there's an option for authors to specify which. though I suspect most people uses the default knowingly/unknowingly. but sites like http://www.newgrounds.com/ seems to apply one license on everything

mrdoob commented 12 years ago

Or just "Public domain"? Anything really.

If there is nothing isn't it assumed to have copyright and then people is not really allowed to remix/play with all that stuff? At least if it's tagged public domain the author will know what's going on. Right now is just unclear.

Pretty sure most of the authors don't care and assume it's public domain already. But some may care...

jfontan commented 12 years ago

There could be a default license, maybe public domain but the users can specify a different license in the comments. Also the license can be shown only for effects created after a certain date. Doing so we wont force old effects to have some specific license.

simonthum commented 12 years ago

Just stumled onto this nice tool and had the license issue recently: CC0 (CC zero) is intended for code.

zz85 commented 12 years ago

@mrdoob yes, from my knowledge of intellectual property, copyright by default belongs to the author of the original work (but of course depends on country and circumstances - for example, does your company's owns the code you write during office hours?). but of course, anyone who doesn't want his code used would probably not have saved it on glsl.heroku.com

mrdoob commented 12 years ago

Just stumled onto this nice tool and had the license issue recently: CC0 (CC zero) is intended for code.

Ah, I wasn't aware of that one.

but of course, anyone who doesn't want his code used would probably not have saved it on glsl.heroku.com

That.

emackey commented 12 years ago

I think that all contributed code should be explicitly considered "Public Domain" unless the author declares a license in the comments. If we do anything other than this, then every new fork would have to ask the user for name and copyright date at the very least. Also the repository of code becomes a lot less re-usable in other games and demos, which I think is one of the best features of GLSL Sandbox.

joelpryde commented 12 years ago

I'm actually very curious about this. I've been developing a free iPad app for editing glsl shaders and I was going to use some of the shaders on the sandbox as sample shaders in my app. My app is entirely free (and will always be) and I would just like to see more people writing glsl shaders in any form but I definitely don't want to step on any toes or take anything away from this wonderful project.

How do you guys feel about this? I would love to credit the shader writers but to my knowledge they are typically anonymous. I will definitely credit glsl sandbox in my app notes and the app is entirely free (and the shaders in the app are provided with source).

Thanks for making something so amazing btw! I have lost countless hours in the GLSL sandbox!

mrdoob commented 12 years ago

I think that all contributed code should be explicitly considered "Public Domain" unless the author declares a license in the comments.

Agreed. However, considering the fact that no one can't really control how the people is using the code. Wouldn't it be simpler to force everything to be public domain?

I have lost countless hours in the GLSL sandbox!

I bet you have win countless hours too ;P

emackey commented 12 years ago

Can't force everything to be public domain, unfortunately, as useful as that would be. Some existing shaders already use code that is covered by specific copyrights. For example, Worley Cellular Noise:

http://glsl.heroku.com/e#677.0

And Ashima Noise:

http://glsl.heroku.com/e#299

We should allow this code in the gallery so long as the license is clearly stated in the comments. But for "random Joe" contributions, I think we should make it clear that it will all be public domain unless they are incorporating copyrighted open-source shaders like Worley and Ashima. If users want to place thorny copyrights on their own stuff, they're free to host that on any other website, that's not what the sandbox gallery is for. The gallery is for code that's usable by everybody. My $0.02.

kusma commented 12 years ago

I don't think we can legally force a license upon other people's work. The way I understand licensing, it has to be a conscious decision by the copyright holder.

But we can probably add a check-box that forces the user to agree to agree to a license. This would obviously only apply to new code. However, I've been told that the term "public domain" can be problematic, as it has a different legal meaning in different countries. So perhaps some tried-and-tested license would be the better choice?

For old code, I think the best thing is to just leave it as it is. People uploaded code with the understanding that it would be shared and even though we strictly speaking does not have a license to redistribute it, it's difficult and more importantly very unlikely that anyone will argue us redistributing it is an overstep; after all, that IS the mechanism of the site. If someone wants something removed, they should probably ask.

alteredq commented 12 years ago

Maybe we could do something simple, like prepopulating a template for new shaders with a comment containing default liberal license (public domain / CC0 / MIT)?

emackey commented 12 years ago

@alteredq good idea, we could add it to a comment at the top of the default shader. But I'd strongly recommend public domain, as contributions are often anonymous and modifications go uncredited, it's almost impossible to establish proper copyright ownership. Also, a single derivative work (a WebGL game, perhaps) might contain dozens of shaders, copied and adapted from this highly educational site. Putting together a proper list of credits for such a game would be infeasible given the way shaders are anonymously forked and modified now. Plus, as we've seen, the few people who want to be credited will leave their name in the comments, sometimes alongside a statement of license.

Since Heroku itself is based in San Francisco, perhaps it's reasonable to say that the US definition of "Public Domain" is the one that legally applies here.

kusma commented 12 years ago

Makes sense to me, both.

simonthum commented 12 years ago

Just FYC: CC zero is trying to standardize "pubilc domain" to the extent possible, so offering both may be confusing to users.

marwan38 commented 5 years ago

Hi, I understand from the comments that the shaders posted are unlicensed, unless stated otherwise by a users comment on the shader (Not even sure how much that applies).

I would like to know if it's legally okay to use the shaders posted for a commercial project? Excuse my ignorance, I don't know much about licensing and all that. Didn't want to open a new issue seeing as there's already discussion related to my question.

kusma commented 5 years ago

My interpretation is that it's not legal to use unlicensed materials for any particular purpose without explicit permission from the author. You should contact the authors of the shaders you want to use and ask for permission. People are usually pretty helpful if you ask, IMO.