public shader/code recycling

category: general [glöplog]
Besides "sceners ripping off sceners" I want to start this thread to complain a little about carelessness.

One of the original authors of one of the shaders used in this partyprod 1st place demo told me that he is not happy that he was not asked or notified about his shader being used in a production.

Problem is, that some coders stop publishing their work in progress and previews especially on shadertoy if they find their stuff then recycled on various other places on the web w/o being informed. I know that this is not part of the license but it is part of positive human interaction and helps to avoid conflicts.

In this example a shader was used that is part of a game project and it is easy to understand that the author wanted shadertoy to be the only place for previews/shaders of his prototypes and development.

*awaiting lama pics*
added on the 2015-07-06 16:07:55 by movAX13h movAX13h
I thought everything posted on shadertoy was done under creative commons license. That makes it free to use for without having to specifically ask permission. Of course it is not cool to take someone elses work and use it without credit but I think if you are prototyping shaders for a project then you should not post them on shadertoy public listing.

I agree on principle people shoud show respect to each other but the harsh reality of the world is that you can't trust all people to do the right thing. Some responsibility needs to be taken to protect your own work and if you publish it publicly there is a chance someone will steal it. Happens all the time with music and art and of course code, it isn't just a demoscene problem.

Also made me laugh when I clicked that sceners ripping off sceners link and saw a picture of giorgio moroder who famously went and stole an entire ASD demo.
added on the 2015-07-06 16:41:08 by drift drift
well, they should just show the shader, not also the complete code on shadertoy.
should be doable to protect the stuff atleasts a little bit?
added on the 2015-07-06 16:46:56 by tEiS tEiS
Well you can set the shader to private if you don't want people to see it.
added on the 2015-07-06 16:51:57 by drift drift
reminds me a bit of publically hosting a project on github to make it easier for people to submit patches/bugfixes and feedback but start the drama if someone uses parts (or even a fork) of it for an own project.
now im not completely sure what license shaders on shadertoy are released under by default, but as the whole shadersource is there its quite easy to "borrow" routines, no matter if as a whole or just fragments of it. where to draw the line?

the originality of "shader mashup prods" can surely be discussed but as long as credit is given and sources are open I cant see the drama here
added on the 2015-07-06 16:58:02 by wysiwtf wysiwtf
The default license is CC but you can specify your own license. The catch is on top of any licensing you are automatically agreeing to give your work to Shadertoy to use anyway they want: https://www.shadertoy.com/terms

Legally it is pretty clear. If you are really worried about other people using your code and particularly if it is prototype code for some planned future project then don't put it on shadertoy.

In a demoscene perspective it is kinda lame to compile a demo entirely out of someone elses code. But then what about demotools like werkzug or whatever, still is using someone elses code. Seems like this prod was a fast made party demo for fun and they openly credited all the shader writers. Not sure about using the bitmap images from shadertoy since they belong to IQ/Beautypi, might be an issue with that I don't know. Apart from the fact the demo doesn't even run on my computer.
added on the 2015-07-06 17:10:47 by drift drift
@tEiS: No, it is very positive that the shader code is shown and there are plugins like this that make it very easy to get to the shader code anyway.

@drift: The license allows it, yes. A license is a rule but not a replacement for friendliness.

If it is a unique, arty creation I would always see the author behind it and not the license. So I would ask if he is ok with it.

The point is that original authors remove their stuff because they dont want to mess around with anyone who is used to act based on laws and rights instead of common sense. It is as simple as that and it often happens in total silence.

Personally I don't care too much about my stuff getting ripped off because I'm happy others can and want to use it and I often give away code for free even to commercial entities (pixi.js uses one of my shaders, some of the new fl studio visualisations are done by me and srtuss). Some ask, some don't, some even want to pay or give something in exchange. I don't care except my stuff is used for negative action which is rarely the case. At this point I'm a voice for those who wouldn't go to pouet and post about it.
added on the 2015-07-06 17:21:28 by movAX13h movAX13h
I thought everything posted on shadertoy was done under creative commons license. That makes it free to use for without having to specifically ask permission. Of course it is not cool to take someone elses work and use it without credit..

No. There are different CC licenses. Not all of them allow reuse. All of them do say that you need to credit your sources.

