Wesley Tack Posted February 23, 2007 Report Posted February 23, 2007 Hello, I've done some research on swap buffers, and what I could find is that it's an overuse of shaders? I seem to have this in a lot of areas in my map, even in this hallway where only the hallway is rendered, the entire level is cut by the visleafs, and yet still I get these low frames and swap buffers at a maximum. Not even any shaders in that scene, other than the spec maps on that wall and some windows. Even when I am facing the edge of the map (behind the wall is void) I get swap buffers at maximum? Does anyone have an idea how to fix this, what I should be looking for? It's the same before or after I do a buildcubemaps as well (if thats any help). Hopefully someone can point me in the right direction as to where I got to look. I am planning a playtest session this Sunday, and I hoped to get this problem under control by then. Thanks !
Defrag Posted February 23, 2007 Report Posted February 23, 2007 AFAIK it indicates you're fillrate bound. I.e. too many / complex per-pixel calculations going on such as refractive & reflective water, specular reflections, normal calculations etc. It also tends to go up a lot when you're running high levels of AA and your graphics card can't keep up. Try doing mat_specular 0, mat_bumpmap 0 (can't remember the exact command for that) and turning off AA to see if it improves. If it does, then see what you're using in your map that could possibly be causing it. If you're just randomly getting this framerate death, then it's probably some kind of weird glitch (pretty sure I've seen the same thing at one time or another). Try sending your map to someone else and see if it happens for them too?
Wesley Tack Posted February 23, 2007 Author Report Posted February 23, 2007 I'll do the command stuff and test again. If it's still there I'll ask during playtesting how it looks for other people. My map doesn't have any water btw, mostly specs is what could be causing it as far as I know. I'll dig some more Thanks for the info!
Wesley Tack Posted February 23, 2007 Author Report Posted February 23, 2007 Ok, did all the commands that seemed worth testing: r_drawdisp 0 r_drawworld 0 r_drawstaticprops 0 r_drawentities 0 r_drawropes 0 r_dynamic 0 r_3dsky 0 mat_bumpmap 0 mat_specular 0 With all these turned off I still got that high swap buffer. It's weird cause it mostly happens when I'm actually looking at less content, like in the screenshots below, I'm looking into the void and thats when the swap buffers are highest, and when I'm looking at the level brushwork everything turns back to normal. Same thing for interior area's, where the swap buffers usually go up, and when I get back outside they go down again. I'll see it goes during playtesting, but it's a mystery to me so far :/ Void shot: http://users.pandora.be/simon.wt/swapbuffers_2.jpg Brush shot: http://users.pandora.be/simon.wt/swapbuffers_1.jpg
Ginger Lord Posted February 23, 2007 Report Posted February 23, 2007 Any programs running in the background?
Wesley Tack Posted February 26, 2007 Author Report Posted February 26, 2007 no, It's just my 3 year old computer having a hard time playing the game at 1920*1200, even though swap buffers are at max. it still plays smooth... So I'm not gonna pay anymore attention to it for now. Thanks
Zacker Posted February 26, 2007 Report Posted February 26, 2007 A high swap buffer is usually due to fillrate limitations. I have heard that you can check your fillrate performance there is cmd called mat_viewportscale or something, which you can adjust up and down.
Defrag Posted February 26, 2007 Report Posted February 26, 2007 If you're playing at such a high resolution with a 3 year old card then that's probably why. Even in uncomplicated scenes, my swapbuffers can hit ~3-5ms with a 6800GT @ 1600x1200 using high quality + AA.
Recommended Posts