Guys, Blender might NOT be FREE forever


#162

I think there are people thinking the same people who wrote blender will just write new code that does the same thing but isn’t GPL. Let’s count how many times in the past that has worked without a hitch. Truespace did a re-write and never made it to a final merged version. Then there was the whole thing with Lightwave Core. Did that ever even happen or did they go back to the original code-base at some point?

But I still don’t get why blender’s license seems to have such a bearing on its plug-ins. Why can’t they be put out under any license the author prefers?


#163

I know a few companies that managed a complete rewrite. So it is not impossible. But you don’t need to rewrite everything for a relicensing. Just the parts where you cannot get a permission (in case you even ask, and don’t consider the quiet voices as a yes like Blender did with the manual from OCL to CC0 and the relicensing from GPL2+ to GPL3 ). DivX was formerly open source for example. Now it’s closed source.

For the addons, that’s because GPL is a poisoneous license. Addons are considered as a derivate work since they uses the Blender API. And they don’t run by themselves, not standalone. They always requires Blender to run and execute the script. And so the GPL takes over here. Wordpress has the same problem with its plugins.

Addons does not need to be GPL explicitely, you can also use a GPL compatible license. Cycles is under Apache license for example. That’s how it made it to Cinema4D. GPL would not have worked. But it has to be a GPL compatible copyleft license. And one of the requirements for the Blender market is GPL code. So when you want to sell your addon at Blender Market, then you need to use GPL.


#164

This thread is going on for a MONTH and Blender… is still free. I bet the doomsayers, Blender will still be free by January 2020 when I will post again.


#165

No one ever said it would happen in days, weeks or months. I suspect there won’t be a question on the part of the Blender Foundation about changing the license of Blender for a couple of years myself.

It will likely happen once a handful of relationships with significant contributors goes south based on them wanting to force Blender down a certain developmental path at a crucial time when the BF is about to hire a bunch of new people and the BF, wanting to maintain autonomy in their development, will be forced to re-evaluate their licensing structure to be able to afford to do what it is they’ve been planning for the future at some point in the future.

A lot of these partnerships are new, they haven’t been tested, so it’s obviously going to take time. This is the kind of contentious group dynamic that develops very often between most software and tech companies all the time, if you think it won’t happen with Blender eventually you’re just being unrealistic.


#166

In some ways it has : the kernel has been very slow adopting several key security features (randomized memory layout springs to mind), out-of-the-box installation is still very poor in many distros, graphics driver UMD/KMD, audio in general is a mess, native video codecs & playback, Vulkan is a horrible hot mess, …

As pointed above though, Linux is not a good analogy: most of the work is coming from full-time expert devs, and this is mostly possible with the service monetization models that RedHat & others pioneered.


#167

Im not unrealistic, I dont see the point of worrying about the future, but instead using the tools I have right now, free or not. When said tools are unavailable I will complain about it ( example: Softimage)

165 posts of theorycraft that may or may not even happen is beyond pointless.


#168

Is there really no way that closed source plug-ins could be released commercially? What if the API were rewritten and released under Apache? I’d heard that GPL was infectious but didn’t realize the full extent of the problem.


#169

Any plug-in working with static or dynamic linking would be breaking the license. I would have to re-read the license, but i think the restrictions also cover shared memory. Running a separate process & communicate with an open port, might work, but it probably would be considered to be violating the spirit & hasn’t been tested in courts yet AFAIk.

They aren’t called ‘viral’ licenses for nothing…

AFAIK Wordpress plugins work around this by providing cloud-based services through subscriptions (ex. Woo e-commerce platform).

The other viable solution is to run the GPL code on a remote server (ex. GPL game running on Stadia)


#170

Relicensing the API would imho not work, since it directly touches and uses GPL code and is the GPL code. It is not to separate. You would need to relicense Blender for that.

There is rarely a way around GPL once it is in the chain. That’s why most professionals keeps their hands away from GPL code.


#171

That is not that “might” work, that’s one of the situations that actually work.

In the license they talk about “intimate communication” as the thing that makes the apps to be considered as a single app, and that means sharing memory, at least sharing complex data structures in memory, something specific from Blender to a closed source app.

Other solution is to use a “bridge” that is compatible with closed source, that part of the app, the bridge, must be open source and licensed under a compatible license that won’t be affected by the GPL, Apache or MIT, and that’s the part that can communicate with the GPL app, then that part must modify the data into something different that will be then communicated through memory to the closed source app, but it must not be the same data structure that was generated in the original app.

There are many ways to mix closed and GPL open source, devs must work a bit more but they also have to stop complaining because things are not as easy as with the Autodesk SDK, where the effort is put by the users by giving their privacy to Autodesk.

And I still read some questions about “what if… blender goes behind a paywall under some weird situation like a full rewrite…” well… have any of you, that fear this so much, wrote to Ton and asked him directly about this possibility and the envisioned future for Blender? and about what he meant with the business part and all those things?

I understand no one asks to any Autodesk responsible person because they simply won’t answer or will answer with the “we are a publicly traded company and we cannot speak about the future”, but you can write Ton whenever you want and ask all this. As I said before, please make the answer public :slight_smile:


#172

That’s where things get sticky : there is a legit use case (ex. a closed source client connecting to a GPL app running on a server ; ex. billions of sqlite web servers) and there is malicious circumvention, which can definitely be challenged in courts. I am not aware of a precedent, so maybe there is hope. Or maybe no one thought it was worth taking the risk yet.


#173

