Game Development Community

Advanced Lighting's affect on FPS (Frames Per Second)

by Scot Kinney · in Torque 3D Professional · 10/20/2009 (7:02 pm) · 16 replies

Should I be losing 30 FPS using AL vs BL in a level with just terrain, water, ground cover and a scatter sky?? I created the level with AL on and it looks great. But when I checked FPS I realized I was down around 13.5. I don't think that'll fly once I add in trees, buildings and players. So, I tried it with Basic Lighting and the frames jumped to over 40. The problem is my terrain suddenly looked weird, some of the settings seemed to go haywire on one of the texture layers and it just doesn't look as great overall. Should I ignore the poor FPS and just keep going with the knowledge that the FPS will be vastly improved in the next release or should I set it to Basic Lighting and try to fix the terrain layer issues?

About the author

www.AlterVerse.com - Game progress blog at bloodclans.tumblr.com - Windows 7 Ultimate SP1 Intel Core 2 Duo CPU @ 3Ghz 4 GB RAM DirectX 11 Nvidia GeForce 9800 GT - 1GB RAM


#1
10/20/2009 (7:35 pm)
Scot, please post your video card specs.

In general, (this should be put somewhere in the docs), AL is designed for DX10 generation hardware (Nvidia 8800 or better). Even with just a basic zone you will have to pass shadows over the terrain and that alone will cause a very large difference in cost between AL and BL. You can disable this by disabling shadows on the sun/scatter sky object.

Changing light managers will cause issues as well, it is best to change the manager before starting up a mission or if you do it mid mission restart the application. Hopefully this gets resolved or at least a warning added letting people know that it can produce some undesireable results.
#2
10/20/2009 (7:37 pm)
If you get ~40 frames per second on BL I assume you're on a low-end GPU. Advanced Lighting is designed around mid-range and high-end cards, specially the real-time shadows. What modern games can you run on your PC, and at which settings/framerates?
#3
10/20/2009 (7:44 pm)
I added my specs to my profile. I don't think it's a low-end GPU but maybe it is comparatively, or maybe it's not working correctly. I don't really play other games.
#4
10/20/2009 (8:40 pm)
Yeah something is up Scot, 9800 is a decent card. Do you also have SSAO/Light Rays turned on?
#5
10/20/2009 (8:46 pm)
I have Post FX checked, SSAO and Edge Aliasing. But not HDR or Light Rays. I'm really not even sure what all of those options do. My Display driver says NVIDIA GeForce 9800 GT (D3D9). Resolution is at 1680 1050 Bit Depth 32. Texture Quality Auto.

I turned off shadows on the scattersky and turned off SSAO and doubled my FPS to an average of 26.
#6
10/20/2009 (9:28 pm)
Yeah Scot those numbers do not seem to be adding up. Anyone else have a 9800 GT or an 8800 GTX with metrics they can report?
#7
10/21/2009 (2:26 am)
I'm running an NVidia 9600 GT and with over 100 trees, a dozen or so buildings some rivers etc in the level I get the following (I haven't done any serious tweaking yet):

(note these are when running through the buildings and trees I get a lot higher if I stare into space)

Basic Lighting: approx 60fps
Adv Lighting Post FX only: 45fps
Adv lighting Post FX, SSAO, Anti-edge aliasing: 30-35fps
Adv Lighting as above with light rays: 30fps
#8
10/21/2009 (11:11 am)
I have an imported 1024 terrain too with several layers. I guess 6 textures at most though. ScreenError is set at the default 16.
#9
10/21/2009 (4:03 pm)
i have a NVidia 8800 gts

with the blank room i get 200-230fps for AL 500-560fps with BL

burg demo i get 80-95fps for AL 280-335 with BL

i also did some tests with AL with changeing the texture for the sun from 1024 to 2048

blank room i get 180-195fps and burg i get 80-95 which is the same as above.
#10
10/21/2009 (4:26 pm)
In the Blank Room with everything unchecked in the Game Options:
300-350 with Basic Lighting
170-180 with Advanced Lighting
#11
10/21/2009 (7:29 pm)
Could you do a metrics("fps video shadows") and post some of that data? Does your groundcover have billboards only? A lot of things that can go into the numbers you are getting.
#12
10/21/2009 (8:54 pm)
metrics(video) gives me PolyCount: 1779300 DrawCalls: 512 RTChanges:19
metrics(shadow) is all 0's
metrics(FPS) is FPS: 25 max: 2306.4 min: 1.2 mspf: 200

Groundcover is billboards only and if I delete it I only gain about 2 FPS
#13
10/22/2009 (12:17 am)
Quote:Should I be losing 30 FPS using AL vs BL
Yes... you would.

In AL it takes twice the draw calls and alot more fillrate to render the scene. Sloppy things you can get away with in a normal forward renderer like not making LODs or not compressing your textures will kill you in a deferred renderer like in AL.
#14
10/22/2009 (4:19 am)
Also you mentioned a river, reflections are another pass (maybe even more), rendering 1 779 300 polys, more than once a frame will also slaughter frame rate.
#15
10/22/2009 (2:01 pm)
So if you compare my results in the blank room
300-350 with Basic Lighting
170-180 with Advanced Lighting
with Brandon's:
500-560fps with BL
200-230fps with AL
Would you say I have a problem with my video card?
#16
10/22/2009 (9:48 pm)
@Scot - Here is how i check these things...

Looking at the Nvidia website it says the following for a GeForce 9800 GT...

Memory - 512MB
Memory Interface Width - 256-bit
Memory Bandwidth (GB/sec) 57.6

Now for Brandon's NVidia 8800 gts...

Memory - 640MB or 320MB
Memory Interface Width - 320-bit
Memory Bandwidth (GB/sec) - 64

The rest of the specs your card wins out. So short of a bad configuration or driver on your system... i suspect Torque 3D likes the wider 320bit memory interface.

Its hard to say for sure without alot more testing.