Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Dima

Carmack comments on realtime and offline rendering

Recommended Posts

I wouldn't say that it's exactly DOOM III related, but it's from our very own guy :)

Source: slashdot

There are some colorful comments here about how studios will never-ever-ever replace tools like renderman on render farms with hardware accelerated rendering. These comments are wrong.

The current generation of cards do not have the necessary flexibility, but cards released before the end of the year will be able to do floating point calculations, which is the last gating factor. Peercy's (IMHO seminal) paper showed that given dependent texture reads and floating point pixels, you can implement renderman shaders on real time rendering hardware by decomposing it into lots of passes. It may take hundreds of rendering passes in some cases, meaning that it won't be real time, but it can be done, and will be vastly faster than doing it all in software. It doesn't get you absolutely every last picky detail, but most users will take a couple orders of magnitude improvement in price performance and cycle time over getting to specify, say, the exact filter kernel jitter points.

There will always be some market for the finest possible rendering, using ray tracing, global illumination, etc in a software renderer. This is analogous to the remaining market for vector supercomputers. For some applications, it is still the right thing if you can afford it. The bulk of the frames will migrate to the cheaper platforms.

Note that this doesn't mean that technical directors at the film studios will have to learn a new language -- there will be translators that will go from existing langauges. Instead of sending their RIB code to the renderfarm, you will send it to a program that decomposes it for hardware acceleration. They will return image files just like everyone is used to.

Multi chip and multi card solutions are also coming, meaning that you will be able to fit more frame rendering power in a single tower case than Pixar's entire rendering farm. Next year.

I had originally estimated that it would take a few years for the tools to mature to the point that they would actually be used in production work, but some companies have done some very smart things, and I expect that production frames will be rendered on PC graphics cards before the end of next year. It will be for TV first, but it will show up in film eventually.

John Carmack

Share this post


Link to post

Cool, but I don't see the big deal. Something involving graphics is going to move from being done in software to being partially done in hardware? Does this surprise anyone?

Share this post


Link to post

Well no, but the point is that in a few years you won't need dozens of expensive workstations to do Pixar-quality graphics. That's good news for companies who can't afford those workstations, though of course you'd be lucky to find a small company that has the talent on board to design and implement something that approaches Pixar quality.

Share this post


Link to post

Thanks for the heads up, Dima. I heard Carmack mention that the next engine after Doom3 will probably be targeted somewhere around this tech level, with fully generalized geometry and fragment languages. In his newest plan file, he already mentions (which is a total surprise to me) support for OpenGL 2.0 in Doom3. I didn't even know any cards supported this in any shape or form at this time.

(barely restrains self from talking about hardware accelerated tessa-you-know-what)

The major point here is that in the future, it won't be a matter of of one card having effects that another doesn't, but simply how fast one hardware implemtation is at certain things vs. another. For example, Doom3 would look exactly the same across ALL cards. It would be a bit slower on some, but Carmack wouldn't have to go out of his way to make things "fit" on lower end cards-- they'd just work optimally well (in the ideal case). In real life, you'd still have to detect what card it is, and perhaps do some high-level balancing, but the work will be much, much more geared on figuring out what the algorithm for something is, rather than on how to fit that algorithm into the hardware. That's what the big deal is, I think.

Share this post


Link to post
DooMBoy said:

Man, this hi-tech hubbub hurts my head....

Then don't try to read it.

Share this post


Link to post

EsH:

Carmack said that Doom3 will support OpenGL 2.0 as EsH has said.
This is true because OpenGL 2.0 will be backward compatible with the
current version (1.3 I think). OpenGL might streamline it's existing pipeline for GL 2.0 which means that existing OpenGL extensions (commands to hardware) may run through the software-hardware pipeline faster.

Also because Carmack is on the OpenGL ARB (Architectural Review Board), it mightn't be silly to assume that he knows something that we dont. For example, new command syntax which he might build into the engine in code but lie dormant until OpenGL 2.0 is fully supported by hardware. I do remember Carmack saying that Doom3's performance and quality will increase with the next generation of cards (could this be what he is talking about?)

Share this post


Link to post

Hi, Dubh.

Dubh said: OpenGL might streamline it's existing pipeline for GL 2.0 which means that existing OpenGL extensions (commands to hardware) may run through the software-hardware pipeline faster.

