GPL & Blender Adoption in Games Industry

If Valve are going to sink their own developer effort dollars into a modeller because they aren’t getting traction from Blender, it doesn’t make a huge amount of sense taking the GPL option when they don’t have to. As has cropped up in many conversations now, the GPL license applied to Blender makes it difficult (& in some cases, impossible) to create addons linking to proprietary libraries. Given the nature of their business & the software they deal with, being able to link to anything they want without worrying about whether what they’re doing will be compliant with the GPL and seen as such by the FSF (not always the same thing, see initial TiVo communications from them) is a BIG plus.

Frankly, there are two realistic options here. Blender cooperates with Valve enough that the hassle of jumping through GPL hoops is worth it or Valve continues to put their developer resources (money, engineers, and knowledge) toward a solution outside the GPL issues. Not expressing a preference or ultimatum here, just laying down what I see as the practical options on the table. If Valve is putting developers on the table, why fork something that has third-party licensing issues, a counter intuitive interface, and wear the community outrage of going against the Blender vision? If they need to be sticking multiple developers on the job anyway, it makes a lot more sense to create something that doesn’t have those issues whilst still being able to take inspiration from Blender if/when they need to.

Looking at the idea of a new Valve modeler or simply put, modeling functionality in their game engine. I would guess that it would be a natural outgrowth of the suite of level building tools that they have had for a long time (even before they decided to donate to Blender).

Also, interesting that the GPL rears its head again, I wonder what Ton would think of the GPL now if it means the death of his dream to get Blender into multitudes of film and game development pipelines. Sorry Ton, but the FSF philosophy perhaps doesn’t want you to succeed afterall.

The GPL issue is unfixable.

To change e.g. to BSD, Blender foundation would have to contact everybody whose work has ever gotten into trunk and ask for a waiver for the license change. For everybody who cannot be contacted/denies waiver, his work has to be removed from Blender and substitued with a different implementation.

The GPL is a one way road, once on it, forever on it, till hell and beyond. You have to admit that Stallman did his homework, didn’t he?

Does this mean that Blender will always be lacking in departments like plugins? yes, it will. Forever. Free isn’t free and, in the Real World™, freedom rhymes with loneliness.

I’m not so sure if it’s as impossible as it seems.

You get Ton, Campbell, Lukas, Dfelinto, DingTo, Sergey, Anthony, Nicholas, and Brecht to sign on and you already have covered a rather good chunk of the code in Blender. Likewise, get Moguri, Erwin, and a handful of other people to sign on and you have a rather good chunk of the game engine.

You also have to take into account that a lot of code submitted by others in the deep past (those who are most likely hard to contact) may have been deprecated, replaced, or outright removed. Also, the code of other contributors like that for the Texture Node trees pretty much need a rewrite or an overhaul anyway, there would be no code of theirs’ then to remove because there’s no code to remove.

Anyway, I think the question on whether the GPL is worth continuing on is something that Ton will need to answer eventually because Blender otherwise will be forced to completely miss out on the new generation of plugins where the results and visuals of third party apps. are right in the viewport of the 3D application (the only exception is if it’s other free software like Luxrender, but the majority of the crews working on FOSS render and game engines seem to have a relative inability to make any sort of progress in marketshare growth). Perhaps the world and FOSS would indeed be better off if the FSF is made to close their doors forever then.

Blender 3D license will never ever change from GPL , the license was chosen when Ton crowdsourced the 200.000 euro to buy Blender 3D code from the NaN.

Literally to change Blender 3D license you must give back the money to people that invested in Blender 3D to be made GPL. PUBLIC DOMAIN FOREVER AND EVER.

Got it guys ?

Valve sells Source engine , if Blender 3D was MIT license *will never ever be , it means developers work will be trashed next day , Valve would make profit on Blender 3D without obligation to give back anything.

In the past there was a commercial license in same time with GPL but the community over time made it to be GPL only forever.

Other fact it is that lots of part of Blender 3D are GPL libraries … that means literally with all the developer signed on paper the license still will be GPL due the libraries that are forever GPL

GPL libraries in Blender 3D , examples : Carve (boolean modifier) , Mantaflow (gsoc 2014) … in many ways Blender 3D will be dead arrival with lots of the libraries that will need to be striped and you end with 90% of Blender 3D features trashed to dust bin.

Add to it the Pixar SUB-D library coming in that it is Microsoft Open License … that it is compatible with GPL 3 … and you guys figure how you will animate in Blender 3D with framerate of 30 fps like Pixar inhouse product.

I have used Blender 3D from version 1.x SHAREWARE , I have seen all the features coming in and cut out .

Here you can download the older Blender 3D the 1.6 … and see how it was.

I can literally say it is like part of my life and it is the same for the developers.

Hammer it is in source engine from the Source Engine Alpha … it is based on the Quake 1 editor , source engine it is Quake 1 GL version striped and licensed from Carmak

