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."
Can anyone explain what the consequences of it being released under Microsoft Public License are? Is it toxic to OSS ecosystem, or is it just GPL incompatible (and presumably part of the "extend" part of MS's attack on FOSS)?
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]
Yes, opensource. http://opensource.org/licenses/ms-pl/ See?
"an open source implementation of the Renderman subdivision surface technology, thus releasing the patents to the long standing Pixar 'secret sauce."
The Renderman Interface spec already contains how the subdivision surfaces are supposed to be described and computed, so we know how to do that. There are already other implementations. Moreover, publishing the source code does not "release patents" in any meaningful sense, not to mention the fact that patents are, by definition, public.
Ezekiel 23:20
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.
It may help if you know that it predates GPLv3, and so was incompatible with the GPL at the time it was created by Microsoft.
If you're going to accuse me of something, just say it. Don't be that karma-shielded AC who throws accusations around like playthings.
http://en.wikipedia.org/wiki/GPLv3#Libraries
Richard Stallman and the FSF specifically encourage library-writers to license under the GPL so that proprietary programs cannot use the libraries, in an effort to protect the free-software world by giving it more tools than the proprietary world.
Following this assertion by RMS and the FSF, Pixar's release of their surface rendering library under the GPL would be an immediate violation as their own proprietary rendering systems obviously utilize this library. Therefore, if they wished to release it as GPL, they would subsequently be forced to A) Stop using it outright, or B) GPL their own in-house software that links to it to avoid being in violation of the GPL.
No sir, YOUR massive misunderstanding of licensing requirements makes your "accusations" of me suspect.
Huh? They own the copyright. A copyright holder can never impose limitations on themselves that they don't wish to adhere to. If you read the license on installation, Microsoft gives no one the right to redistribute Windows. Do you think that includes themselves as well somehow?
Either you are willfully ignorant or stupid.
My faith in humanity is restored. No, wait....
Check out my sci-fi/humor trilogy at PatriotsBooks.
Sir, that is wrong. Since that would be a license they are releasing it for OTHERS. They, on the other hand, are the holders of the IP, therefore entitled to use it as they want under any conditions they wish. They also keep the right to re-release it under any other license they want, and hell, even grant others a license that allows any other set of liberties. Therefore, no, they could perfectly release it as GPL and still use it themselves.
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."
Well, this would be as good a time as any to point out that Maya is not the only game in town. There is Blender of course. And there is my as-yet-unannounced project based on a half edge meshing technology that is way superior to the creaky old infrastructure Maya relies on. There are already some great results in terms of high complexity meshes and excellent real time performance. So far it has been just me pushing on the code, but that should change pretty soon. Go here to find out about World Welder. Check out some demo images here, here and here. Those are all high triangle count, high complexity meshes rendering at smooth interactive frame rates on low end hardware. There are various algorithms in use. The 3D Freetype Unicode fonts are done with Root3 subdivision, arguably superior to Catmull Clark favored by the Maya crowd. Still lots of work to do to implement boundaries, creases, deformable heirarchy and the like, but the base it's built on is solid as a rock. And really compact as well, yes sometimes you can have it all. Anyway, I will be making a more official project announcement in due course but for now, a tarball is online here. I apologize in advance for the documentation quality, but not for the code quality. Please be kind to my server and don't browse all the images, it's just a cable modem with pathetic upload bandwidth. (By the way, sponsorship in the form of web hosting would be much appreciated.)
There remains much work to do, sigh, there always is. But this is already the skeleton of a nice 3D meshing workbench, and it is time to put some meat on the bones. Language is C++11, scripting is Lua, GUIs are GLX and QT, revision control is Mercurial, license is GPLv3. Anybody who wants to join the mailing list is more than welcome, developers and future users alike.
Have you got your LWN subscription yet?
This is not how copyright works. There is no rule that says that a creator cannot offer their product under many different license terms, nor requiring them to conform to the license terms they require of others. It remains their product to do with as they will until they transfer ownership of the copyright.
Help stamp out iliturcy.
Sorry, but that discussion is just about as uninformed as they get. License compatibility does not mean that you can strip off one person's license and copyright and substitute your own. Compatibility means that you can combine the two in a single piece of software. The way you do this is by including one piece of code, complete with license and copyright notice, and call functions in that piece of code from another piece of software with different licensing terms. In no case is code licensed under a different set of terms, except insofar as effectively the product as a whole is governed by the union of the restrictions.
What makes a license incompatible are clauses in one license that do not allow you to impose additional restrictions, coupled with terms in the other license that impose additional restrictions above and beyond what are allowed by the first license. Such a situation does not exist here, so the licenses are compaible.
If your definition of "compatible" requires being able to substitute the GPL's terms, then there's no such thing as a GPL-compatible license other than either a dual-licensed work, a work licensed under the same version of the GPL, or a work in the public domain (and because not all countries recognize the right of an author to place a work in the public domain, there's no such thing as a GPL-compatible license at all by that definition other than a dual-licensed work). Your definition is thus completely unreasonable and nonstandard.
Check out my sci-fi/humor trilogy at PatriotsBooks.
Why not? To my reading the MSPL is considerably freer than the GPL. It's also a quarter of a page long and written in plain language. It also doesn't seem to conflict with the GPL 3.
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.
You make a good point, but you're missing a better one. The only way Pixar would ever be required to release *ALL* of their source code, as a result of licensing this module under GPL, is if they were to distribute *ALL* of their binaries, as well. Since they aren't doing this, and they aren't going to do this, they don't have to release source for anything. Now, if GP were in any way correct, they would have to release source for any binaries they distribute that make use of this library, were it released under GPL. But, then, GP couldn't be much further off base, so it's a moot point.
APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
Don't worry, I'm sure there's a Service Pack on its way to deal with this legal bug ;).
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
Beware of Greeks bearing gifts.
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
Can you people stop pissing and moaning and hairsplitting about license terms and allow some discussion of what this tech means for the medium-term future?
A few questions I'd certainly love to get answered from someone who's knowledgeable:
-Is this the REYES algorythm?
-Does it differ in important ways from the Catmull-Clark subdivision that's pretty much standard in off-the-shelf 3D software?
-With the increasing prevalence of raytraced GPU/coprocessor rendering replacing rasterisation in near-realtime applications, is this tech now mostly irrelevant?
-What are some things the release of this technology might make possible?
-Does this have any impact on the patent encumbrance surrounding Renderman's nearly-free motion blur?
-How much longer were those REYES patents going to last anyway?
There are currently 12 comments at +5 and only one talks about the software--the other 11 are about the license. Dropping down to +3 doesn't help any.
Can anyone else here weigh in on the technology itself?
Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
Uh... there's no such thing as a license that doesn't require you to distribute the code under that license, and requiring someone to include a complete copy of the license is also pretty much the norm. By your definition, all non-GPL licenses are incompatible with the GPL. Sorry, but licenses don't work that way. GPL-compatible does not mean that you can simply copy and paste code willy-nilly into a GPL project.
Check out my sci-fi/humor trilogy at PatriotsBooks.
Isn't that Blender's problem, then? Why didn't blender make it MSPL so it could be used?
GPL-compatible does not mean that you can simply copy and paste code willy-nilly into a GPL project.
Most BSD style licenses are unencumbered enough that you can relicense direct derivatives (not just composite works) under practically any terms you want. Commercial companies do this all the time, and it is in fact what makes BSD style licensing for open source software projects so controversial - anyone can create a proprietary fork at will, with components that quickly lose their BSD character as modifications are added.
GPL licensed derivatives of BSD licensed components can be created in the same manner. It is the copyright of the authors of the modifications that makes the relicensing have teeth, it is the lack of a prohibition on additional license terms in BSD style licenses that makes it possible.
The MS-PL, on the other hand, specifically prohibits this practice, much like the Mozilla Public License (MPL). Both are moderate copyleft licenses, designed to make sure that derivatives of covered source files are always available under the terms of the original license.