From: Matthias H. <mh...@su...> - 2005-07-28 15:08:56
|
On Jul 27, 05 17:14:25 -0400, Patrick McFarland wrote: > On Wednesday 27 July 2005 04:54 pm, Ian Romanick wrote: > > > > Also, what stops you from splitting up a shader, and running the peices > > > back to back over multiple passes? Can't you emulate longer shaders doing > > > that? No. Temporary registers are stepping in your back. And even with Multiple render targets (does the R200 support that already?) you wouldn't have enough targets for the available number of registers. And you do not *want* to support that. It would be dog slow. Better let the application choose to use a render path that does not need pixel shaders, and give you a decent frame rate at worse quality. It can only do so by recognizing that your card does *not* support pixel shader. The only valid approach would be to create another pixel shader extension, that only promotes features R200 is able to implement. Have fun to hack this yourself! It is tons of work. And there's no application out there that would use it. > > So, I looked into this really deeply in the past for other things. The > > problem is it gets *very* hard to deal with framebuffer blend modes. If > > you have an arbitrary triangle list, triangles in the list may overlap. You *could* work with offscreen memory and per-triangle multiple passes. You don't want to, though. > So, how many games use blend modes other than dst=src? Also, even if it isn't All. > > This, BTW, is what ATI's "fbuffer" in all about. > > I'm trying to find more information about this "fbuffer", but Google isn't > being too friendly. It's not Google's fault. Back in University I used to hack a lot for my PhD thesis using latest OpenGL features. fbuffer is something ATI used in advertizing and nowhere else. They claim they can store the intermediate pixel shader state in this fbuffer and make multipass shaders work this way transparently. I doubt it ever worked, because you shouldn't have instruction limits in this case, but you have, and much smaller limits than the GeForce has. I also think to remember that fbuffer advertizement was only added with R300. So no help for R200. > Patrick "Diablo-D3" McFarland || pmc...@do... > "Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd > all be running around in darkened rooms, munching magic pills and listening to > repetitive electronic music." -- Kristian Wilson, Nintendo, Inc, 1989 I hate to say it, but some seem to do ;->>> CU Matthias -- Matthias Hopf <mh...@su...> __ __ __ Maxfeldstr. 5 / 90409 Nuernberg (_ | | (_ |__ ma...@ms... Phone +49-911-74053-715 __) |_| __) |__ labs www.mshopf.de |