Welcome, Unregistered.

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.

Reply
Old 14-Jan-2008, 13:40   #1
sqrt[-1]
Junior Member
 
Join Date: Dec 2004
Posts: 16
Icon Idea Light Indexed Deferred Rendering demo + paper

Against my better judgment, I though I would post my paper and demo here you you guys to tear apart.

This is a deferred lighting approach that simply assigns each light a unique index and then stores this index at each fragment the light hits, rather than storing all the light or material properties per fragment. These indexes can then be used in a fragment shader to lookup into a lighting properties table for data to light the fragment.

This technique can be broken down into three basic render passes:

1) Render depth only pre-pass
2) Disable depth writes (depth testing only) and render light volumes into a light index texture.
Standard deferred lighting / shadow volume techniques can be used to find what fragments
are hit by each light volume.
3) Render geometry using standard forward rendering – lighting is done using the light index
texture to access lighting properties in each shader.

What this achieves is the main advantages of deferred rendering (complex light object scene interactions) with ways around the disadvantages (fat buffer sizes, MSAA and transparency issues)

This technique has a obvious down side of limiting the number of lights that can hit a fragment - but this can be easily managed in a game editor context.
However, I think artists would prefer to have as many non-shadowing lights as they want and deal with overlap issues than the current situation of X lights per object and having to break up objects into small pieces.

Read the full paper here:
http://lightindexed-deferredrender.g...ighting1.1.pdf

If you have an Nvidia card you can get the demo here:
http://lightindexed-deferredrender.g...ndering1.0.zip
sqrt[-1] is offline   Reply With Quote
Old 15-Jan-2008, 23:13   #2
Humus
Crazy coder
 
Join Date: Feb 2002
Location: Stockholm, Sweden
Posts: 3,134
Send a message via ICQ to Humus Send a message via MSN to Humus
Default

Sweet! Runs at a full 20fps on my 6600.

Any particular reason why it doesn't run on ATI, or is it merely that it's only been tested on Nvidia? I've read the paper and there doesn't seem to be anything fancy required that would prevent it from working on ATI, although I got an error message on a shader on load. Haven't tried debugging it.
__________________
[ Visit my site ]
I speak for myself and only myself.
Humus is offline   Reply With Quote
Old 16-Jan-2008, 03:20   #3
sqrt[-1]
Junior Member
 
Join Date: Dec 2004
Posts: 16
Default

Yeah it has only been tested on Nvidia.

The only issues is on ATI is it would fall back to using the stencil approach instead of depth bounds when rendering the light spheres.

If someone wants to debug on ATI , I would be happy to update it.
sqrt[-1] is offline   Reply With Quote
Old 17-Jan-2008, 23:03   #4
Humus
Crazy coder
 
Join Date: Feb 2002
Location: Stockholm, Sweden
Posts: 3,134
Send a message via ICQ to Humus Send a message via MSN to Humus
Default

I've tried debugging it a bit yesterday, but there appears to be multiple problems. I got it to load all shaders and run without GL errors, but rendering is still broken for some reason. I'll give it another shot tomorrow.
__________________
[ Visit my site ]
I speak for myself and only myself.
Humus is offline   Reply With Quote
Old 19-Jan-2008, 22:54   #5
corysama
Member
 
Join Date: Jul 2004
Posts: 109
Default

Very nice!
Runs 12-15fps on a 7600GS@1920x1080. 60fps@575x575.

I've found deferred rendering to be very interesting because we always need more lights, but I can't stomach cutting back on light models (diffuse, specular, anisotropic, subsurface, etc...). This is a nicely hybrid technique that brings us closer to capturing the best of both forward and deferred techniques.
__________________
The opinions expressed herein are my own personal opinions and do not represent nAo's employer's view in any way.
corysama is offline   Reply With Quote
Old 26-Jan-2008, 08:19   #6
sqrt[-1]
Junior Member
 
Join Date: Dec 2004
Posts: 16
Default

Demo has now been updated with ATI support (thanks Humus) and uses moving lights by default.
New link:
http://lightindexed-deferredrender.g...ndering1.1.zip
sqrt[-1] is offline   Reply With Quote
Old 26-Jan-2008, 13:52   #7
Bludd
Eric the Half-a-bee
 
Join Date: Oct 2003
Location: The cat detector van from the Ministry of Housinge
Posts: 1,604
Default