I stop here , I don`t want to write whole history of computer graphics. :evilgrin:

I`d rather see people use Blender 3D at fullest with the features that are in now , and stop argue about licenses and new features when they are : a) not lawyers b) not developers.

This forum becomes a sad place day by day.

When you buy a car you don`t argue to manufacturer that the engine will break in 10 years … Yet you argue on Blender 3D that it is FREE.

It’s possible to make the effort end with Blender still being GPL, you would just have exceptions and/or re-licensing for areas where it’s needed to increase the commercial friendliness of Blender.

Also, Bullet is licensed under the MIT license, not the GPL. Likewise OpenSubDiv is actually under the Apache2 license, something celebrated by Ton because the Microsoft Public License it originally was under is actually incompatible with the GPL. I’m not sure what Mantaflow is licensed under, but it’s false to say that most to all open source libraries are GPL or require the host application to be GPL.

Mantaflow it is GPL see ?

Why argue about VALVE when EPIC MEGAGAMES (Epic Games … Jazz jackrabbit anyone?) that it is the backbone of GAMING it is investing in Blender 3D ? Paying developers directly ?

Read here loud

Source Engine compared to Epic Engine … it is like comparing a broken car with a Lamborghini or Tesla Motors (Unreal Tournament).

Unreal Engine editor it is easy to use from version 1 …Hammer ? It is like hammer on your head!

And to add to Valve part …

There was export scripts for Valve Source Engine for years without Valve not supporting anyone until last year ?

The problem with these re-occurring debates is there are valid points on both sides of the fence, and we can’t disprove that Blender wouldn’t become wildly successful if only it used a different license.

Really if the GPL is so harmful, there are enough smart people in the games industry who could make their own Apache/BSD/MIT licensed 3D application… only needs to be a few people over ~2-3 years to get something useful up and running (start out with basic modeling, work up to greater things…).

If there is a need for such a project in the industry, surely this would be peanuts for a large company to fund.

Why didn’t this happen already?

I doubt Source Engine will become GPL or Unreal Engine that was 50.000 euro license ?! (if I remember right)

Yet they have programmers that can develop features for Blender 3D if …the gaming houses wanted to do that.

Blender is actually good enough in my mind that I would pay 500 USD for a license and access to nightly builds from the buildbot.

Very unlikely though, as even the idea of licensees having the ability to also develop patches like with the UE4 engine is directly against the vision of the BF (which is to have Blender as free and open source). Plus there’s the high probability that someone would fork off a new FOSS variant from the last commit before that happened.

Like Libreoffice happened to become alive.

I think one way to frame the question is this…

If, in hindsight, Ton knew everything that was going to happen to Blender and the industry (including the difficulties in having proper support for common engines such as Vray) when he was working to raise money to open up the code, would he have still pushed to have the newly opened code licensed under the GPL or would he have had additional exceptions put in and/or have other areas licensed under a more permissive scheme?

Where one goes from here depends on what he says about this, because most likely, he would be the one who would have to give the go ahead for such a re-licensing (or license editing) effort.

Autodesk aggressively marketed until Blender 3D NaN collapsed … that was the reason of GPL . There was a massive ads flowing with 3DS Max in that era … on recent example it is the Softimage XSI that got eaten by the big shark you know … and Maya … I guess Cinema 4D and Houdini escaped the shark bite.

The worst thing about this is that my post which heads up the new thread was not intended to be arguing about the good & bad of GPL. That subject really has been done to death and there really isn’t much to add to it. The GPL is what it is, has a given set of limitations, and outside the utopian dreaming (delusions?) of some folks - the proprietary world isn’t going to adopt it when it doesn’t have to nor will it topple them.

However, if my post is going to be used for the subject, I might as well give my opinion on the subject (again).

Firstly, those calling for a relicense of Blender are, I’m sorry, clearly not developers with a working knowledge of the GPL &/or the code contributions in Blender. Yes, a vast majority of the code written for Blender is copyrighted by a small handful of people. However, in addition to that, there is a large number of people who have contributed to Blender over the years in smaller ways and tracking all of them down is a LARGE task. This, of course, ignores the GPL libraries Blender uses and the (very good) point raised by Numarul7 in regards to how the $100K was raised to get the source code in the first place.

Secondly, I don’t really see any will to change the licensing from the major contributors. The core developers that I’ve managed to talk to or have heard/read them when they’ve talked about the subject to others are fond of the GPL and don’t see enough reason to change it. So long as one of them doesn’t want the license changed, it remains GPL until all their code is replaced. Without the will to change it, the level of work required is just never going to be justified by them.

Finally, and this one bugs me to the limit, people need to stop pretending that there can be “exceptions” to the GPL applied by the Blender Foundation with any less effort than relicensing it completely. An “exception” to the GPL has the exact same copyright ownership/waiver problems as making Blender closed-source. There really isn’t a legal difference in copyright requirements between changing the license to “GPL with an exception” or changing it to “Something completely different to GPL”. Both have the very same requirements on assignment of copyright to the Blender Foundation.

With that said, there are ways that Blender could allow non-GPL plugins/add-ons if there was truly the will to do so. There are limitations on how they would be distributed (i.e. one couldn’t package the add-on/plugin libraries with Blender, but separately would be fine) and the interface wouldn’t be as efficient or elegant as it could be if Blender weren’t licensed under the GPL, but it IS possible. Of course, being possible and being worthwhile are two very different things. Especially at this chicken & egg stage of Blender Foundation not seeing enough benefit in the idea due to a lack of third-party developers and third-party developers not seeing enough benefit in Blender because of the GPL’s effects on making their efforts profitable.

@Numarul7, don’t think Autodesk has anything directly todo with NaN’s collapse, and seems a real stretch to contemplate that it might have.

@BTolputt, you pretty much got this covered, BUT, there is one place I think we may be able to have GPL exceptions, however we would need some legal advice about it.

That is - if we provide an API which only allows calls into areas of the code we own the copyright to, then we may be able to provide GPL exceptions in that case.

This could work for Python at least, since there is the notion of code-as-data, which is how a GPL web browser can run javascript which may have an incompatible license.

I wish I could be more definitive in this case, but I’ll need to talk with others who know these details better, since this is a hypothetical at the moment, I didnt spend much effort to get advice on the matter.

Hmmm, I can see a minor problem with that already. That code of yours uses (& hence, according to the FSF at least, is derived from) the greater body of GPL work that is Blender. Just as using a GPL library requires making the code GPL (lacking explicit exception from copyright holder), if any of your code that you’re opening up uses GPL code - it falls under the same requirements. However, it is not an approach I’ve ever explicitly put before a lawyer with expertise in the field so I’d love to hear the advice you get on the concept.

As I understand it, the “code as data” concept really only applies so long as it is not using API’s into GPL or those API’s are not specific to the GPL work. For example, a closed-source Java application can run on a GPL JVM so long as it is using the generic Java API’s… but as soon as it uses a function specific to that GPL JVM then it is considered a derivative (by the FSF at least) and must be distributed in a GPL compliant fashion. The key is in whether or not the interface is specific to the GPL work (making code using it “derivative”) or whether the interface is a generic specification that has been / can be implemented by non-GPL works.

Still, whatever you find out on the matter, I’d be happy to hear about :slight_smile:

That is - if we provide an API which only allows calls into areas of the code we own the copyright to, then we may be able to provide GPL exceptions in that case.

Is this a theoretical debate, or is somebody investing here?

This is the first time I write something in a licence related thread. This is because I am not a developer, I do not have knowledge about licences. I am just an artist, I love blender which is one of the main reason why today I can work as a 3d graphic.

By the way I would just like to say my point of view. I think blender is an awesome package. At work I use maya, and I believe blender is just as good as maya is many fields. One thing I think blender is really missing is support for third parties apps, plugins and so on and so forth. I know this has probably been said until the nausea, but this is what really makes the difference when you go in a studio a need to get things done, using a pipeline which involves the usage of different software.

I know blender already have practically everything you need, but the reality is that this is not the way it works in the real world.

And when it comes to blender integration of these 3rd party plugins and apps I often read “we are working on it, but is not so easy”. I mean, I can see the will of doing the effort from a lot of these software houses, but in the end we get beta stuff, incomplete stuff, different builds.

In the end, I think would be nice, if there is any way, to make the work of these software houses easier to integrate their stuff in blender. I think this would really help mainly blender. I don’t know how, I don’t know if this is possible, I just expressed my opinion as a long time blender user which would really like to see blender to gets even better, and overall more widely used.

For me it became very clear that Ton wants the GPL to be followed by the letter when he told that dev that did the FBX-SDK based FBX-addon over twitter that he cannot do that even he released all sources.
Ton could say, yes blender is GPL, but we don’t care what addons do. As long as blender does not officially distribute such addons there is no problem for blender. But Ton made it clear that he does not think like that.

So many hours of development time are used to recreate FBX support, but the FBX-SDK-addon could be updated to new FBX versions with zero work, while the blender custom reverse-engineered one will not be easy to update when the FBX format changes. Hell, that is why all the people use SDKs for such things.

@fbar, first of all Autodesk’s SDK explicitly disallows this direct integration with GPL software (read the Eula)
So even if Ton/Blender-Devs says its OK, it wouldn’t really help.

Secondly, just because direct integration isn’t allowed - doesn’t mean we cant integrate at all, its possible (albeit teduious) to use some Apache licensed intermediate software that lets Blender use the SDK.

Updating for new versions of the API isn’t zero work, the API changes and deprecates features over time, but point taken - it would be less work.

@BTolputt, good points but still unsure, this is where my knowledge ends…

@Tiles, just pointing out an area we can investigate further.