When you have to jump through a series of hoops to even know if you’re allowed to solve a problem in a software development cycle you should know it’s time to make some major foundational changes.


#174

Well, that is IF you are interested in a closed source ecosystem of plugins, which it has been already stated by Ton and the Blender Institute they are not, they prefer to avoid having closed source addons of any kind so… no, the don’t need to make any foundational changes because they are not interested in this, as clear as that :slight_smile:

No one said that the server has to be remote, a server is a server, and in any case, the solution I said it’s not a server based solution, but a compatible bridge solution that is perfectly compatible with the GPL because there is no intimate communication between the API (GPL) part with any closed source part, in fact is in communication with an open source part, and that part can communicate itself with any closed source part because it’s license is compatible in both ways, that’s it, as long as you don’t use the exact same data structures and you interchange and handle them inside the Apache/MIT bridge, there is nothing that breaks the GPL.

It’s not so hard and there are not so many hoops, in the Autodesk license/EULA case the users are the one that have to jump through hoops and accept clauses that in many cases they don’t even read.

Please can any of you tell me why “Radeon Pro Render” is perfectly compatible with GPL?


#175

Server, bridge or whatever : not the point. Point is : if you try to circumvent the license by engineering contorted schemes such as a localhost loop, you could still open yourself to a challenge.


#176

It is not circumventing the license, the license does not explicitly prohibit to use GPL software with closed source software.

The cases are clear, the license affects the software when they are considered to be ONE ONLY program, IF they are considered TWO separated programs then nothing happens, and this is not circumventing, it’s just making two separated programs, that’s it.

Socket communication is allowed and other ways are allowed, like using a file in the hard drive.

Server is a thing, bridge is a different thing, a file in the disk is a different thing, those are valid ways, not “tricky” ways, those are ways to respect the GPL and at the same time being able to use a closed source piece of software in conjunction with GPL.

And the question remains unanswered, please can any of you tell me why “Radeon Pro Render” is perfectly compatible with GPL?


#177

…yeah, I’m sure. CUDA, as an Open-ish set of code is in there since Cycles can use it sometimes in some configurations and the BF took the Nvidia money. While I understand that Nvidia doesn’t own all the various pieces of CUDA code the last time I checked CUDA was in a grey area not being open because they haven’t open sourced any of the actual CUDA code that they do own/ship with their drivers. They instead just open sourced the compiler which is indicative of them keeping all their proprietary code to themselves and giving cover to other CUDA developers while simultaneously making it all available via the compiler, through various other means I guess, to be used in open source software.

C’mon this kind of backdoor code blending is crazy convoluted, it makes no sense, wouldn’t be necessary if blender was a commercial application and people would get more consistent behavior from their software across blender versions.


#178

CUDA was in a grey area not being open

No grey area: the CUDA compiler has been open-sourced. AFAIK, it’s a branch of LLVM, which itself is open-source. What is obviously not open is the rest of the stack, because the run-time interfaces directly with the proprietary ISA & GPU architecture). AFAIK, there is nothing preventing AMD or Intel from implementing their own run-time API to execute the generated byte-code on their own ISA/architecture (AMD has chosen instead to build HIP, which translates CUDA to OpenCL)

A quick look at Cycles source code shows that the CUDA implementation is copyrighted by the Blender Foundation under Apache 2.0.

Btw: i also saw that Cycles supports OpenCL, so it will run on GCN 2 & 3/NAVI and x86.

backdoor code blending is crazy convoluted, it makes no sense, wouldn’t be necessary

There is no back-door code: all the kernels source are in the Cycles repository, same as the OpenCL kernels. The FOSS / non-profit situation of the BF is irrelevant to the consistency or stability of their apps.


#179

CUDA is not a gray area.
1: The GPL does not require that the compilers you use are under the GPL. You can use any tool that you want to create GPL licensed software, that includes closed source tools such as Intel’s ICC, Microsoft’s Visual Studio, Apple’s Xcode or Nvidia’s nvcc.
2. The GPL permits using “System Libraries”, such as Apple’s closed source OpenGL drivers or software that a user of a system can reasonably be expected to have installed - which would be hardware drivers.

In fact, on Linux you can build a fully CUDA enabled Blender without installing any software from Nvidia whatsoever.


#180

Redshift or Octane or any other CUDA based GPU renderer that’s closed sourced could be piped into Blender without the owners of the renderers contributing anything to Blender. The whole purpose of a the GPL is to encourage a shift towards more free software, but obviously in this industry if companies can so easily intermingle open and closed source software it will eventually erode away the general usefulness of the license.

To be clear I don’t and never have had a problem with free software, I just don’t believe all software should be free and it seems blender has outgrown the free software license. By Blender moving out the convoluted rules of free software it would spurn on the development of new free software similar to it which is a good thing.
To me I see blender going proprietary as potentially the positive mirror reflection of Adobe going subscription only IF Blender is offered as a perpetual product, at a fair price with flexible terms of payment.

Before Adobe went subscription virtually everyone that used the software for any period of time constantly lamented the utter lack of legitimate competition there was in that product space literally for YEARS. Once Adobe shifted to subscription they left a vacuum that is now slowly, but surely being filled with lots of software that’s quickly evolving and giving everyone more choices. The same thing would happen if Blender were to leave the free software sphere, which would spurn more free software to go proprietary in some years after that with the same kind of fair pricing I am saying Blender could adopt after having made a major contribution to the free software community. A lot of capable options, tool choices that suit more artist’s individual needs and fair pricing is what everyone wants in the end right?


#181

define ‘fair pricing’