I get 60 FPS with my 8800 GTX @1920x1200 4xFSAA and 30 FPS with 8xFSAA which is a strange halving of FPS.
Bludd is offline   Reply With Quote
Old 26-Jan-2008, 20:47   #8
Andrew Lauritzen
AndyTX
 
Join Date: May 2004
Location: British Columbia, Canada
Posts: 1,061
Default

Quote:
Originally Posted by Bludd View Post
I get 60 FPS with my 8800 GTX @1920x1200 4xFSAA and 30 FPS with 8xFSAA which is a strange halving of FPS.
Vsync?
Andrew Lauritzen is offline   Reply With Quote
Old 26-Jan-2008, 21:13   #9
Bludd
Eric the Half-a-bee
 
Join Date: Oct 2003
Location: The cat detector van from the Ministry of Housinge
Posts: 1,604
Default

Quote:
Originally Posted by AndyTX View Post
Vsync?
Yes, probably, but it is not forced in the drivers and I found no way of controlling it in the demo settings.
Bludd is offline   Reply With Quote
Old 28-Jan-2008, 21:00   #10
fellix
Senior Member
 
Join Date: Dec 2004
Location: Varna, Bulgaria
Posts: 1,706
Send a message via Skype™ to fellix
Default

Thanks for the ATi support!
Anyway, on the matter now:

> Radeon HD3870 @ 850/2500 MHz;
> Catalyst 8.1/Vista x86;
> 1600*1200 & 8xAA;

The above setup draws 114 fps with deferred lighting on and just 37 with the multi-pass path. Those numbers are taken from the Static Lights scene.
Didn't bother to test without AA, though.

ALU:TEX ratio seems to be 5:1.
__________________
"Releasing a game in 2010 without AA is a completely foreign concept to me. If the technique you're using makes it impossible to use AA then you're using the wrong technique." -- Humus

Last edited by fellix; 28-Jan-2008 at 21:11.
fellix is offline   Reply With Quote
Old 30-Jan-2008, 04:42   #11
Farid
Artist formely known as Vysez
 
Join Date: Mar 2004
Location: Paris, France
Posts: 3,784
Thumbs up

Great work, sqrt.

With that said, this thread desperately lacks pictures and other screenshots! So, folks, let's try to update the thread with some visuals of some sort.
__________________
- Power corrupts and absolute power is kinda neat.
- If at first you don't succeed, put it out for beta test.
--Internets
Farid is offline   Reply With Quote
Old 30-Jan-2008, 07:20   #12
TimothyFarrar
Member
 
Join Date: Nov 2007
Location: Santa Clara, CA
Posts: 427
Default

Screenshot,

TimothyFarrar is offline   Reply With Quote
Old 30-Jan-2008, 08:46   #13
fellix
Senior Member
 
Join Date: Dec 2004
Location: Varna, Bulgaria
Posts: 1,706
Send a message via Skype™ to fellix
Default

I've made a video sequence here.
__________________
"Releasing a game in 2010 without AA is a completely foreign concept to me. If the technique you're using makes it impossible to use AA then you're using the wrong technique." -- Humus
fellix is offline   Reply With Quote
Old 08-Feb-2008, 02:56   #14
Albuquerque
Red-headed step child
 
Join Date: Jun 2004
Location: Guess ;)
Posts: 2,368
Default

My results:

Vista64, Cat 8.1 WHQL, two PowerColor 3870's at 850 / 1250, 1680x1050 full screen rez, Static light scene

Scores are AA Level - Deferred / Static.

CF Disabled:
0 - 148 / 49
2 - 131 / 46
4 - 125 / 45
8 - 119 / 39

CF Enabled:
0 - 147 / 49
2 - 130 / 46
4 - 125 / 45
8 - 118 / 39

Doesn't seem to get much from crossfire
__________________
Quote:
Originally Posted by _xxx_ - January 25th, 2010 View Post
Get some supplies that can last a month or two, get some water cleaning tabs and be sure to have enough ammo at home. Within the next couple of months, you'll need it.
Quote:
Originally Posted by _xxx_ - June 9th, 2010 View Post
A bit more serious shortages, but let's just wait a few weeks. And riots are about to begin too.
Albuquerque is offline   Reply With Quote

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 10:20.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.