Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Graphics Software GNU is Not Unix

SIGGraph and Open Source 193

SeanCier writes "The SIGGraph 2004 conference showed off a lot of trends: high-dynamic-range (HDR) displays and video, suddenly ubiquitous general-purpose GPU programmability (it's not just for polygon shading anymore), 3D and high-colour displays, ever-more-refined fluid dynamics, crowd animation, and point-based graphics, to name just a few. But there was an unspoken undercurrent, a trend that's waiting to happen in the visual effects community, and happen in a big way: Open Source." Read on for more.

There are plenty of examples of open source and the graphics community getting along grandly: Gimp and CinePaint (aka FilmGimp), ILM's OpenEXR, and projects like Open Scene Graph. Linux, in particular, has made spectacular inroads: nearly everybody uses it for rendering, and many (most?) use it as their desktop OS of choice. In the RenderMan user's group (I'll get into RenderMan more in a minute), for example, somebody asked how many people used Linux as their main OS. Plenty of hands, and some approving chuckles all around. Mac OS X? A few hands, and woots. Windows? No hands at all -- and moreover, an handful of boos, followed by everybody cracking up as they realized the whole community was abandoning Microsoft wholesale.

But then there's the other side. All the major visual effects and animation studios -- ILM, Pixar, Dreamworks, Digital Domain, Blue Sky, Disney, and so on -- have a team of programmers in-house. Five, ten, two dozen, or more. They're the ones that'll write the software that does special rendering algorithms for Shrek 2, or an animation control system for Mr. Incredible, or produce massive crowd simulators for Lord of the Rings. Things that commercial software doesn't quite do -- or that nobody else has tried to do, or even thought of. Things they need to do just so. Things they need to do now.

Everybody has a ton of custom software written -- often good software, with flexible frameworks and clever hacks. Moreover, they don't want to rely any more than necessary on commercial software, because if ILM finds a bug in Maya that holds them up or slows them down, they best they can do is pay Alias to fix it fast (i.e. weeks) and then have hundreds of animators waste thousands of hours time working around it for weeks. And worse, if Digital Domain buys Alias and decides they'll keep new versions of Maya to themselves, ILM is simply screwed, in a big way. If they want to get a particular feature in Maya, and a plugin won't cut it? Well, that's even harder -- and involves more money and more time.

So ILM writes their own stuff whenever they have to, and whenever they can. And Digital Domain writes their own stuff. And Dreamworks writes their own stuff. And Disney writes their own stuff.

And most of it is all the same stuff. Fluid dynamics? Hair? Subsurface scattering? Muscle-and-skin systems? Crowd control? Dozens of topics -- and every studio pretty much has pretty similar, rather redundant code to do 'em all.

These studios aren't in the business of writing software, they're in the business of making movies. So why are they spending their time and money writing software? Because they have to; it's a Necessary Evil.

So, what if they all worked on Open Source stuff instead? Look at what I just wrote. Every word is a reason to go Open Source. No drawbacks, all upside: no lock-in, you can fix stuff, you can add stuff, you don't have to wait on anybody else, and plus, you can do all this while also using what others have written.

The knee-jerk reaction that may be some executives' first objection: our code is a strategic advantage, giving it away would be throwing away money. If we can do hair and our competitors can't, we'll make better films then they can (and, if it's a visual effects studio, we'll win contracts based on that unique ability).

Bull honkus. If your competitors need hair, they'll write hair software, no problem. Another quote from the Pixar RenderMan user's group, this one by a RenderMan developer (paraphrased): "this is based on the subsurface scattering papers from a couple years ago. Everybody does this, based on those papers." Nope, I don't see strategic advantage there: I see waste.

It is, as they say, a win-win scenario; the studios contribute their code to Open Source projects, and everybody helps make that code better. ILM started it in a small way, with OpenEXR, and it worked: OpenEXR is *the* format for high-dynamic-range images, no questions asked. Did it benefit ILM? You betcha: major packages everywhere (Photoshop, RenderMan, etc) either import/export OpenEXR now, or will soon. Pixar even contributed new compression code.

So, a great scenario, and proof that it works. Why hasn't it happened in a bigger way yet? Fear of the unknown. But listen close, and you'll hear a flood coming that could change the landscape -- and it's hard to divert a flood.

That leaves only one question: how will it start? Well, it could begin with open source projects becoming valuable to studios, as started happening with Gimp (though here I'm talking more about advanced 3D animation, simulation, and rendering; Blender's great for what it does, but medium-to-large studios aren't its intended audience; it's not going to displace Maya any time soon, because it doesn't offer anything that Maya lacks as far as the studios are concerned). Or it could start with a studio making a bunch of their custom in-house software Open Source (like ILM did with OpenEXR). Either way, it's up to us as a community -- either to write the software or to sell the concept.

I'd suggest that a great place for all this to start would be with Pixar's PRMan (PhotoRealistic RenderMan, these days often called just RenderMan). And note I say this as a shareholder. Selling RenderMan and related software accounts for less than 5% of Pixar's revenue; the real reason -- the *only* business reason -- they still develop it is for the other 95% of the company to use. If open-sourcing it would bring in collaboration and improvements that would make them just 5% more efficient in generating movie revenue, doesn't that justify the decision right there? And of course that's not counting those who would still pay for service contracts, or the reduction in development costs that could come from the rest of the community helping with their R&D (the budget for which, BTW, surpasses their software revenue). RenderMan has always been a product ahead of its time, and that's why -- despite Pixar's belligerent and hostile use of patents and close-held IP -- it's still the golden standard in this industry. The RenderMan protocol and API was intended fifteen years ago to be a renderer-independent standard, the PostScript of the 3D world. That dream died because of Pixar's unwillingness to release IP: it became difficult or impossible for others to implement that standard officially, or at all, because Pixar grasped the it so tightly (case in point, ExLuna: their lawyers summarily killed what was the best chance in years of having a RenderMan-compliant renderer with new and different functionality, complementary to PRMan). But the renderer -- PRMan -- doesn't have to die through the same mistake, even in the face of an ever-shrinking market share and competitors with the advanced global illumination algorithms PRMan lacks.

But that's not to say Pixar is the only -- or even the best or most likely -- option here. They most certainly don't hold all the cards. So, don't sit back and wait for Pixar or another studio to start the ball rolling: we need to give it a push.

This discussion has been archived. No new comments can be posted.

SIGGraph and Open Source

Comments Filter:
  • by Simon South ( 8535 ) on Sunday August 22, 2004 @05:12PM (#10039431) Homepage
    It's great to see movie houses coming to the realization that sharing development tasks helps everyone; I hope people in other industries come to this realization too.

    I've worked at several companies now where I saw a tremendous amount of effort invested in developing custom, proprietary solutions to relatively common problems outside the company's primary business domain. (In some cases, this meant duplicating the exact functionality of existing free software.) Since ten programmers can't outdo a thousand, inevitably the result was buggy, half-baked work that the rest of us employees had to limp along with, or find workarounds for.

    Keep the software that drives your core business proprietary, if you like; but why not co-operate on all the non-core stuff that merely keeps the business going? It just makes sense.
  • by Anonymous Coward on Sunday August 22, 2004 @05:13PM (#10039433)
    doesn't seem a sensible proposition to me. i'm sure open source has it's place, but this seems over the top.
  • by Anonymous Coward on Sunday August 22, 2004 @05:18PM (#10039456)
    This one guy who wrote the article is speculating that Open Source will be big in the film industry. No big movie houses. Not Pixar. Just this guy SeanCier. Who the hell is he?

    This is just an opinion piece, not news.
  • by green pizza ( 159161 ) on Sunday August 22, 2004 @05:38PM (#10039542) Homepage
    Microsoft isn't going to drop out of the VFX world without a fight. They had a huge booth at SIGGRAPH this year, lots of vapor and FUD.
    http://www.microsoft.com/presspass/press/2004/aug0 4/08-09SIGGRAPH2004PR.asp [microsoft.com]

    They even hired SGI founder and uber hardware/software enigneer Kurt Akeley!
  • by GeorgeMcBay ( 106610 ) on Sunday August 22, 2004 @05:40PM (#10039549)
    Pixar has made a pretty good amount of money off the sale of Renderman. Why give up that revenue stream?

    Then we get into the issue of patents. A lot of code these companies produce includes patented algorithms which would disqualify the code from even being released under a lot of Open Source licenses to begin with, not to mention the fact that the companies don't want anyone else using these algorithms anyway...

    I wouldn't hold my breath waiting for big OSS projects to come out of any of these studios...

  • by Anonymous Coward on Sunday August 22, 2004 @05:47PM (#10039579)
    I notice that the NVIDIA 6800 has 220 million transistors. If they added a few million more transistors or sacrificed a few pipes for a RISC processor, the chip could do all the computation for the system

    You're not the first to mention that fact. Let's just say that there are people doing more than talking about it.

  • by shadowmatter ( 734276 ) on Sunday August 22, 2004 @05:53PM (#10039599)
    They had a huge booth at SIGGRAPH this year, lots of vapor and FUD.

    From the link you provide:
    This week at SIGGRAPH 2004, the world's leading computer graphics conference, computer scientists from Microsoft Research's Beijing, Cambridge, U.K. and Redmond, Wash., labs will present the results of 12 research papers, nine of which were done in partnership with universities around the world.

    Look, I know it's cool to bash Microsoft and call them "M$" and whatnot, but not just any paper can get accepted to SIGGRAPH. It has to have some merit -- they have very high standards. No papers fly into the SIGGRAPH/SIGCOMM preceedings based on vapor and FUD alone.

    Furthermore, Microsoft (in particular, MS Research in Beijing) has been doing some excellent work in graphics technology, and the academic institutions that usually make up the bulk of the research presented aren't afraid to admit it:

    "MS Research is by far the biggest contributor to graphics in the corporate world. It's a powerhouse" - Paul Debevec, USC Institute for Creative Technologies
    "They're really doing first class research." - Victor Zue, MIT CSAIL

    Technology Review Magazine has a good look at the advancements of the MS Beijing lab in its June 2004 issue.

    Look, I'm no fan of MS either, but please... In the case where they actually do innovate, do research, give credit where credit is due? Double standards help nobody.

    - sm
  • by SpootFinallyRegister ( 787720 ) on Sunday August 22, 2004 @05:53PM (#10039600)
    yes, writing the same thing over and over again is silly.

    then again, when everything only has to be written once, its a lot harder to find someone to pay you to write anything. this is unfortunate for those of us who have no problem producing free software, but have slightly less enlightened landlords, loan officers, and grocers.

  • Re:Thanks guys (Score:3, Insightful)

    by Antique Geekmeister ( 740220 ) on Sunday August 22, 2004 @06:08PM (#10039658)
    Ahh, yes, open source FUD number 37. "You'll put people out of work".

    In this field there's plenty of work to go around: sharing the basic work keeps legal make-work and the theft of intellectual property down, and lets all the authors actually benefit from it in being able to produce superiour products, and sell them, on a continuing basis rather than trying to arrange a corporate patent revenue that is unlikely to trickle down to the actual authors.

    It's possible to make money creating entirely closed source software, but it's like a lottery ticket: a few big winners do OK, and the rest of the developers waste their time and effort and often their money.
  • Re:Thanks guys (Score:3, Insightful)

    by KjetilK ( 186133 ) <kjetil AT kjernsmo DOT net> on Sunday August 22, 2004 @06:10PM (#10039665) Homepage Journal
    Uhm, how about those programmers can move on to more interesting things rather than duplicating other people's work? Sounds a whole lot more motivating to me...
  • Re:Roll your own (Score:5, Insightful)

    by Thagg ( 9904 ) <thadbeier@gmail.com> on Sunday August 22, 2004 @06:14PM (#10039678) Journal
    Well, mostly right. Larry Gritz did write BMRT, the Blue Moon Rendering Tools, and he did go to Pixar and was one of the leading people on the RenderMan team for quite a few years.

    He left to form ExLuna, and ExLuna was then bought by Nvidia. At Nvidia, Gritz and the rest of his team are behind the new Gelato hardware-assisted high-quality rendering product. It's pretty cool. [pun reluctantly admitted to]

    It's all a very long and interesting story, that unfortunately will not fit within the margin here.

    Thad Beier
  • Thanks, I think you just finished the point I was trying to make. I guess I should've said shared-source, but I was drawing a blank for the right terminology there.

    What I was trying to imply is that if companies can make the code available to their customers, it becomes much easier to integrate their products into the existing software environment. For something simple like a word processor, this wouldn't make much sense; it already stands alone. But for such a complex environment like a computer graphics production pipeline, with software from different manufacturers and (sometimes) running on different platforms all needing to work seamlessly together, eventually you're going to run into an integration problem. And in all likelyhood, the company producing the software package in question hasn't had the time nor the resources to test your exact configuration.

    So in this scenario, if you don't have the source, you're left at the whim of the manufacturer to fix the problems. Maybe they will, maybe they won't. But if your software license (that you bought and paid for, just like any other software - I'm not advocating giving this stuff away for free) includes the ability to easily get the source and make your own modifications to it, then you both win. The company gets their money and you can fit it into your pipeline. If the source license also includes proceedures and methods to submit said changes back either to the company for a potential merge into the main source tree (if it doesn't break something else), or to a user community group where other (licensed!) users can view code patches and apply them to their own (legally licensed!) copy of the code, then EVERYONE wins. Including the company that is now selling more licenses of the software because it is gaining new features and having integration issues fixed up.

    But just open-sourcing the code will probably put companies out of business ("why pay when you can just grab the code yourself?"), and we don't need that.
  • by Anonymous Coward on Sunday August 22, 2004 @06:48PM (#10039857)
    "If we can do hair and our competitors can't, we'll make better films then they can (and, if it's a visual effects studio, we'll win contracts based on that unique ability).

    Bull honkus. If your competitors need hair, they'll write hair software, no problem."

    First of all, let me address the "no problem" part of that -- it's not that easy, bub. I've worked in the industry for over a decade and these things can't just be whipped up. It takes years to perfect systems like hair, crowds, water, or fire -- even a basic lighting pipeline and tool can years to get working nicely.

    Granted, knowledge trickles from place to place, either by people moving around or by publishing papers (mostly the former). But whipping up a whole new fluid dynamics simulator overnight.. it just doesn't work that way, even when you know what you're doing.

    And there is competitive advantage to these systems, no bull. Maybe not for Pixar, since they control their creative product from end to end, but definitely for companies that bid for work. The company that has developed the most streamlined system for doing a particular kind of effect often gets those jobs. When it comes down to bidding, the company with the most efficient existing pipeline will win. Someone who has to develop it from scratch often won't. Why do you think R+H has gotten EVERY talking animal job since "Babe"? It's not just the talent, it's the process, tools and pipeline. Giving away those three in open source is essentially giving away a market. One of your artists, who you've trained on the toolset, could easily start a new company and take away your bread and butter.

    And why are you using OpenEXR as the proof? OpenEXR is a file format that ILM wants mainstream developers to support. It's not Yoda's cloth simulator. It's not the water shader from "Perfect Storm". There's nothing to lose by releasing OpenEXR. There's a ton to lose by releasing my other examples.

    Finally, let me just say that the Linux transition has not been easy. There is currently no good solution out there to replace SGI's hole. Linux has zero support from mainstream apps like Photoshop, Quicktime, etc. -- and even SGI had those for a time. And to go down the route of Mac is kinda like joining up with another SGI... a niche player.

    In principle, I see what you're saying.. but in the end it is a business. If every business gave away everything they built, that would be called communism. That just ain't hollywood's bag, baby.

  • Hm (Score:3, Insightful)

    by captaineo ( 87164 ) on Sunday August 22, 2004 @07:15PM (#10039995)
    I highly doubt Pixar would just throw away the $10 million they make annually from PRMan..

    I think there is room in the market for a lower-cost or open-source drop-in replacement, but it's a chicken-and-egg problem. Studios cannot use a renderer that is not "production-quality" (by which I mean all the tiny little corner cases and rarely-used code paths have been fully debugged). But it takes years for software to mature to that point. (when you get PRMan you aren't paying for the renderer itself as much as you are paying for ~20 years of bug-fixing). I have tried every alternative RenderMan-compatible renderer I could get my hands on, and while some show a lot of promise, I always find a couple of show-stopper problems that make it impossible to switch.

    Again I must emphasize that a production renderer is 10% features and 90% "polish." Many of the alternative renderers have more buzzword features than PRMan (e.g. automatic ambient occlusion baking, automatic network texture caching), but turn out to be completely unusable when you hit an untested corner case (e.g. stuff breaks when you turn on depth of field, or you get pathological memory usage with large motion blur, or the shader compiler has bugs, etc).

    The question is, can you convince 3D studios to invest tens of millions of dollars in labor over several years in the hope of replacing something that already exists? I think the time horizon and cost of that investment make it a difficult business case.
  • by labratuk ( 204918 ) on Sunday August 22, 2004 @07:17PM (#10040009)
    Studios are not going to just open source and give out all their code. Even if they did, they'd be huge and confusing to the open source world and nobody would know how to use it. We'd have another Netscape/Gecko/Mozilla thing.

    If you want to have open source 3d tools (which there are already), you've got to work from the other end. Creating your own. Taking on the studios at their own game. Growing up between their toes.

    If you're a graphics nerd, don't sit around pining like this, start using/hacking on blender [blender.org] and yafray [yafray.org]. They are already seriously good and getting better by the day. If they don't meet your requirements yet, start using them and they soon will with all the extra attention. Besides, half the "really cool" stuff done/needed by 'professional' 3d artists are implemented in custom scripted things. Blender's fully python scriptable. Has been for a long time.
  • Re:Thanks guys (Score:3, Insightful)

    by Khazunga ( 176423 ) * on Sunday August 22, 2004 @08:20PM (#10040415)
    Making IP freely available will surely create more work. It becomes pretty obvious if you look at it from a global perspective. Which society will become more efficient? One where IP gives a few priviledged players a head start, or one where all players compete (and the most efficient succeed)? It's the basis of capitalism...

    Where IP freedom result is an unknown is on future investigation. IP protection may be necessary to promote investment for investigation. Again, I have my doubts, since IP history has 150 years, and the 18th and 19th centuries were prolific with scientific advances. However, that's another subject entirely.

  • Re:3d studio max (Score:4, Insightful)

    by MrAndrews ( 456547 ) * <mcmNO@SPAM1889.ca> on Sunday August 22, 2004 @09:01PM (#10040654) Homepage
    I can relate what I learned from my experiences: there are a great many 3D artists that know 3DS Max inside out, and they can produce the most amazing things you've ever seen... but once you get to big renderfarms and big studios, they see it more as a kiddie program than a real 3D app...

    Also, as for the gallery on the website... as a friend of mine said, if the animators used 3DS Max for adding a lens flare to a single scene in a movie, they'd be able to claim 3DS Max was used for the movie. Which is why virtually every single major 3D app can claim ownership of every major VFX movie in the past decade :)

    In short: learn 3DS Max, because it has a great community for learning... if you want a proper job, learn Lightwave or Maya.
  • by Stalus ( 646102 ) on Sunday August 22, 2004 @10:05PM (#10040989)
    So, I think you went to a different siggraph than I did, because a lot of your facts are bogus. First off, a lot of the sessions I went to had majority Windows users. I sure did see a lot of powerbooks around though. Frankly, most stuff that uses new architectures for real-time rendering only works well on windows. We have some algorithms in our lab for the new nVidia cards that can only be run in a Windows environment.

    And most of it is all the same stuff. Dozens of topics -- and every studio pretty much has pretty similar, rather redundant code to do 'em all.

    Not exactly. If you listened to a lot of these talks, they said that they based there system on X paper. They all added their own elements to get what they wanted. They are NOT the same algorithms, it is NOT the same code. The LOTR guys said something like "Well, we call it this because that's what it started as, but it's not really that." The systems differ depending on artistic qualities desired, infrastructure, workflow differences, resolution required, speed... This stuff isn't redundant code. These differences are a great competitive advantage.

    Why should you get the studio that did the effects for the Matrix or Day After Tomorrow when everyone has the same abilities? It would be really stupid for them to give up this advantage. Yes, great for random Joe that wants to make great looking graphics, but stupid for people that do this for a living and rely on these advantages to feed their families. And don't expect university researchers to write this stuff for you, because their code generally isn't commercially usable.

    OpenEXR is *the* format for high-dynamic-range images

    The entire point of one of the later talks on HDR was that there isn't an agreed upon, good format for HDR images. So, no, it's isn't *the* format for HDR images. It is *a* format.

    Well, it could begin with open source projects becoming valuable to studios, as started happening with Gimp

    People in the graphics community still complain that gimp doesn't measure up. I don't know why open source zealots seem to think everyone loves it.

  • by SeanCier ( 12804 ) <scier@PostHorizon.com> on Sunday August 22, 2004 @10:23PM (#10041108) Homepage
    > As somebody who works in 3D graphics

    As do I.

    > there are so many things wrong with this I don't even know where to start.

    Please try.

    > Um - no. PIXAR killed ExLuna. They sued them into the ground.

    As others have mentioned, that was my point. I'm at fault for constructing a terribly poor sentence ("they" was meant to refer to Pixar). I don't see how their actions helped themselves directly or indirectly, and the entire industry got to see them being -- as you said -- nasty and selfish. That doesn't inspire confidence in the future of company's products.

    > FYI - ILM considers OpenEXR to be a big failure.

    Some in ILM do, others don't (nor does much of the industry); perhaps those that were disappointed had unreasonable expectations, because the response has been incredible, really: OpenEXR went from Zero to Standard. And they <b>have</b> recieved contributions, as I described.

    > I'm not even going to refute the rest of your points because it's a waste of time. You don't get it.

    That's insulting, and I believe both your examples were erroneous -- but please continue, as discussion was part of the point of this piece.

    -spc

For God's sake, stop researching for a while and begin to think!

Working...