The Future of Real-Time Graphics
Bender writes "This article lays out nicely the current state of real-time computer graphics. It explains how movie-class CG will soon be possible on relatively inexpensive consumer graphics cards, considers the new 'datatype rich' graphics chips (R300 and NV30), and provides a context for the debate shaping up over high-level shading languages in OpenGL 2.0 and DirectX 9. Worth reading if you want to know where real-time graphics is heading."
on my heads up display sunglasses that shows ip addresses of the other people walking around me!
So we all have to have portable gargoyle type computer rigs on..
FP?
Puff
where supposed to show us new worlds. Now it's all about showing us the real world?
I'll just look out my window, thanks.
Ahhh it seems like only yesterday I was sooo impressed by mario, blocky graphics and plain colors with no frills really. Then I was impressed by doom, 3-d, awesome action, multi-player, toystory-animated movie? WOW! Final Fantasy-Good animated movie! double WOW! Now what next? The way things advance today it really is getting hard to tell real world film scenes from CG stuff, I just watched lord of the rings and it really is hard to tell real from CG, now with the hardware getting cheaper and software becoming more advanced what was only a fantastic dream in the 80's, a big movie corp with render farm only dream in the 90's is now becoming possible for the home user. Don't know about you, but I'm still impressed, and I can't wait to see what is just over the horizon.
Just a few more years and the transition to featureless games with cool graphics but no game play will be complete.
It's already at the point where the graphics department in a game house can be larger then the development team.
"Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
And I suppose Trident will be the ones to lead the charge with their recent resurgence into the graphics card making arena.
Give it a look
Personally, I'm waiting for the amusing day when the graphics card in my machine is more powerful than the 'main' processor. Would we then consider the 'processor' to be the GLU and the rest is just the support chipset?
Heads up Intel!
http://slashdot.org/article.pl?sid=02/08/11/157207 &mode=thread&tid=126
/. article is repeated, God clubs a baby seal with an angel's lost wings.
same shit, different day. every time a
Cretin - a powerful and flexible CD reencoder
I am hopeing that the Playstation 3 has OpenGL 2.0 interface
it does not have to have the legacy stuff that a full OpenGL 2.0 has to have just all the cleaned up interfaces
now that would be cool
reddering stuff on my playstation !
regards
John Jones
That the comparison do Pixar-style in real time might be inaccurate...especially when considering the 1.2 million computer hours. How does the equation change when you consider the resolution used for each animated frame (of Toy Story), and resolutions that are common in the gaming arena?
Silly people.
Of when 1 guy could code a game in a month, down in his parents basement, using graph paper to design 'sprites' ?
Fast-forward 15 years...
"Remember when it only took 4 CGI animators, 5 texture artists, and 6 3D modellers to create the cutscenes in a game?"
"Relatively cheap" hardware however is all relative to the time in which it was purchased. Case in point...My Geforce 2GTS card cost me $150 back when I purchased it, now they go for like 35-50. It seems video cards get changed faster than CPUs these days, ever advancing with software that can't seem to keep up. (My Geforce2 still runs everything great...why spend $300 for a GF4?) I think it's just a matter of time before Nvidia and ATI get smart and stop making newer cards, so the kinda new ones stay expensive. So, I guess what I'm saying is, how much is all this going to cost me, and when?
First, the polygon-based rendering used by the cards is based on fairly special-purpose trickery to get good effects (like shadows - they're not really implemented by the API or the card directly). Second, the other part of really high-quality rendering is high-complexity models - the PC's themselves start to balk at swimming through the massive data sets required in real time. There's always been the speculation that raytracing would catch up to polygon rendering (as CPU's get faster) because the former has sublinear complexity in the number of objects, where the latter is more like linear complexity. _That_ would give you some pretty images!
My own feelings on the little debate is rather simple. Unix machines (Linux, SGI, OS X) are becoming the standard for Hollywood level style movies - they're powerful, you can cluster them with relative ease, and they don't crash that often.
DirectX9 is really about games - render less polygons on the fly, and it only works with one operating system (any guesses on which one?).
As games and movies start to approach each other in graphical abilities, I wonder if OpenGL will become more important as the Unix graphics programmers start getting pulled from their Toy Story 3 seats to help with the guys making Toy Story 3: The Game.
Right now, the #1 reason why OpenGL is still in a good number of Windows machines is John Carmack. Will things change? Maybe, maybe not. But I still wonder about the future.
52 Weeks, 52 Religions with John Hummel
I remember the industry "experts" were making this prediction back in the days when the Matrox Millenium was all the shit. It's nearly a decade later, and we're not even close yet. What a load of bull.
But this is all going to be great fun for gaming, VR, simulation, and so on.
Bruce
Bruce Perens.
And then you go back to abstraction and stylization. The only difference is at one point it was necessary to abstract and stylize and in the near future it'll simply be more interesting.
sig.
So does this mean soon we will be able to download a movie in a scripted language and let our video cards render it in real time and watch a "open source" movie? Will the MPAA pay congress to enable some Digital Rights Managment in the cards? I think these are interesting ideas and I really thing a Open Source movie would be pretty cool, not to mention most likely a fast download.
A year back or so I did the blender work for a starwars fanflic...Now this was only a fifteen minute film...but the 5 minutes or so of 3d easily took a day to render. As this stuff gets faster, amateur movies will become better and more sophisticated. Low budget films and TV shows will gain access, and the graps of the MPAA will weaken. Anything that makes low-budget films easier is a good thing.
With the internet and a DVD Burner, a low budget film could be distributed DIRECTLY on DVD. Now the films just need to get good enough that people will want them. This would be a good direction for both music and movies.
Cool eye picture. How the heck do you make a model for that?
Brian
problem: Slashdot posts a story it covered a day ago because the Editors aren't into the idea of actually earning their pay.
conflict: user posts a message pointing out that the Editors are asleep at the wheel.
resolution: WHAP! WHAP! Score: 0, Offtopic.
the quality of this blog gets lower and lower. does anyone disagree?
As computers get more powerful, our demands on them get greater. The time it takes to render a single frame of a animated feature has stayed pretty much constant over the last few years.
I mean, come on people, it's apples and oranges here. Two similar tools for two VERY different purposes. Rendering 80 FPS at 1600x1200 makes good games, but I doubt there will ever be a day when film frames are rendered in real-time. There's just no reason to!
That's not to say that yesterday's movies couldn't be rendered on today's technology. Absolutely! But tommorow's movies are a different story.
there's got to be another goal that will step up after quake (whatever number) looks as good as a live action movie. i think it will probably be a new interface. possibly vr type things.
i see pixar's point that by the time pc graphics catch up to now, cinematic cg will be further down the road. but the gap is getting smaller. i would be really impressed if a desktop could make use of something like MASSIVE in real time during a game. good looks will look better when there is more intelligent behaviour of bots in games. someday it will be possible, but by that time movies will be even prettier.
or maybe i'll finally be able to game at full speed without worrying about ruining the cds i'm burning.
you probably shouldn't have read this.
I get annoyed every time I hear this. If they mean movies like The Last Starfighter or Tron then yeah, we have movie-class CG in our games, but where are these ridiculous predictions coming from?
First off, movies are raytraced and even on their machine clusters take on the order of minutes per frame to render.
Secondly, have they even taken one look at how primitive our 3d graphics are these days? I mean, yes, often buildings (like in Morrowind) look reeeallly great, but they don't look like movie-class CG... And we have a LONG LONG way to go before creatures look good. (Yeah, we can make one werewolf with no scenery look good, but we need to have the scenery and about 1000 other werewolves before I'll be impressed)
Yeah, Doom 3 looks pretty and all, but quite frankly I'll believe it when I see it on my machine.
It's funny how people have been saying this since 1996. (toy story 1 came out in 1995.) i admit that the power of the gpu has increased a lot since that time, but I don't think we'll see real time cg for quite a while.
I'm expecting to see in the next couple of years a film starring, say, Marilyn Monroe opposite Ben Afleck. Who would you like to see together in a movie, and what kind of movie?
- "History shows again and again how nature points out the folly of men" -- Blue Oyster Cult, 'Godzilla'
The problem with this is that a company will never believe that such a miniaturization rate is possible.
They prefer to think of that as "silly"
("silly" == "you are trying to rip them off")
The proper way to do this is what most companies that make RAID servers and other computers with large hardware arrays are doing:
1: Build large motherboard with low circut density
2: Build case roughly the size of small wardrobe. 3: Attach motherboard inside case, and fit parts to motherboard.
4: Put lots of flashy lights on case, contemplate adding machine which goes 'bing'.
5: Use lots of external connections, so that there is lots of assembly required and there are lots of bells, whisles, cords, and dongles hanging from the case after assembly.
6: Next year, make the case about 2" smaller in each direction and raise the price about $250 per unit
You think I'm kidding - our school's grade server has less than half the volume of the one that was replaced, and they're not that different in performance.
Remember - size may not matter if you know how to use it, but it may stop you from getting the chance to use it in the first place.
"Who am I" and "Why are we here" are not the problems.
The problem is when someone asks "Why are they here."
At long last, my computer will be capable of producing cinematic quality graphics, much like those in that famous Disney movie....
TRON.
I can't wait.
Video Game News, FAQs, etc
why should you not say this because it exposes you as a fool
..... in my eyes
read what the article says
you already have the film data they are talking about rendering it in real time
on top of this Ive seen show's for kids that arnt very complex in terms of story or creatures(vertex wise) that are completely Computer Generated
so you are a
regards
John Jones
Take a look at crystal space, or black and white for that matter.
The number of vertices in the objects are relative to 'your' distance from the object in a kinde of half-way house between object based and polygon based rendering, a bit like mip-mapping with textures.
thank God the internet isn't a human right.
I can do nothing but agree that the visuals, CG and effects are all getting better, but what is the cost? I don't know about the rest of you but it seems to me that the quality of the movies themselves have been going steadily down. The plots are getting thinner, the acting poorer and it seems that everyone is just using visual quality as a crutch. I'd take a good old silent, black and white coemdy by the likes of Chaplin or and old Akira Kirusawa (spelling?) samurai film over most comedies and action movies that come out these days. Or a little more recently, compare the older Star Wars or James Bond movies to the newer ones; sure the fight scenes have gotten cooler, but the acting and stories are nowhere near as good. I love visuals, but can we use them to make good movies instead of just more pulp.
It may be the case that in, say, 2005 for example, you can create CGI graphics on your home computer that are equal to the quality of 2002 movie graphics. But the movie graphics standard won't be sitting still - it will always be ahead. Both will always get better. CGI studios will always be willing to invest more in their equipment than a home user, and they will always be able to get better results by spending more money. You can't convince me that someday the $200 video card in my home PC will be equal to the cluster of high-end hardware sitting in Lucas Arts server room at that same moment.
Humans see by guessing and reverse engineering
messy swathes of light into solid objects with meaning.
Elegance, and built-in models, not raw power, are the keys.
Future digital displays will simulate reality,
in real time. They will, like the human eye,
turn everything outside the center of the visual
field into disconnected mush.
Hold your hand just out of the center
of vision and try to count the fingers...
Sig for sale or rent. One previous user. Inquire within.
Basically, the explanation is that rasterization takes a time proportional to the number of polygons to render a frame, while raytracing takes time proportional to the log of the number of polygons. That might make you think raytracing should be always faster, which it clearly isn't -- the reason it isn't is that the constant factor in each is very different. So you have a*N vs b*log(N), where b is much bigger than a. As N gets bigger (apparently in the neighborhood of 10 million polygons), the difference between a and b becomes less important than the difference between N and log(N).
The main benefits of raytracing over rasterizing is that it is very easy to get things like reflections, shadows, refraction, and other important effects with raytracing, but with rasterizing, you need to do a lot of complicate and CPU-intensive hacks to get the same effect. Another benefit is that raytracing is parallelizable while rasterization generally isn't. That means that if you have a raytracing accelerator card in your PC, you can nearly double the frame rate or resolution by adding a second raytracing card.
Of course, it's all a chicken-and-egg sort of thing, nobody's going to buy a raytracing card until it's a cheap way to do the rendering they want, and it won't be available unless there is a market. Fortunately, there is research into using the next generation of rasterizing graphics cards to greatly speed up raytracing. This will help bridge the gap, by making raytraced games possible using soon-to-be-existing hardware.
Or at least that is what I paid for it. The first game I played that made me move from my gf2mx to the geforce 4 was neverwinter nights. That damn game will lag my gf4 if i have settings too high. Howver in Quake 3 i get 110fps with everything on it's highest setting.
Cheers, and play nwn if you want to see your gf2 choke hard (set everything to high).
But imagine downloading Toy Story 3 or something to your PC... not as a pre-rendered movie, but as a real-time scripted 3D engine with a soundtrack. Run it in whatever resolution you are able to. Use your own camera angles.
Or play a realtime version of Final Fantasy: The Spirits Within, but walk around the "set" in realtime with the characters or just keep the camera focused on Aki's bizznoobies.
-CausticPuppy "Of all the people I know, you're certainly one of them." -Somebody I don't know
Not a lot [of difference between PC games and Pixar movies]. Toy Story was rendered at [less than 1600x1024]
Yes, but most Renderman shaders are more computationally complex than most Cg shaders.
Will I retire or break 10K?
Until we get higher res renderings I am sorry but 480 lines of detail is still to little
Except 480 lines of detail is all an NTSC television can do. (NTSC scans 525 lines 30 times a second, and roughly 45 of those lines are the vblank synchronization signals, closed captions, etc.) If you want more, you're going to have to buy a television with an HDTV tuner. The TV makers are fighting the FCC's mandate to bundle HDTV tuners. Or you can use a computer display with your console, but by then, if you've somehow plugged a VGA monitor into an XBox console, you might as well play PC games. You're just going to have to grin and bear the fact that you're not going to get Miyamoto and HDTV on the same console in the immediate future.
Besides, what's wrong with 240x160 pixels again?
Will I retire or break 10K?
Tom Duff to NVIDIA, 2 years ago: "It will be 20 years before you can do TS2 in real time."
Jen-Hsun Huang, today: "0wn3d"
When is linux going to catch up to OSX?
Microsoft is currently planning to launch a new powered up interface, OSX is coming with jaguar, what is linux doing? Oh right.
They are still working on alpha channel lol.
If you use Linux, please help development of Autopac
Don't expect to see nVidia- or ATI-rendered imagery on the big screen anytime soon. Yes, graphics cards are advancing in ability and speed. However, this is largely irrelevant to the world of CGI. No matter how good it looks on a monitor, it's not good enough for film.
Yes, I'm sure a Toy Story 2 quality film could be rendered on one of these cards. However, by the time these cards come out, TS2 will be nearly 3 years old.
The vision of the artists themselves is what drives CGI, and no matter how good the real-time solution is, the brute-force computational solution will be better - simply because it doesn't have to be real-time.
Fast graphics cards definitely make animators lives easier. We (medium-sized visual effects studio) recently switched from SGI Octanes to Intellistations with ATI FireGL 8800s running Linux. Being able to tumble fully-shaded medium res characters in real-time is sweet. But, it's not good enough, even for TV. And, by the time a card exists that IS good enough, the bar will be much higher.
This is what Pixar's Photorealistic RenderMan does RIGHT NOW. link
Now show me that in real-time and I'll marry your ugly Aunt Hilda.
I get sick of hearing this crap. "When will my graphics card be able to do rendering?!", "When will my graphics card be able to display pixar-quality rendering?!", "When will my graphics card be able to put out graphic realism?" ect, ect, ect.
This is a bunch of crap. By the time your playstation 6 or ge-force 7 or whatever the hell it's going to be gets to a point where it can run enough cycles to achieve toy-story quality pictures in real time (which is still years off) the bar will be raised again for cgi.
Just as moores law doubles technology, the technolgy of rendered cgi doubles. Think back when cray supercomputers rendered frames and took about an hour a frame for untextured geometry with little of the properties that are avaliable today. Today, the images still take 1 hour a frame, even though the technology is billions times faster. Why is that? Because cgi artists will continually pump in as much as they can per frame. If it took 20 minutes last year, it's going to take 20 minutes this year because studio x is going to add some new thing that improves quality but still retains their time margin.
Do you honestly think that gpu's are going to be able to achieve real-time radiosity in next couple years? Real time raytracing like renderes have now? Hundreds of thousands of blades of grass with no tricks? Individual hairs? Do you think that will happen anytime soon? Perhaps sometime - but when it does pre rendered images will feature something new that real-time can't match. Face it - real time graphics will never replace the quality of pre-rendered.
While it isn't addressed in the article, there are a LOT of things that need to be handled in the hardware that just isn't there.
- Orders of magnitude more polygons. Artists want more polys. I personally would want at least four polys per pixel at any view, just to make sure that the rendering would be correct.
- Raytracing and Radiosity. Both of these have been proposed in realtime, there is a realtime ratracer (RTRT, google on it) and Realtime Radiosity is a siggraph paper (look it up, too.). BUT they only work with limited numbers of objects. They need to work with the number of polygons given above, and they can't.
- Lights and light maps. Current video cards are limited to just a few lights. The latest generation can only do 8 lights. That works for games, Quake uses just a few and artists hate being limited to them. The video cards would need to handle thousands of light sources, and be able to process light maps (for shadows) in realtime.
- Textures. Currently we use textures to hide the fact that we don't have detail. But as long as that detail is missing, things will look bad up close. The 'ideal image' is not a wireframe with a texture draped over it. The 'ideal image' is based completely on the vertex lists. To build a model at the right detail, each pixel in the texture would need to be replaced with a vertex, including color and other material properties, normals, edges, etc. So each value goes from a 32-bit RGBA color entry to a fairly big (about 1000-bit) structure.
- RAM and BUS speed, and model size. Once we have these massive scenes, we have the bottlenecks of RAM and the system bus. We have always fought these in graphics, which is why the push from ISA to PCI to AGP. Trying to make the graphics better will just compound the problem.
The facts are that these won't go away. We will continue making texture mapped wireframe models for the near future. By the time the graphics card industry can do realtime what movie studios do in months today, the movie studios will be playing with the ideas above.A perfect rendering system is almost near-infinite recursive, requires infinitely detailed models, and takes a long time to render. We can't do the infinite perfect system, but we can tell our artists to let it run for about an hour per frame. That means 'no realtime top of the line movies', no matter what.
frob.
//TODO: Think of witty sig statement
...Bankrupt Hollywood since it'd put actors, grip boys and other essencial film personnel out of work since CGI actors don't need pay! ...Or did I just read something like this a couple stories back? Naaah.
You need a FREE iPod Nano
Dude, that rocks out. I give you full credit, a complementary nut-sack emptying, a goatse link, a free subway coupon for half price off a footlong sub, a rodney dangerfield thumbs up of approval, and lastly, a salute in my jay-z-based goatse signature. Goal!
g to the oatse
c to the izzex
fo shizzle my nizzle the way, what're you is the master of all troll responders.
oh yeah, the answers in case you are interested
1) Machinehead
2) Little Things
3) Let The Cables Sleep
4) Glycerine
5) Comedown
He's right. This is a duplicate story, and the person who pointed that out was modded down.
Graphics cards are fine but when will linux actually use the power of these cards? I want to see this on my interface. I want the KDE team to do it and I'm willing to pay money.
If you use Linux, please help development of Autopac
umm like the title said
But as far as i can understand from the article, they still are'nt raytracing the light. Which is oftenly used in movies etc. for über precise ligting effects.
Also, most professional 3d renderes are already offering radiosity rendering. Which are even more realistic/precise.
I cant grasp how people think that realtime rendering will get on par with pre-renderings? The pre-rendering programs are evolving to you know, all these gamers suggesting that RT graphics soon will be as realistic as prerenders are kinda like the 4 year kid who thinks he will be older than you in 18 years.
How dare you label me as flame bait, FUCK YOU!
Now that is an official flame. I've earned my label.
If you use Linux, please help development of Autopac
Take a look at the new Radeon 9700 demos and when they come out, the NV30 demos. Simply amazing. Especially the lighting demo with the rotating glass orbs in the forest.
It looks realistic where as all the Pixar stuff looks like a cartoon.
In a few years, you will be eating your words.
Dont you think we need openGL interfaces by now?
If you use Linux, please help development of Autopac
Tell me one feature in DirectX 8.1 that isn't supported in the nVidia OpenGL 1.3 drivers?
none? It's because OpenGL was designed to be stable but extendible. It's sort of like the x86 instruction set which still contains BCD instructions from what the 4004?
They haven't had to go to a version 2.0 because it's easy to retain backward compatibility yet keep up with the newest cards with the extension mechanism. Microsoft started with such a brain dead design that they have needed several complete rewrites. Remember OpenGL went through all those early years as IrixGL a closed beasty like DirectX.
Version 2.0 depends on hardware that does not yet exist, requiring if-then-elses to be allowed in fragment programs. It includes a compiler for the vertex and fragment programs, which have equally powerful instruction sets. DirectX exists because Microsoft marketed heavily to game writers at the right time and simplified other things like joystick and sound control. To unless you have your own in house libraries for those you pretty much have to use DirectX for a Windows game, whether you use it for graphics or not.
The content creation time for realistic realtime graphics is prohibitive. The further in to the future we get, the more realtime graphics (especially games) will lean towards stylization, rather than realism. Not only that, but no matter how 'real' graphics get, it's unlikely that they'll fool the human mind.
In the end, rather than everything looking the same (real), things will spread out and go with more of an artistic look. The better hardware gets, the more stylization will be required to make your realtime app stand out compared to all the others.
I'm not really sure exactly what they are talking about here.
I am trying to get a new career started doing animation (wishful thinking, probably) since I can't find employment in the Uber-geek field anymore.....
Anyway, here is the link to a tripod page with 2 of my animations on it; the first listed is 3 minutes, and took me about 3 weeks to do; It takes a AMD XP1700+ about 6 hours to render 180 frames at 704x480 res, and any decent animation is going to be at that level or better.
I've worked with professional rendering farms, that employ multiple network linked PC's each doing a little bit of the job...and you get a direct linear reduction in time for each CPU involved. How is it possible that a single graphic processor can do all this work?
and if it IS possible, where do I get one?
P.S. if you think the animations are decent, I would love the feedback. If you think they suck, well, shut the fuck up, ok?
Enjoy Freenet & Frost while you can.
Why, yes, I AM a Pagan Libertarian.
the reason why many of our games look so good is because a large amount of prerendering occurs to give the graphics card the textures that it combines together. That information is not calculated on a frame-by-frame basis, as it would be in a movie-class raytracer.
You only need all that detail for nearby objects, which is what subdivision surfaces and level of detail processing are for. With procedural shaders and bump mapping, you don't need that much for most surfaces. The detail may be there in the model, but only a small fraction of it needs to go through the graphics pipeline for any given viewpoint. Given that pixel size is finite and human vision has finite resolution, at some point you max out.
For fixed lighting, you can do radiosity in realtime. (Check out Lightscape, now called 3D Viz.) The radiosity map only has to be recomputed when the lights move. Mostly this is used for architectural fly-throughs. Of course, Myst and Riven are basically architectural fly-throughs. (They're rendered with multiple hand-placed lights in Softimage, though; when they were made, the radiosity renderers couldn't handle a scene that big.)
I tend to agree, but at some level of detail, you can render geometry into a texture (maybe with a bump map) and use that until you get really close. Microsoft prototyped a system for doing this automatically a few years back, called Talisman. Talisman was a flop as a graphics card architecture, but as a component of a level of detail system, it has potential.
Moving around in a big virtual world is going to require massive data movement. But we're getting there. This may be the driver that makes 64-bit machines mainstream. Games may need more than 4GB of RAM.
Rendering isn't the problem, anyway. Physics, motion generation, and AI are the next frontiers in realism.
Man, you can tell at a glance who read the article and who didn't.
I'm going to simplify a great deal here to try and boil this down to the essence. John Carmack please feel free to correct any mistakes I make.
Up to this point, the imagery coming out of the gaming graphics cards has been limited by the hardware design of the cards. The feature set implemented by the cards limits how complicated you can get with the details in the final image.
Note that we're not just talking about simple things like pure polygon counts. Film Industry CGI isn't of higher quality just because they throw more polygons at the problem; they have all kinds of highly complex shaders that can generate special textures without changing the number of polygons in the model - if you saw the "special features" on the Shrek DVD, you can see this at work with Donkey's fur.
Rendering all these extra shaders is CPU expensive, which is why the big animation houses have big render farms.
But two things have happened that stand to change that.
The first (and the most ingenious) is that it has been discovered that you can compile any shader into a series of OpenGL language commands. The tradeoff is the number of passes through the pipeline that implementing a given shader may require may well be a large number - but even so, any shader currently in use by a Hollywood Mouse House can, in theory, be compiled into OpenGL and executed on any OpenGL card.
And here's the really cool part - rendering in OpenGL is many times faster than doing it in software on a general-purpose CPU. Many, many times faster.
Secondly, the biggest problem with trying to crank Shrek through your GF2MX400 (assuming you've compiled all the shaders into OpenGL) is that each shader may require 200 passes, but the data structures inside the card lack precision - either not enough bits as a float, or perhaps not even floats at all, but integers.
That means the data is being savaged by rounding errors and lack of precision during each render pass. It's like photocopying photocopies.
BUT, the latest generation of graphics chips have the necessary precision to do 200-pass rendering without falling victim to rounding errors.
Combine these two things together, and you can quite literally take a frame from Shrek, with all the crazy shaders, compile it to OpenGL, and render the frame on your GF6-whatever **faster than the native render platform**
A very good deal faster than the native render platform.
Is this "Shrek in real-time"? No, not by a long shot. But it may well be "Pixar's renderfarm in a box".
Now, as Bruce pointed out, having Pixar's renderfarm in a box doesn't make you Pixar. There is still a requirement for artistic talent. But all that cheap extra horsepower may well mean that the quality of CGI is going to explode for those talented enough to make use of it.
How will this affect games? It makes a bunch of shader techniques that were previously availible only to the movie industry possible within the framework of a game. And it divorces, somewhat, the game visuals from the card's hardware because these shaders are executed as general-purpose OpenGL instructions, not as dedicated hardware on the card. If you, as a game designer, can write a "fur shader" that runs in few enough passes to meet real-time output timings, then you get fur on your model, even if the card doesn't have a built-in "fur shader" or "fur engine".
THIS is why this is all such a big deal. The amount of quality per mSec of render time is about to explode.
Cool stuff!
DG
Want to learn about race cars? Read my Book
This is flamebait because you're making fun of linux and taunting the linux users. Perhaps you really want to know the answer, but making fun of linux still working on the alpha channel doesn't help your case. You ought to be modded to 0.
... isn't the "rampant piracy" Red Herring they've been feeding the press and their tame politicians in Washington, D.C., it is the possibility that anyone who does have a story to tell will be able to make a quality movie with nothing more than their home PC and a little time.
... a state of affairs the mimicks the current, cartel-controlled situation rather well, actually. Even if only 1 in 100,000 has the story telling talent to put together a good film, that would amount to 2,800 potent competitors to the media cartels.
Suddenly we don't need studios, we don't need actors, and we don't need tens or hundreds of millions to produce a blockbuster movie. And with the internet to distribute the material on, we don't need their distribution network of cinemas either.
The most important talent they rely on is not skill in computer imagery, but skill in telling a compelling story using all of the tools of the visual idiom. This is what most people don't have, and it is an essential element to producing good film.
Like musicians using home-studios to record music, without talent this will go largely unusued, or, more likely, there will be a lot of less-than-good material out there
Musicians really don't need million dollar studios anymore to produce an album, and while this means a lot of junk is pressed onto CD, it also means a lot of musicians are able to produce and market their music outside of the RIAA's cartel, through mp3.com and elsewhere. Hollywood doesn't fear the napstersization of their medium nearly as much as they fear the mp3.com-ization of it, and competition with a few thousand talented people not on their payroll.
This, I think, is why we are experiencing such an onslought of attempts through legislation and back door regulation via the FCC and a little known "standards" body called the BPDG to take both the internet, and general computers, out of the hands of private citizens.
It isn't about 'piracy,' it is about competition, and they don't fear competition from 'everybody' so much as they fear general access to the tools, which means those talented persons not a part of the cartels would be able to compete for viewership and marketshare on a level playing field with the big studios.
And that is something they simply cannot abide.
The Future of Human Evolution: Autonomy
i guess that means it's Hammer Time!
--quote-- Months later, ATI came along behind with its Radeon 8500 chip, which integrated nearly all of DirectX 8's (and the GeForce3's) functionality. --quote-- So why did 90% of my directX games run like crap in XP (randomly died on starting fullscreen) due to ugly ATI drivers for my Radeon AIW? I've had my GeForce4 for a whole week now, and it runs those same games fine...
damn it, I hit submit when I meant to hit preview.
Even if only 1 in 100,000 has the story telling talent to put together a good film, that would amount to 2,800 potent competitors to the media cartels.
should have read:
Even if only 1 in 100,000 has the story telling talent to put together a good film, that would amount to 2,800 potent competitors to the media cartels in the U.S. alone.
The Future of Human Evolution: Autonomy
NVidia has released a compiler for their GPU's, Cg (C for graphics). I had great fun playing with it and see different effects (charcoal, dynamic fur, ...) in real time (pixel & vertex shading). It's even open source :P
See http://developer.nvidia.com/view.asp?PAGE=cg_main and www.cgshaders.org.
Sack the sigs.
Bruse was not arguing that the computer technology isn't there, he was stating the talent inherent in projects such as the one you mention is not hampered by the technology. The guy working on Rustboy is very talented and it shows by him not having to use the latest and greatest computer technology to tell his story.
The error in Bruce's assumption is the notion that everyone who has talent, or even those most talented, are already working for the studios. In other words, that our society is already benefiting from all of the talent out there through the existing media cartels, and that this tool therefor isn't going to add anything of significance to our culture, at least in the area of film making.
This simply ins't true. For every artist who claws their way into the cartel through talent, dumb luck, or, most often, connections with those already on the inside, there are hundreds, perhaps thousands, of equally talented people who never make it and are never heard or seen.
Making these tools generally available won't mean everyone is suddenly a Gilliam or a Spielberg, but it will mean that many of those thousands of talented people whose work we never see, indeed most often is never created, will be seen, will be available, and will be able to compete against the offerings of the studios themselves, a significant portion of which I might point out suck as badly as any amateur material I've seen.
Who cares if this means a million people produce crap I'd never want to see. If it means 10 people (or, more likely, a couple of thousand) produce good, interesting, innovative material, then our society and our culture have experienced a windfall in artistic work.
There is also commercial opportunity there (even if all the artists were to release their stuff under Free Licenses of one sort or another, something which I suspect some would do but many would not), for someone to review such works and help those interested find the wheat among the chaff.
This assumes, of course, that the common person is allowed to have an unfettered, general purpose computer or a bidirectional internet connection, something which those very same cartels are actively trying to prevent.
The Future of Human Evolution: Autonomy
There is already a high-level shading language, even LGPLed, the API is from Apple's QuickDraw3D, it is called Quesa, http://www.quesa.org/. It can sit above any other API, such as OpenGL or Direct3D. It is scene ordinated. It is a pretty cool api, it is a lot easier to use than Direct3D or OpenGL. The file format to save the scene is 3DMF binary or text (XML like); in fact the binary format was appointed to be the binary format for VMRL.
As for the model complexity, high quality modeling is generally done using higher-order surfaces such as subdivision surfaces or NURBS. Something like renderman then subdivides these down into polygons at render time, which is basically the same capability that we are seeing in the next generation hardware. Not quite there yet, but its not a qualitative difference that you suggest.
All this is because doing things really right, with full raytracing and global illumination, is too expensive even for production off-line rendering.
Then all I'd have to do to get laid is move my cursor crosshair over a sexy lady and press type FSCK on my embedded keyboard input (running linux of course, wouldn't go anywhere without it).
Sheesh!
This Gorgeous Quote
I have to note that the delta between perfect and good enough is ever decreasing, and the law of diminishing returns is already starting to kick in. Eventually, that extra hour of processing per frame will improve image quality by an imperceptible amount, because the eye and brain have bandwidth and processing limits of their own, and once you've reached them, who cares how much better it gets.
Oh, and just to have a dig, a good real-time CG artist can generally achieve the same effect that a normal CG artist can, with an order of magnitude fewer resources (poly's, texels, lights), precisely because they have to. It's good to have to work within constraints. Stops you getting lazy...;)
ok so go and give the KDE team a few hundred dollars and earmark it towards going to that feature that you want.
For those of us who want to get into movie processing right now Cinelerra-1.0.0 has just been released :)
I thought this was a very fairly written article. He didn't tout one side or the other. He just simply wrapped up all the facts he'd collected and presented them in readable form. As technical as the discussion is, it didn't get bogged down in the blah blah and loose focus. Simple and consise. Kudos to you!
WURD!!
i'm sure that a good amount of linux users out there these days have a machine capable of hardware acceleration (with the exception of certain laptop graphics cards which have shitty support of GL)
.... Add a few more framebuffer drivers to the kernel and make them more functional (change vid modes on the fly, support alpha, gl, etc
:)
;) )
I've often wondered why there isnt a GL based window manager or even all of X be GL accelerated with the right drivers.. wouldnt that solve most of the alpha channel problems and overall video speed issues that some people always complain about?
It'd be nice to design a whole new gui subsystem that does only local stuff.. maybe have an X capable module that you add on to the main system for backwards compatability and remote stuff.
a new gui system is far overdue
have just a window manager on a framebuffer-- have all programs use the window manager for gui widgets
maybe i'll make one
libsdl supports both X and framebuffer (as well as almost everything else)
although i get tons of flickering on certain video cards in framebuffer...
I've already made a nice OS/X style interface for a game i'm working on (actually remake -- ultima 0-6 http://ucr.exahost.net -- crappy site.. nothing up for download yet just screenshots - dont slashdot me TOO bad!
p r m t h s
Can we simulate all the lawyers and bean counters and keep the actors please??? ;->
PPP
"None of this shit works" -W.Shatner
Do you honestly think that gpu's are going to be able to achieve real-time radiosity in next couple years? Real time raytracing like renderes have now? Hundreds of thousands of blades of grass with no tricks? Individual hairs? Do you think that will happen anytime soon?
I used to think as you do. That was before I got a large amount of education while attending Siggraph this year.
At Siggraph, I saw a live demonstration of a real-time raytracer that was also computing a diffuse interreflection solution (radiosity-like, for those who don't understand) on the fly. I also saw a real-time recursive raytracer written by Stanford researchers that was implemented in a GPU's pixel shader. There is currently research on displacement map "textures" that could conceivably let you render thousands of blades of grass or individual hairs without having to send all of that geometry down the AGP bus.
All of these things blow the doors off what people think a graphics chip can do. Your post would have been accurate last year. Not now.
I will agree with one point: software-based rendering will always be able to compute certain effects that will be difficult or cumbersome to do in a GPU. But I'll also claim that the gap is dramatically shrinking.
I'll also say that the two techniques are not really in conflict. You can use them both in conjunction with each other. You can use a hardware-accelerated Z-buffer to help a raytracer determine first-level occlusion. You can use a raytracer to generate textures and maps for a GPU. In the future, we will see both techniques used to compliment each other.
I don't think polygon graphics in games have more than 10-15 years left. At that time, we'll move on to advanced voxel-based technology. Voxels have a couple of important advantages, such as that things don't get angular edges at all, and also and most importantly, that game physics can get a lot more authentic. Still, voxels require lots of CPU and RAM power, so they won't come yet.
---
As an Architect, creating model walk-throughs and sun-studies are part of my daily routine. The difficulty of architectural modeling is the extremely high polygon counts. What interests me about these new cards besides the greater accuracy is their ability to function in "parallel configurations using as many as 256 chips". Precisely how much gain one would get is beyond my depth of knowledge, but it would seem that this would allow my render farm to render DVD quality without breaking a sweat.
I have to give kudos to John Hart. He and a fellow graphics associate, Pat Flynn, taught practically the only interesting CS Courseware at Washington State University and that department is suffering infinitely so for not listening to the needs of leading edge researchers.
Way to go John!
Just a former undergraduate student who left to no fault of your own to go work at NeXT then later Apple, saying congrats.
Marc J. Driftmeyer
The irony is that if graphics cards take the place of 'beowulf clusters' for Renderman rendering farms, this whole scenario is a net minus for Linux.
;-)
So be careful what you root for.
--LP, who imagines the truth is somewhere in between
>>First off, movies are raytraced and even on
>>their machine clusters take on the order of
>>minutes per frame to render.
Wrong and wrong. Most movies are NOT raytraced. Most movies and movie effects are rendered with PRMan (probalby >90%) and PRMan most certainly does not raytrace.
'minutes per frame'. The guys running the renderfarms WISHED. ToyStoryII had frames up to 80 HOURS per frame. The only people doing minutes per frame are doing low quality, low res stuff for weekly TV.
>>It looks realistic where as all the Pixar stuff looks like a cartoon.
And? Thats an artistic decision by Pixar. The same software that renders the 'cartoons' like ToyStory and Monsters Inc is also doing the goblins in Lord of the Rings, the dragons in Reign of Fire, Jurassic Park I/II/III, Perl Harbor, Men in Black, etc etc etc. And probably every other effects movie you've seen in the last 15 years. I can go on all day. Pixar is deliberately going for a non-realistic look.
Yeah, but if they supersampled it, there would be a lot less jaggies.
Granted. However, some Nintendo 64 games did supersample their video, and the GameCube has a comb filter that kills most of the jaggies.
And I seriously doubt your claim that the next generation consoles will not support HDTV.
Did I claim that? I claimed that there would be no HDTV-ready consoles in the "immediate future" (i.e. the next two or three years). I claimed not that the PS3, YBox, and whatever Nintendo comes out with next would not support HDTV but rather that those consoles would not come out within the next year or two. Heck, the Cube hasn't even been out for a year.
Besides, doesn't a U.S. HDTV encoder cost a lot of money for 1. royalties on all the patents involved, and 2. lack of economies of scale?
Will I retire or break 10K?
Ray tracing isn't necessarily "doing things right" -- it has a lot of trouble with small details.
Of course, so do Z-buffers, and even A-buffers. But rasterization-based methods CAN be adapted to handle sub-pixel-sized details accurately, without having to supersample each pixel hundreds of times. Raytracers can't.
so if google says its so then it must be true
I am a dyslexic
but since I cant spell I put how I would phonetically spell dyslexic and that would be deltic sorry if you might have to think for that one
yes he was talking about script and so on but the story wasnt about that, it was about rendering power and pixar saying that all the UltraSPARCs they have not being overturned by a graphics card
on top of this its never wise to say never
its like saying that monkeys will never reproduce the works of shakespeare (-;
regards
john jones
That's like saying "yeah, we're using our state of the art renderfarm, to render what looks like a hand drawn flipbook made by an 8 year old." What good is it to have all that hardware if you're not going to actually take advantage of it by making it more realistic?!
Umm, sorry, but 80 hours per frame is a RIDICULOUS figure.
Ok, you said "up to" 80 hours. So let's assume on average 24 hours per frame, which is much lower than you stated, but lets assume that anyway. Let's also assume they're rendering at 30 fps (they render at higher frames per second than the film itself) which is probably lower than the truth. 60 seconds per minute. 90 minutes in the film (also a conservative estimate).
(30fps) * (60s/min) * (90min) = 162,000 frames rendered to make the film.
(162,000frames) * (24 hours/frame) = 3,888,000 hours.
(3,888,000 hours) * (1 day/24hours) * (1 year/365 days) = 443 years, 305 days.
AND that's using the amount 24 hours per frame. You said it was 80 hours per frame. If it were 80 hours per frame, that would be
1,479 years, 165 days.
Now, lets say they want to render it in a year. (which is probably longer than they take to render it, since a lot of the time they spend doing the work before the rendering).
Ok, so
(162,000frames)/(365days) = (443.836 frames/day)
(443.836 frames/day) * (1 day/24hours) = (18.49frames/hour)
(18.49frames/hour) * (1 hour/60 minutes) =(0.30822 frames/minute) = (3.244minutes/frame)
So it seems, according to these figures, that a frame should take about 3 minutes 15 seconds, give or take, depending how you alter my assumptions. But 80 HOURS per frame is so absurd!
P.S. Everything else you said makes sense, it's true, most animated movies are not made through ray-tracing (an exception is Ice Age).
I think an interesting and uncommented upon facet of all this mindblowing technology is how poorly utilised it all is. E.g. Photoshop, After Effects, and Flash do not have any acceleration support for GPUs. The GPU can do gaussian blurs in realtime, but if I want a gaussian-blurred layer in Photoshop I can't even do it non-destructively. Mac OS X 1.2's most intriguing feature is Quartz Extreme -- the integration of GPUs into the OS graphics core. Now moving around your anti-aliased, drop-shadowed, translucent window doesn't hit the CPU. We even get technology demos showing After Effects style compositing tasks being performed in real time, but where's the REAL After Effects (or Combustion, or whatever) in all this? It also begs the question, when will all this processing power be made accessible in a standardised platform-neutral AND (to the extent it's practical) application-neutral way? It seems like we're very close to having a massively parallel co-processor that could be doing video and audio compression as well as rendering Lara Croft's bosom (now one poly per pixel).
Well, it's getting real close.
This 3D package has it:
http://www.equinox3d.com
The first two scenes on he following page run around 4-30 frames per second, fully ray-traced (multiple reflections, refractions etc.) at low resolutions (~160x120) on an Athlon 2000XP.
http://www.equinox3d.com/News.html
The renderer will be released in a couple of weeks.
The program runs on Linux and it's free (shareware).
The author.
how about a few hundred thousand?
If you use Linux, please help development of Autopac
>>So it seems, according to these figures, that a >>frame should take about 3 minutes 15 seconds,
:)
>>give or take, depending how you alter my
>>assumptions. But 80 HOURS per frame is so absurd!
Life is absurd
I didn't say 80 hours for ALL frames, but they did peak at 80 hours on some frames. Get the ToyStoryII DVD and listen to the directors commentary track. They state it quite clearly.
>>What good is it to have all that hardware if
>>you're not going to actually take advantage of >>it by making it more realistic?!
Why? Whats the point in trying to produce an exact copy of reality? If thats what they wanted they could just go out and shoot some REAL plates with a real camera and it would be cheaper and faster than all this CGI nonsense....
I guess you think Monet and Van Gough were terrible painters because they weren't 'realistic'?
See my web site for what I've done. CGI houses have purchased that product.
Whether they state it or not, what you said is misleading. You were disagreeing with the idea that a frame takes only minutes to render. And if there were any frames that took 80 hours, then there must've been many frames that were *less* than 3 minutes, on average.
Score 1 "Offtopic"? WTF?
Or, are these people too thick to get sarcasm?
A.
DirectX is MUCH more. ... The real power of DirectX is that it is REALLY "easy" to implement a soft based on DirectX.
... :))
Sound, input, network, and so on
What we need is more than a open graphic library (openGL). We need audio, inputs, network, video, etc
(I'm not a woard, I just forgot my PWD
Also, you seemed to miss the point of my comment.
I just wanted to comment that realtime graphics will be behind prerender graphics as long as there is a polygon limits/shaderlimits etc etc. You can do ANYTHING in prerenders, you cant with RT graphics. Not for a looong time.
Maybe the next radion will be able to render ONE pretty looking eye as the one we are seeing in the artice, but could it render saaay 1000 of them in realtime? No.. i dont think so..
Large scenes will always chough in RT, and i would personally Loooooove to se the gfx chip which would render a scene with loads of visible light, polygons gallore and other effects. Say, a photorealistic soccer stadium for example.
This is doable in with 3d rendering software, but NOT in realtime.
What you wrote is misleading as well.
Pixar has a rendering farm of over 1000 machines, IIRC.
So the average time/frame can be much higher than 3 minutes, and my guess is that it probably was.
Using your earlier calculations with a 1000-machine rendering farm, the average time/frame could be up to 50 hours.
Those who sacrifice security to condemn liberty deserve to repeat history or something. - Benjamin Santayana
If they have a 1000 machine rendering farm and each machine takes 3000 minutes to render a frame, then it takes 3 minutes to render each frame. Why don't you just tell me that each machine is equivalent to a million abacuses, and it really takes 50,000,000 hours to render a frame...