Pixar Demos Newly Open-Sourced OpenSubdiv Graphics Tech
An anonymous reader writes "Last week at SIGGRAPH, Pixar Animation Studios announced OpenSubdiv, an open source implementation of the Renderman subdivision surface technology, thus releasing the patents to the long standing Pixar 'secret sauce.' In addition to the offline subdivision scheme, it also includes a GPU implementation. This video demonstrates a realtime deforming subdivision surface running at 50 FPS in Maya (though it is freely available to use anywhere). The source code is available on Pixar's GitHub account."
Says the project's site: "OpenSubdiv is covered by the Microsoft Public License, and is free to use for commercial or non-commercial use. This is the same code that Pixar uses internally for animated film production."
Apparently they open sourced it over Steve Job's dead body.
It's a pretty reasonable open source license, actually. It is basically a BSD license, plus a patent grant, plus a mutually assured destruction clause regarding patent suits. I'm most impressed by the fact that it is about three fewer pages than the average open source license seems to be these days. A normal person might actually be able to comprehend it. :-)
Check out my sci-fi/humor trilogy at PatriotsBooks.
...And this type of reaction is why more companies aren't exactly tripping over themselves to open their code.
It's free for non-commercial AND commercial use. What the fuck else do you want? Are you really that offended that their open-source rendering library has the word "Microsoft" even tangentially related to it? Do you really think they would publish it under GPLv3, which could potentially force them to open their entire codebase?
Don't look a gift horse in the mouth.
According to wikipedia:
This is the least restrictive of the Microsoft licenses and allows for distribution of compiled code for either commercial or non-commercial purposes under any license that complies with the Ms-PL. Redistribution of the source code itself is permitted only under the Ms-PL.[12] Initially titled Microsoft Permissive License, it was renamed to Microsoft Public License while being reviewed for approval by the Open Source Initiative (OSI). The license was approved on October 12, 2007 along with the Ms-RL.[11] According to the Free Software Foundation, it is a free software license but not compatible with the GNU GPL.[6]
Wikipedia is wrong. From opensourcelegal.org, it is compatible with the GPL, but only with GPLv3. GPLv2 is incompatible with patent retaliation clauses. GPLv3 is not.
Incidentally, GPLv2 without an "and later" clause is also incompatible with GPLv3 for the same reason.
Check out my sci-fi/humor trilogy at PatriotsBooks.
Our intent is to encourage high performance accurate subdiv drawing by giving away the "good stuff".
I want to be wrong about this. I really do. But I read this as "our intent is to establish a tie to our proprietary products Renderman and Maya via a license carefully designed by Microsoft to be incompatible with GPL, and thus Blender."
You'll be happy to know then that you're likely at least partially wrong.
First: http://www.blender.org/BL/ -- from this, you may conclude that their intent is to force Blender to activate the Blender License.
Second: Blender is licensed under "GNU General Public License v2 or later" -- and that "or later" bit is key here, as the MS-PL is compatible with GPLv3, just not with GPLv2. The end result of this is that the code is compatible with any GPLv3 code *and* any GPLv2 code with the "or later" clause that is used with Blender libraries and derivatives. It should also be compatible with the LGPL.
Being a 3D artist this does interest me. I use Modo, Maya, Zbrush, and Mudbox frequently and subd standard is very useful. Does your intended implementation share subdivision order Pixar's spec? Does UV smoothing result in identical UV borders? Currently this is a pretty big problem with multi-app workflows. For instance, a multiresolution mesh that has been smoothed in Zbrush results in different smoothing than a mesh that is smoothed with Pixar Psub subdivision surfaces in Modo. Even more confusing is that this difference also appears when comparing Mudbox to Modo. They both use the Catmull Clark subdivision standard however do not share identical UV smoothing. This can be overcome with linear UV's but that in itself causes problems for 2d texture painting. They do however seem to share point order from tests that I've done. Open-source subdivision technology originating from Pixar sounds like a wonderful thing that could alleviate some of the problems I mentioned. After all it's coming from the source of subdivision technology. Catmull Clark subdivision was created by Ed Catmull of Pixar and Jim Clark, co-founder of Silicon Graphics. Many of the custom implementations of subdivison surfaces I have seen cause a lot of problems on exchange. Modo's custom implementation of subd's prior to incorporation of Pixar Psub was pretty slick actually. It was fast, allowed for N-gons and supported some very dirty edge creasing. So it had big drawbacks when exchanging with other apps like Maya before they added Psub's. I guess my point in mentioning all this is that I hope what you are working on is capable of accommodating these kinds of needs, otherwise I and many other artists may not be able to use it due to workflow additions. Although it's very cool and I'd love to hear more about what you are doing.
Boo hoo. All the criticisms apply equally or more to the GPL. The license seems to be about halfway between the BSD license and the LGPL. You COULD make a library out of the MSPL code and link to it from GPLed code. Unless something in the GPL forbids that.
It's pretty hypocritical to criticize a license for requiring that redistribution of the source of that code or derivatives must be under the same license and then turn around and recommend everyone use the GPL instead.
Let me explain the license in simple slashdot terms:
1. The license was penned by Microsoft, therefore it is evil.
2. Pixar is releasing the code. Pixar was financed by Steve Jobs into a multi-billion dollar corporation. Corporations and Steve Jobs are evil, therefore the only logical thing to conclude about Pixar's intentions is that they are evil.
3. The license is not GPL, or some similar Google license, so it is patent encumbered. Patents are evil, so the code is evil.
4. Any open source code should be GPLv3 because RMS says so, therefore the everything about this code dump is designed to embrace, extend, and extinguish s some already existing but half done FOSS alternative. That is evil.
How could this code and its license be any more evil? I've just proved to you that this whole thing is like the spawn of Satan––or Blizzard entertainment, 'cause they can't fix Diablo III.
Discuss below.