added on the 2015-07-06 18:03:59 by evilpaul evilpaul
What evilpaul said. If they are indeed using these shaders under the terms of the CC by-nc-sa licence, then I see no indication that they've satisfied the ShareAlike condition. (In other words: they need to post their source code, and license their own demo under CC by-nc-sa.)
added on the 2015-07-06 18:09:59 by gasman gasman
Shadertoy doesn't force you into a specific license, but if you don't apply any specific license to your work, this is what is defaulted to: http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_US.

The info of the demo doesn't specify any license, so it can be assumed the production is also under CC 3.0, and assuming the used shaders are under the default license, I don't think there is much of an issue here.
added on the 2015-07-06 18:11:28 by noby noby
gasman: the end of the demo mentions that the sourcecode will be released on github.
added on the 2015-07-06 18:16:29 by noby noby
Publish your code, but expect your fellow man to be just a man. Adjust your expectations accordingly. There is no practical way to enforce any expectations, rules, licenses or copyrights anyway. They're just a trap.
added on the 2015-07-06 19:20:20 by Mixeri Mixeri
As usual with this, on the author side it is important to state what you want. This is what license are for.

If the author wants people to ask permission before using his work, he should say it clearly and use an appropriate license (which can be as simple as "ask me before you reuse this")

You can use "be friendly" as your license if you wish so, but this is open to interpretation and may not end up being what you expected. Maybe for you it means "ask me first", but for someone else it means "using your work shows respect for you and that's all you need". So it's better to state clearly what you mean, either by picking an existing license full of legalese, or if you want things to be more "friendly", by using a simpler one, which you could make up yourself.

In this case, it seems the original author agreed to a license without reading it, and then found e was trapped in something he didn't want. Too bad, but you can't blame people reusing the code for that. Original author did grant them the permission to do that, without them even having to ask.
A license is a rule but not a replacement for friendliness.

A license is globally defined and clear, "friendliness" is subjective and the definition varies from person to person. If something is released under a license which allows re-use with credit, its perfectly fine to do so. Everything else is arbitrary.
added on the 2015-07-06 20:27:40 by Salinga Salinga

I totally agree that I should have contacted the authors in beforehand. It was poor judgement on my behalf. A few hours ago I contacted all original shader authors via mail or shadertoy.

So far only aiekick (who did the shader for the intropart) have responded. This was his response:

"no problem. its really pleasant to see that my shaders will be used by another people Thanks you. i have seen your mashup, and i liked it"
good to hear. thanks!
added on the 2015-07-06 21:05:10 by movAX13h movAX13h
good to hear. thanks!

Do credit even more.
I used zwerg, refactored, and put some more functions into it...
and I love it, just for playing around :-)

So keep on going! It seems that you provide nice tools, everybody wants to use!
added on the 2015-07-07 08:40:29 by FeN FeN
You can't really stop people from doing whatever they like with your shaders, so why even bother. I've never understood this code hoarding mentality, and I'll personally never let any paltry thing like a license to stop me from using whatever I like for artistic purposes.

Of course, crediting is a huge courtesy to the original author(s), but I don't really consider them to be a necessity. Actually, the whole fact that someone would even TRY to stop me from using something makes it even more tantalizing to just do it anyway.
added on the 2015-07-07 12:31:26 by visy visy
tl;dr: sue me.
added on the 2015-07-07 12:32:12 by visy visy
Well, if you don't want to make looking at your shadercode too easy, just don't use shadertoy and write yourself some proper tools without that WebGL crap. Oh and do some intros/demos then directly, because you are writing proper native code anyways at that point.

I tend to read NFOs and I appreciate proper credits - in case someone used something from somebody else.
added on the 2015-07-07 12:45:12 by las las
I'll personally never let any paltry thing like a license to stop me from using whatever I like for artistic purposes.

this. stop whining.
added on the 2015-07-07 13:07:02 by groepaz groepaz
Of course, crediting is a huge courtesy to the original author(s), but I don't really consider them to be a necessity.

It's not required, but neither is bathing.
added on the 2015-07-07 13:19:01 by Gargaj Gargaj
It's more than don't be a dick.

Take your productions, as well as others' creations, seriously by showing that you did your homework.

The Ecstasy of Influence

"This key to the preceding essay names the source of every line I stole, warped, and cobbled together as I 'wrote' (except, alas, those sources I forgot along the way). First uses of a given author or speaker are highlighted in red. Nearly every sentence I culled I also revised, at least slightly — for necessities of space, in order to produce a more consistent tone, or simply because I felt like it."
--Jonathan Lethem
added on the 2015-07-07 13:33:28 by metoikos metoikos