Facebook Twitter YouTube Frictional Games | Forum | Privacy Policy | Dev Blog | Dev Wiki | Support | Gametee


Thomas, 2008-06-18, "Character version 2.0"
starstutter Offline
Junior Member

Posts: 8
Threads: 0
Joined: Jun 2008
Reputation: 0
#17
RE: Thomas, 2008-06-18, "Character version 2.0"

Thomas Wrote:Also your technique seems to not take advantage of hardware PCF.

I might be missing something though, so please correct me Smile

True, it doesn't take advantage of hardware PCF, but I have not attempted to modify it to use the method. Yes it does add an extra step and it is initially slower, but the idea scales with scene complexity and the number of shadow casters.

Using this method is the same theory behind deferred lighting where shadows are applied as a post-process. Yes, there is an initial extra step, but it is a very cheap one and saves loads of calculation for the complex shadow processing.

Like deferred lighting, the starting framerates are initially lower. Like in my example of the fps gains, I should have provided better comparison. I attempted to do a 2048 shadow map with 11 samples and a post blur with a forward techniqe, but the result leveled out to about 39 fps, wheras with the deferred shadowing it was 62 fps. This is basicly because so many texture samples are saved.

Because of the intermidiate step the basic form of the method is slightly slower. In the first test of deferred shadowing, I had a 1024 SM with 8 samples and no blur (as was the test with forward shadowing), the results were leveling out to 64 fps, one fps lower than the forward technique. So there is little benefit gained if lower resolution and sample counts are used, but as mentioned before the method scales extremley well with scene complexity and shadow quality.

As for the last part, maybe we are using slightly different methods for lighting. The way I do mine is by, drawing to g-buffers, then on the lighting pass drawing a geometric object on the screen that is the screen-space size of the light. Like a point light is a sphere, a spot light is a cone ect. In the shader I project the g-buffer onto the geometry using the cameras projection matrix (projective texturing) and preform lighting from there.

With the deferred shadowing, I do the same thing except I project the frame rendered in step #2 onto the geometry and the scene is not drawn again. So, no shadowing is actually applied directly to the scene geometry.

btw, please tell me if I begin to be annoying lol. I just want to suggest but not push anything.
06-30-2008, 11:48 PM
Find


Messages In This Thread



Users browsing this thread: 1 Guest(s)