Slashdot Mirror


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."

5 of 140 comments (clear)

  1. Re:Opensource and MPL? by Anonymous Coward · · Score: 2, Interesting

    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)?

  2. As good a time as any by Daniel+Phillips · · Score: 4, Interesting

    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?
    1. Re:As good a time as any by jedidiah · · Score: 2, Interesting

      You've got things backwards. It's the MSPL is engineered to be a poison pill. The GPL is much older and much more well established.

      It's anything newer that's going out of it's way to be hostile to the GPL or copyleft generally.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    2. Re:As good a time as any by poly_pusher · · Score: 5, Interesting

      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.

  3. Re:Opensource and MPL? by ceoyoyo · · Score: 4, Interesting

    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.