FPS Killers List em
Moderator: Moderators
FPS Killers List em
Well I really need some thoughts from those in the mapping community regaurding the biggest killers of fps. Please list any thoughts you may have on the biggest cause/'s of a drop in fps.
Thank You
-GEN COBRA
Thank You
-GEN COBRA

-
Bjarne BZR
- Site Admin
- Posts: 3298
- Joined: Wed Feb 05, 2003 2:04 pm
- Location: Sweden
- Contact:
-Bad brush work i.e. 'Z-fighting' of overlapping brushes.
-Lots of patch meshes, curves, terrain patches in small areas.
-Lack of VIS LEAF GROUPS. Large outdoor areas CAN be done (Gun Assault) and keep good FPS, even with nearly 100% LOD, water, etc. BUT, you need to plan carefully and make use of VIS groups everywhere possible. Plan your farplane distance and work accordingly with VIS groups.
-Detail lots of stuff, anything not blocking a fairly large field of view, broken walls, trim, non-enity brushes forming window/doors/steps, etc.
-You CAN have large amounts of destroyed chucks laying about with LOD and such, but detailing, VISing and such all must be combined. Use the 'r_showtris 2' command to try to narrow down busy areas.
-When using VIS, don't have large brushes cross from one VIS leaf to another. This negates the VIS leaf advantage for that brush. Each VIS leaf ONLY hides what is entirely INSIDE it, so any protruding brushes are uneffected and add to your vis count. I find keeping sizes to a max of 1024 units works best. Make multiple brushes if necessary for longer runs and VIS accordingly.
-Sometimes you build something that looks like it will kill FPS and if you mix up the tools you get good numbers, and other times you think it should be smooth and you get horrible FPS... really a crap shoot of design that you need to go back and rework over and over to tweak the FPS. In my SoS1 map, I thought the FPS would tank...and it runs 80+ in virtually every area because of using all the methods mentioned... AND
-'caulk/sky' texture: IF you are really hurting to bump FPS, use this texture on your sky box. Ain't pretty, but you might gain 20% or more. It allows the engine to blend the fog/farplane smoothly with the sky and helps fade in/out your brush work. Eliminates 'popping' in/out of brushes at a distance.
I could go on and on, but that's some on my experience over the last year.
-Lots of patch meshes, curves, terrain patches in small areas.
-Lack of VIS LEAF GROUPS. Large outdoor areas CAN be done (Gun Assault) and keep good FPS, even with nearly 100% LOD, water, etc. BUT, you need to plan carefully and make use of VIS groups everywhere possible. Plan your farplane distance and work accordingly with VIS groups.
-Detail lots of stuff, anything not blocking a fairly large field of view, broken walls, trim, non-enity brushes forming window/doors/steps, etc.
-You CAN have large amounts of destroyed chucks laying about with LOD and such, but detailing, VISing and such all must be combined. Use the 'r_showtris 2' command to try to narrow down busy areas.
-When using VIS, don't have large brushes cross from one VIS leaf to another. This negates the VIS leaf advantage for that brush. Each VIS leaf ONLY hides what is entirely INSIDE it, so any protruding brushes are uneffected and add to your vis count. I find keeping sizes to a max of 1024 units works best. Make multiple brushes if necessary for longer runs and VIS accordingly.
-Sometimes you build something that looks like it will kill FPS and if you mix up the tools you get good numbers, and other times you think it should be smooth and you get horrible FPS... really a crap shoot of design that you need to go back and rework over and over to tweak the FPS. In my SoS1 map, I thought the FPS would tank...and it runs 80+ in virtually every area because of using all the methods mentioned... AND
-'caulk/sky' texture: IF you are really hurting to bump FPS, use this texture on your sky box. Ain't pretty, but you might gain 20% or more. It allows the engine to blend the fog/farplane smoothly with the sky and helps fade in/out your brush work. Eliminates 'popping' in/out of brushes at a distance.
I could go on and on, but that's some on my experience over the last year.
- chris_in_cali
- Sergeant
- Posts: 65
- Joined: Thu Jun 26, 2003 9:46 am
by default most brushes are structural its in their properties. read this tutorial on detail brushes.
http://www.planetmedalofhonor.com/rjuka ... orial.html
http://www.planetmedalofhonor.com/rjuka ... orial.html
- chris_in_cali
- Sergeant
- Posts: 65
- Joined: Thu Jun 26, 2003 9:46 am
Thanks a lot, that was helpful, but I don't quite understand how changing the setting has such a profound effect. There something said about structural items being compared against eachother, but I'm not positive on how setting the item to detail removes it from this comparison but remains a solid, visible object. Does this have to do simply with being used for the lightmap or not, or what?
vis runs through your map and says "ok if i stand in point a, i can see point b, but not point c. so when the player is at point a, ill draw point b, but not c." a detail brush is just one that vis passes through. if you have a solid brick structural wall, vis will say "ok i cant see past it to point b, so i wont draw point b from here." if you made it detail, vis would say, "ok i CAN see thru it to point b, so i will draw point b from here."
- chris_in_cali
- Sergeant
- Posts: 65
- Joined: Thu Jun 26, 2003 9:46 am
-
nuggets
- General
- Posts: 1006
- Joined: Fri Feb 28, 2003 2:57 am
- Location: U-england-K (england in the UK) :P
- Contact:
staircases, handrail's, ladders, shelving, etc...
all these kinda thing just make detail, making it detail saves on compile time bcus there's less vis areas present...
imagine drawing a brush in XY view
______
|........|
|........|
|........|
that's 1 vis area, 6 faces, 8 vertices and 8 edges, simple enough
but if you were to add another brush ontop of it, say a column
______
|........|
|...[]..|
|........|
that'd then create 4 vis areas on the 1st brush
______
|.....|..|
|..|[]|_|
|..|.....|
bloody hell that took some working out, but just by adding a second brush in the centre to one existing one, you've just multiplied the visdata by 5 on the one face
making it detail however, will not change visdata, so it'd stay as 1 vis area
all these kinda thing just make detail, making it detail saves on compile time bcus there's less vis areas present...
imagine drawing a brush in XY view
______
|........|
|........|
|........|
that's 1 vis area, 6 faces, 8 vertices and 8 edges, simple enough
but if you were to add another brush ontop of it, say a column
______
|........|
|...[]..|
|........|
that'd then create 4 vis areas on the 1st brush
______
|.....|..|
|..|[]|_|
|..|.....|
bloody hell that took some working out, but just by adding a second brush in the centre to one existing one, you've just multiplied the visdata by 5 on the one face
making it detail however, will not change visdata, so it'd stay as 1 vis area
hope this helps, prob not cos it's all foreign 2 me :-/
-
panTera
- Brigadier General
- Posts: 573
- Joined: Wed Jan 29, 2003 11:46 pm
- Location: The Netherlands
- Contact:
[http://www.nibsworld.com/rtcw/tutorial_ ... art1.shtml]
Some good tips from the guys here, but I'd just like to add that if there's one thing you should always try to avoid is using loads of tiny brushes in (wide) open areas. Sure, in a somewhat closed off hallway it might not be a problem, but when there's loads of tiny 'crap' for the engine to render at a distance it'll bog down.
Some good tips from the guys here, but I'd just like to add that if there's one thing you should always try to avoid is using loads of tiny brushes in (wide) open areas. Sure, in a somewhat closed off hallway it might not be a problem, but when there's loads of tiny 'crap' for the engine to render at a distance it'll bog down.


