If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.
![]() |
|
|
#1 |
|
Senior Member
Join Date: Feb 2002
Posts: 1,252
|
I just stumbled upen this demo which shows how to get soft shadows with stencil volumes like seen in SH3 and Axel Impact (:P). It's a rather interesting technique which gives a much more pleasing result than than regular hard edged volumes. Only problem in this case is significant ghosting. I wonder if there is any way to deal with that? Fafalada?
http://tfpsly.planet-d.net/english/3d/SoftShadows.html |
|
|
|
|
|
#2 | |
|
Senior Member
Join Date: Aug 2002
Posts: 2,742
|
Quote:
*Edit* Now that I've seen what is going on in this demo, I'm almost 100% sure it's not the same thing that is used in SH3. This is not the kind of 'ghosting' I had in mind. |
|
|
|
|
|
|
#3 |
|
Senior Member
Join Date: Feb 2002
Posts: 3,266
|
I think the best hack for soft shadow volumes is using a cluster of 12 lights like NV had shown. Though not so good for performance, but the hardware will only get faster.
|
|
|
|
|
|
#4 | |
|
Senior Member
Join Date: Aug 2002
Posts: 2,742
|
Quote:
|
|
|
|
|
|
|
#5 | ||
|
Senior Member
Join Date: Feb 2002
Posts: 3,266
|
Quote:
Quote:
|
||
|
|
|
|
|
#6 |
|
Naughty Boy!
Join Date: Feb 2002
Posts: 6,802
|
12 shades is pretty good, you only need it to soften the edges of the shadow. The body of the shadow is normaly one shade anyway.
__________________
I've got a working quantum computer prototype in my backyard. The only problem is, it crashes at temperatures above absolute zero therefore is not very overclocker friendly. |
|
|
|
|
|
#7 | |||
|
Member
Join Date: May 2002
Location: Santa Clara
Posts: 584
|
Quote:
|
|||
|
|
|
|
|
#8 |
|
Senior Member
Join Date: Feb 2002
Posts: 1,252
|
V3:
> I think the best hack for soft shadow volumes is using a cluster of 12 > lights like NV had shown. I disagree. It's a rather crude hack and a real performance killer. PowerVR has a demo of said technique (only goes up to 8 volumes though) and the quality of the shadows is far below what is achieved by the other one. |
|
|
|
|
|
#9 | |
|
Me me me
Join Date: Apr 2002
Posts: 15,348
|
Quote:
agreed. even thinking about using 12 lights to have one shadow is just plain ridiculous, unless your chip was a REAL monster... in which case people would still employ much more efficient techniques... |
|
|
|
|
|
|
#10 | |
|
Senior Member
Join Date: Feb 2002
Posts: 2,767
|
Quote:
In other words, in static pictures, it should generate results identical to the plain multi-volume approach. It's a rather cunning approach to the problem though, I have to say. That PVR demo wasn't casting on any kind of textured scene, which made all the banding between mutliple volumes far more apparent then these pics. And Marc is right, it's not really the same thing as what we use either. |
|
|
|
|
|
|
#11 |
|
Moderator
Join Date: Feb 2002
Location: Redmond, WA
Posts: 3,149
|
I agree with Faf,
this is just a hack, basically it distributes the load accross multiple frames. In a static scene it should look pretty similar to the NVidia demo, and in moving scenes I would expect ghosting artifacts which there is just no way to address. I have a scribble on a piece of paper in my office that tends to imply that you can do soft shadows in a single pass with a stencil buffer, but it needs to be >8 bits deep when occluder density gets high. It's sort of similar in approach to MS's volumetric fog demo in the DX9 SDK. After E3 when I get a little breather I might try and get it working. |
|
|
|
|
|
#12 |
|
Member
Join Date: Feb 2002
Location: LA, California
Posts: 825
|
a paper which may be of interest:
http://www.ce.chalmers.se/staff/toma...t_egwr2002.pdf Regards, Serge |
|
|
|
|
|
#13 | |
|
Senior Member
Join Date: Feb 2002
Posts: 2,767
|
Quote:
But, just curious, since you mentioned occluder density - shouldn't drawing stencil counting geometry in single pass (switching inc/dec flag per poly) help alleviate this need for higher precision? |
|
|
|
|
|
|
#14 |
|
Moderator
Join Date: Feb 2002
Location: Redmond, WA
Posts: 3,149
|
In my case I need to be able to count fractional entry into the volume, aswell as total entries.
I might be able to do it with a combination of dest alpha and stencil, but I don't really have access to both of them in the same place which makes it a bit tricky. I might also be able to do it with render to a texture and rereading it for a final pass, I still need to think through the implementation a little. It should be pretty easy to do on a DX9 class card, but I don't have a machine with one in and I'm a sucker for a challenge. |
|
|
|
|
|
#15 | |
|
Member
Join Date: Jul 2002
Posts: 481
|
Quote:
|
|
|
|
|
|
|
#16 | |
|
Moderator
Join Date: Feb 2002
Location: Redmond, WA
Posts: 3,149
|
Quote:
|
|
|
|
|
|
|
#17 | |
|
Senior Member
Join Date: Feb 2002
Posts: 3,266
|
Quote:
|
|
|
|
|
|
|
#18 | ||
|
Tea maker
Join Date: Feb 2002
Location: In the Island of Sodor, where the steam trains lie
Posts: 4,379
|
Quote:
__________________
"Your work is both good and original. Unfortunately the part that is good is not original and the part that is original is not good." -(attributed to) Samuel Johnson "I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." Alan Kay |
||
|
|
|
|
|
#19 |
|
Registered
Join Date: Nov 2004
Posts: 1
|
aargh this is horrible. how much fillrate do you have to burn?
image-based techniques reign supreme again. basically, the method i'm using is: - render your volumes as usual. - switch render target to a clean white surface. - render a single big black quad over the entire surface, using the stencil you made previously. NO Z-WRITE. (actually, its more complex, what you draw into the surface than this, but big and black will work OK) - very aggressively oversample that buffer - switch back to your main render target - render the big black quad using subtractive with saturation. sound ok? it sounds a bit crazy to me, but it works nice. 200fps+ on my r9600pro with a bunch of lights. if subtractive is costly on your particular GPU, do a white-on-back multiplicative. still playing with this, but it does look nice. you can do better if sampling your framebuffer isnt gonna cost you the entire world in performance. things like applying a sobel filter with edge detection onto your z-buffer, do you can do hacked-aniso on the oversampling. email me and ill hook you up with some screens and hopefully a demo, but it needs a dx9 card at the mo. codemonkey@dont-spam-me@orcon.net.nz -codemonkey |
|
|
|
|
|
#20 | |
|
Member
Join Date: Dec 2002
Posts: 503
|
Quote:
__________________
Jov |
|
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| New raytraced shadows demo | Humus | 3D Architectures & Chips | 33 | 31-Aug-2004 23:26 |
| Pixels.. | nwatts | 3D Architectures & Chips | 148 | 03-Feb-2004 12:15 |
| Soft shadows in real time using penumbra... | Reverend | 3D Architectures & Chips | 7 | 23-Dec-2003 15:34 |
| AnandTech meets image quality | Tim Murray | 3D & Semiconductor Industry | 51 | 14-Dec-2003 12:12 |
| Mark Rein comments on the 'UT2K3' "leaked" demo | Aurra_Sing | 3D Architectures & Chips | 0 | 11-Jun-2002 22:25 |