Forgot your password?
typodupeerror
The Internet Entertainment

Rendering Shrek@Home? 345

Posted by timothy
from the render-it-like-pork dept.
JimCricket writes "There's an interesting piece at Download Aborted about using distributed computing (a la SETI@Home, Grid.org, etc.) in the film industry. With the recent release of Shrek 2, which required a massive amount of CPU time to complete, one must wonder why the film industry doesn't solicit help from their fans. I'd gladly trade some spare CPU time in exchange for the coolness of seeing a few frames of Shrek 3 rendered on my screensaver!"
This discussion has been archived. No new comments can be posted.

Rendering Shrek@Home?

Comments Filter:
  • MPAA (Score:3, Interesting)

    by MandoSKippy (708601) on Wednesday May 26, 2004 @01:13PM (#9260121)
    I wonder if that would be considered pirating by the MPAA. Smart people out there would figure out a way to "download" the movie from the frame generated. Then there would be no reason to see it in the theater. Just playing the devils advocate. Personally I think it would be REALLY cool :)
  • by mgoodman (250332) on Wednesday May 26, 2004 @01:16PM (#9260165)
    Also, there is bound to be a fan site created that would allow users to upload their rendered images and somebody would manage to piece it together into a halfway coherent movie. Then some nerd would mystery science theatre 3000 it and it would become an internet phenomenon. Hmmm, maybe that's not a bad thing...
  • Data (Score:5, Interesting)

    by Skarz (743005) on Wednesday May 26, 2004 @01:16PM (#9260169)
    The problem with trying to help render frames is that your system needs to have the data to do it (3D objects, textures, etc.)- not to mention the renderer. Companies wouldn't take kindly to sending off their IP data (esp. custom 3D models/textures/shaders) to the masses to be hacked. Having people get a hold of the "official" Shrek models and textures for example would be a bad thing.
  • by elwell642 (754833) <hallmant.dm@org> on Wednesday May 26, 2004 @01:19PM (#9260203)
    We could have entire CVS trees of movies!

    Don't like how Matrix Revolutions ended? Just load up the "Smith kills us all" branch and choose your own adventure!
  • by frenetic3 (166950) * <houston@alum.mitGAUSS.edu minus math_god> on Wednesday May 26, 2004 @01:20PM (#9260216) Homepage Journal
    I'm not a film tech -- but besides abuse and security issues, what's proposed here is just does not seem possible under low bandwidth conditions. it's not like you can just run off to computer #2,398 and say "go render frame 1,503" -- there are textures and models and state information that probably total somewhere on the order of gigabytes (give or take a factor of ten) in order to render that frame. Joe Dialup isn't going to be able to handle that; the film studios I'm sure have crazy fiber/multi-gigabit interconnects within their rendering farms.

    If they could find a way to offload some intermediate calculations (like deformations of hair or fabric or something that can be used as an intermediate result in a scene) then that might be a clever use for a distributed.net [distributed.net] style technique.

    -fren
  • by mirio (225059) on Wednesday May 26, 2004 @01:21PM (#9260230)
    You make valid points although most (maybe all) of your points could be eliminated by having multiple hosts render the same frame (a la SETI's response to people uploading false data).
  • by American AC in Paris (230456) * on Wednesday May 26, 2004 @01:26PM (#9260298) Homepage
    Amusing, but easily dealt with: triple the amount of work done.

    If you send the same input to three different IP addresses (extra-paranoid: use three different top-level IP blocks) and get the same result back, you can be reasonably certain that the result is valid. If there are -any- discrepancies in the images, assume that one (or more) was improperly rendered, discard all three, and try again with three new addresses.

    Even should you manage to hit three different IP addresses that return the exact same 'hacked' image, it's not exactly hard for an editor to step through the movie frame-by-frame, looking for discrepancies...

  • by shawn(at)fsu (447153) on Wednesday May 26, 2004 @01:26PM (#9260301) Homepage
    In theory this is a good application for Distributed Computing. I doubt it would ever happen in practice. Maybe for an indie but not for Pixar. The funny part would be someone hacking one of the scene and throwing something else in in it's place. Kinda like the part from Fight club.
  • by gspr (602968) on Wednesday May 26, 2004 @01:28PM (#9260317)
    Users gladly contribute their spare CPU cycles to fold proteins for a non-commercial purpose, or help a non-profit organization seek out alien life. These are tasks affecting all of mankind.
    Giving away CPU cycles so that a multi-million dollar company can improve its product is a wholly different thing.
  • Cost Cutting? (Score:3, Interesting)

    by syntap (242090) on Wednesday May 26, 2004 @01:28PM (#9260323)
    Great, maybe for saving some effects company from shelling out for a few more $10K graphics servers with which they will make the next $150M movie, perhaps I can loan them a few CPU cycles and they'll cut down my move ticket cost from $10 to $9.75.
  • Good Luck (Score:4, Interesting)

    by Anonymous Coward on Wednesday May 26, 2004 @01:29PM (#9260328)

    The last film I worked on, we had anywhere from 800MB to 12GB of data per frame that the renderer had to have. I am talking about compressed renderman rib archives, textures, normal maps, displacements, shadow and other maps.

    The data was mostly generated at render time for things like hair and shadow maps, but if it was being distributed, there is no way to do that - they would be transferred beforehand.

    Also, there are always many terabytes of data generated by the renderers for each render layer, for diffuse color, specular color, etc.

    It is just not feasible to transfer all that data around, and its not like bittorrent or other p2p systems will help much with that since each frame would most likely only be rendered by a few people (for verification).

    Also, the model geometry and shaders (and somtimes textures) are closely guarded secrets... In short, if a major film were ever to do somthing like this, everyone participating would need huge (> 100mbit) bandwidth and a LOT of disk space and also be under very tight NDAs.

  • by swordboy (472941) on Wednesday May 26, 2004 @01:30PM (#9260341) Journal
    But this opens up a whole new world to the independents. Shrek2 just shattered all kinds of records [dailynews.com] in terms of cash. And there are no real actors.

    So what happens when a few talented indies get their paws on the processing power required to blow the doors off of convetional actors? It won't be goodbye to Hollywood just yet but I can't wait for the first CG/Anime crossover. I can't imagine how Cowboy Bebop would fare if it didn't have the cartoon stigma.
  • by auburnate (755235) on Wednesday May 26, 2004 @01:30PM (#9260342)
    You might be the unfortunate soul that renders a movie spoiler as you watch the images coalesce on your screen ...
  • by b1t r0t (216468) on Wednesday May 26, 2004 @01:37PM (#9260415)
    Why on earth would they want to let the frames from Shrek get out onto the net where rampant piracy and trading would ensue, just so your computer could turn in a frame a week?

    The heck with that, why would they want the 3D wireframe models to get out on the net? What do people think the frames are rendered from, anyhow? I predict it would be less than one week between someone figuring out how to extract the models, and someone else making a low-res animation of those models doing the nasty with each other.

  • Stupidity (Score:3, Interesting)

    by WormholeFiend (674934) on Wednesday May 26, 2004 @01:37PM (#9260416)
    I wouldnt do it for the same reason I refuse to buy clothes with logos on them that advertise the maker of those clothes, or some other form of advertisement.

    If someone wants me to wear such advertisement-enhanced clothes, they should pay me for the priviledge.

    Same with computer cycles. I pay the electricity. If they plan on making money from the product of the cycles I give them, they should pay me.

    However, I have no problem giving away free computer cycles to non-profit scientific endeavors.
  • by hashwolf (520572) on Wednesday May 26, 2004 @01:38PM (#9260419)
    Why have one distributing computing CLIENT for gene folding, one extraterrestrial searching and yet another for video rendering?

    It might be a good idea to have a distributed computing SERVER (DCS) that can take and serve number crunching tasks to those that request them.

    Some good ideas might be the following:
    Build a mesh of DCS' by using current P2P technologies so that one DCS can know about a good number of others.
    DCS' initially (might) not provide services to every user by default; it is up to the owner to choose who to allow to use CPU power and how much.
    --
    After all, the CPU power you don't use goes wasted.
    (If you're not a power saving aficionado.)
  • by UncleSocks (243734) on Wednesday May 26, 2004 @01:39PM (#9260427) Homepage
    I think people have hit on a number of reasons this idea just wouldn't make sense. I'll add one more:

    The cost of a server farm is a small fraction of the cost of making a movie.

    A close friend of mine is in charge of the server farms for a feature film animation company. For their next film they sat down and considered the hardware architecture they wanted, bought a few test machines, then said okay send us a few hundred PCs.

    They didn't even care (much) how much the PCes costed, or that they might want to reuse hardware from the previous movie. For them, new movie = a bunch of new hardware - no big deal.
  • by Tarrek (547315) on Wednesday May 26, 2004 @01:46PM (#9260484)
    The only way I see for this to be feasible is if each user was only rendering a tiny segment of each frame. I don't know if this is technically possible, but, it would reduce the massive bandwidth needs to a more SETI like level.

    Secondly: Users cannot see what they have rendered. This is a given, as has been pointed out a thousand times already, this is insane from a security and PR standpoint. INSTEAD, simply let users who participate on a regular basis have access to a private forum, developer blogs, and grant them access to the official PR material slightly before it gets published. It's less cool, sure, but it could work.
  • Corporate Chairity? (Score:2, Interesting)

    by zombiestomper (228123) on Wednesday May 26, 2004 @01:48PM (#9260501) Homepage Journal
    If the resulting product from the distributed computing were public property, or for the public good-- then I could see it.

    But to offload all the costly/time-consuming work and THEN let them sell it back to you 4 or 5 times (Theater, Pay-Per-View, DVD Rental/purchase) along with all the marketing tie-ins doesn't seem to make sense (to the consumer, that is. For them it's great, less equipment overhead and quicker turn-around.)

    If you think that's a good idea, I've got some swampland I can sell you.

    This type of thing makes absolute sense for things that might not otherwise get funding and don't derive a profit (SETI@home, Folding@home, etc.).

    If you want to get paid next to nothing animating scenes for a giant studios next big movie, get a job at some asian animation house.
  • ...a whole new world (Score:5, Interesting)

    by steveha (103154) on Wednesday May 26, 2004 @01:54PM (#9260562) Homepage
    Shrek2 just shattered all kinds of records [...] And there are no real actors.

    You do still need voice actors. With an animated feature, a really good voice actor can really add to the experience.

    And you still need to make the character models move in realistic ways. So you need motion capture actors, or else truly skilled "puppeteers" to animate the models.

    All that said, I actually agree with you. Take a look at Killer Bean 2: The Party [jefflew.com] by Jeff Lew. One guy made this, using his computer at his home. I think it's really cool that people can just make movies now with only a tiny budget.

    steveha
  • by System.out.println() (755533) on Wednesday May 26, 2004 @01:59PM (#9260606) Journal
    I can't wait for the first CG/Anime crossover

    Uhh, there have already been some. The first one I've been looking for (Appleseed) is coming out in Japan soon, and it looks [apple.co.jp] quite badass. I've heard of a few crossovers before now, but can't think of any off the top of my head.
  • by Anonymous Coward on Wednesday May 26, 2004 @02:03PM (#9260642)
    From: http://www.aspenleaf.com/distributed/ap-art.html#i mp The Internet Movie Project renders images for computer-animated movies. The project is an open-source collaboration of volunteers and is just for fun. It is still in the development phase, but you can volunteer to be a "render-farmer," to render images for test animation sequences. Anyone who can run the free POV-Ray ray-tracing program can join this project, although the supporting scripts and software needed for the project only work on the Windows and Linux platforms for now.
  • by Anonymous Coward on Wednesday May 26, 2004 @02:07PM (#9260693)
    Pixar renders at insanely high resolutions. pretty close to the theoretical limit of 35mm film.... then their secret and house designed laser film printing process creates a film master that makes everyone elses prints look like utter garbage.

    on your 1400X1200 screen you might get an Eye or fingernail.

    think 10,000 pixels by 40,000 pixles in 32 bit color.

  • by Bakaneko (11498) on Wednesday May 26, 2004 @02:14PM (#9260781)
    Sony Imageworks definitely didn't think gigabit was fast enough, and that was 6-7 years ago when I talked to them. They were deploying some sort of customized super-HIPPI setup for shipping their digital assets around.
  • by Crayola (250908) on Wednesday May 26, 2004 @02:17PM (#9260816) Homepage
    Most people don't have RenderMan or Maya licenses on their home PCs, let alone all the proprietary extensions and scripts that studios use. Plus, add in the shaders, texture maps, model files, etc, and you've got a few hundred MB or a few GB of data and software just to get started.


    Now, it might make sense to go to some rental service that can set up the licenses and servers and just charges per CPU hour, license hour, and MB on the server. It wouldn't be a small thing to set up, though, and it would be a professional service with strict NDAs.

  • by pdiguy (588801) on Wednesday May 26, 2004 @02:17PM (#9260824) Homepage
    This is correct. One of our main concerns when deciding how to store data, or when to store vs regenerate on the fly data for a frame is network bandwidth.

    For Shrek, and according to Dan Wexler's statistics at http://www.flarg.com/Graphics/ShrekRenderfarm.html , on average each frame took 2GB of data. I'm not sure and won't bother to find out how much we used on Shrek 2, but of course chances are the figures are even bigger.

    This alone would make it impractical, without even taking into account all the IP and copyright issues.

    j

  • by Ungrounded Lightning (62228) on Wednesday May 26, 2004 @02:19PM (#9260851) Journal
    If you send the same input to three different IP addresses (extra-paranoid: use three different top-level IP blocks) and get the same result back, you can be reasonably certain that the result is valid.

    Actually, just double. First use "Comparison Mode". If the two come back different, resolve it by switching to "voting mode", doing a third frame at a third site and seeing which it agrees with. (If all three disagree you've got a systematic problem and you need to debug the whole project.)

    If there are -any- discrepancies in the images, assume that one (or more) was improperly rendered, discard all three, and try again with three new addresses.

    A disagreement proves that at least one of your sites had a problem. But (unless there's some non-randomness to your selection of the three sites) the fact that ONE of your first set had a problem does NOT mean that the OTHER sites in your first set are any more likely to have misrendered than the new sites. So there's no reason to throw away the results from your first set. Just use the additional site(s) to select which one of your first set was wrong.

    If a significant fraction of your sites are compromised to make identical misrenderings, you still don't want to throw away your original set. Keeping them all and going to 5, 7, 9, etc gets you closer to the likelyhood of the right answer, while discarding them and repeating a 3 site run with new sites gives you a greater probability of accepting the wrong answer.

    = = = =

    But all redundant systems fail if you have a systematic problem that may affect more than half of your potential samples. For instance: A virus infection that causes a systematic corruption of the rendering process (i.e. changing the texture map so the pants are transparent or carry an image of genitilia). If more than half render wrong than right, more redundancy makes you accept more wrong frames.
  • by fanfriggintastic (751454) on Wednesday May 26, 2004 @02:21PM (#9260872)
    More likely than that, I can totally see hackers sending in images that don't belong, right smack in the middle of valid rendered images. Think along the lines of Fight Club...
  • by Tree131 (643930) on Wednesday May 26, 2004 @02:23PM (#9260892)
    It already has [oper.ru] for Matrix and LOTR 1 and 2
    I've seen LOTR 1 and 2 and they're hillarious. You have to know Russian pretty well though to understand all the humor.

    Can't wait for LOTR 3 to come out
  • by Anonymous Coward on Wednesday May 26, 2004 @02:23PM (#9260896)
    what would be distributed is the RAW calculations. Instead of sending the calc to the local CPU, it would get passed to the 'cluster' of web machines. the rendering would send all calcs out, and then get them back and assemble the results.

    this way no actual creative content would leave the building.
  • Why not? (Score:3, Interesting)

    by GreyyGuy (91753) on Wednesday May 26, 2004 @02:28PM (#9260935)
    Let's see...
    • Security issues- could anyone running the tools see the results? Or worse- change them? It would be a huge pain in the ass to review every image to make sure someone didn't throw in a one-frame wardrobe malfunction or the like
    • Copyright issues- if I own the machine that produces the frame do I have any copyright ownership of it? Even if I don't, how many lawsuits of people that want money would it take to eat up the savings from not getting the machines and doing it yourself?
    • Competitors- How easy would it be for a competitor to screw it up? Either running clients but not letting them send data or send bad, gibberish data instead? How much time and money would have to be spent to check for that?
    • Why would you do it? Donate your time, processing cycles, and bandwidth to a company that is going to make money off it and not even give you free tickets for your effort? Not to mention that legally, as I understand it, a for-profit company is not allowed to have unpaid volunteers. People working for a for-profit company have a legal obligation to treat them as employees. That bit AOL and Everquest a few years ago when they had unpaid communitee volunteers in charge of stuff, but don't anymore because of that.
  • by Telcontar (819) on Wednesday May 26, 2004 @03:16PM (#9261371) Homepage
    will deal with that. You may seen a generic screensaver, but I doubt that a company would risk leaking their movie. However, it is possible to perform certain calculations (such as addition and multiplication) in a way such that the clients in this scenario would work on encrypted values.

    The calculations are done in encrypted values and returned as such. The host can then decrypt the result.

    This sounds pretty amazing but consider addition as a starter: The host uses a one-time-pad for each number and XORs them. The client adds the encrypted numbers. When you add the numbers, the host only needs to XOR all the keys on the result and gets the true result! The client, though, knows NOTHING about the true values (the protocol is information theoretically secure), as the XOR turns them into "signal noise".

    I imagine, though, that the effort of implementing this probably outweighs the benefits for a project like rendering a movie. But for truly mission-critical data, it may be worth it...
  • by Stonent1 (594886) <stonent.stonent@pointclark@net> on Wednesday May 26, 2004 @04:27PM (#9262007) Journal
    Allow movie companies access to the virtual farm at a rate of 1 cent per frame or something like that. Then the person who renders the frame or who has contributed X number of render units has the option to have the micropayments sent to a charity, open source project or site of their choosing.
  • by timmi (769795) on Wednesday May 26, 2004 @05:50PM (#9262828)
    more than likely it will be limited to using all the PC's on the employee's desks once they log off and go home for the night.

If bankers can count, how come they have eight windows and only four tellers?

Working...