That would be really cool, but isn't this more a function of the individual vendors implementations of the interface, rather than some reference "streamlining"? Or is that what you meant, that the individual vendors will be motivated by the new interface to optimize their drivers a bit more? Could you explain?


Dubh said: Also because Carmack is on the OpenGL ARB (Architectural Review Board), it mightn't be silly to assume that he knows something that we dont. For example, new command syntax which he might build into the engine in code but lie dormant until OpenGL 2.0 is fully supported by hardware. I do remember Carmack saying that Doom3's performance and quality will increase with the next generation of cards (could this be what he is talking about?)


That's a cool observation-- this is the sort of clever, on-top-of-things programming that Carmack might do. The one thing that sort of makes me skeptical of this, though, is that Carmack really wants to push GL.2, and if he did code some secret "command syntax" path, it would have been up in a plan file, for all to see and learn from. By being open about it, Carmack would encourage vendors to implement the new version of OpenGL by allowing the public to know that Doom3 will run potentially better using it, and that it's there to be exploited. I agree with you, entirely, though-- if he hasn't done it already, then he probably will... (However, I think when Carmack said that Doom3 will increase in performance with the next generation of cards, he was talking strickly hardware-- more textures, more fillrate, more shader instructions. GL.2 is a wonderful, practical abstraction of 3D hardware-- but it won't improve the hardware's performance beyond what the card can actually do, and you can access this performance just as well using the current GL standard w/ extentions, I believe. What GL.2 can potentially improve is the simplicity and flexibility of the front end code, which might allow for more/better effects and faster excecution on the CPU side of things. What do you think? ).

Share this post


Link to post
gatewatcher said:

this is kinda off-topic, but has John Carmack or anyone else from ID ever been to the DW forums?

The Guild of Moderators has reason to believe Christian Antkow browsed the forum a few times. And of course, Doomboy is really John Carmack.

Share this post


Link to post
Lord FlatHead said:

The Guild of Moderators has reason to believe Christian Antkow browsed the forum a few times. And of course, Doomboy is really John Carmack.

well, there is a xian. but i don't think he is Christian Antkow =P

and of course John Carmack is DooMBoy, i mean look closely at all his game codes. for within the codes you will find secret lines such as "fucking zombie-ass attack the cuntscab fucking doom guy and piss". heh.

Share this post


Link to post

"That would be really cool, but isn't this more a function of the individual vendors implementations of the interface, rather than some reference "streamlining"? Or is that what you meant, that the individual vendors will be motivated by the new interface to optimize their drivers a bit more? Could you explain?"


This is from an article that I read, it should answer your questions..:

**********

The most immediate step to creating an advanced OpenGL standard will be to combine backward compatibility with OpenGL 1.3, while maintaining parity with DirectX by incorporating required features such as vertex and pixel processing,and memory management.

In phase one, OpenGL will maintain complete backward compatibility with Open GL 1.3. In order to accomplish this, OpenGL 2.0 will consist of the existing functionality of OpenGL 1.3, combined with new functionality in a completely compatible way. The advantage of this process is that it will also start streamlining the tangle of extensions that have grown up around the ARB's stagnated progress. Also, the implementation of hardware programmability provides a much better path for integrating existing extensions.

The next step will be to synthesize a "Pure OpenGL 2.0" that provides a more streamlined API for developers. This will be accomplished by documenting certain OpenGL features as "legacy" features, and by educating developers to use the more flexible programmable features, rather than the fixed functionality features. *************

Check the article out EsH, it's pretty cool!

http://www17.tomshardware.com/graphic/02q1/020222/

Worth the read.
By the way, nice talking to you.....

Dubh

Share this post


Link to post
Lord FlatHead said:

And of course, Doomboy is really John Carmack.

ROFLMAO, my stomache hurts..

Share this post


Link to post

Heh, I am teh Carmack!!!!!!!!111
++++<<<>..<<>>>>>+++fuckshitpisscuntcab+<>>><<>><>>>>....

Share this post


Link to post
DooMBoy said:

++++<<<>..<<>>>>>+++fuckshitpisscuntcab+<>>><<>><>>>>....

ROFLMAO! DooMboy code kicks ass. thanks DB!

Share this post


Link to post
DooMBoy said:

Heh, I am teh Carmack!!!!!!!!111
++++<<<>..<<>>>>>+++fuckshitpisscuntcab+<>>><<>><>>>>....


Very reassuring to see Doom III in such a safe pair of hands.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×