Recommended Posts

I seem to be having trouble rendering my static with optimal performance. I am creating my static buffers with write only flags and locking them only once to store my geometry passed in during program initialization. Here is the code that I use to transfer geometry to a static buffer.

With the code I am using right now for managing static buffers I can only rendering 12k vertices with a framerate of 20fps. I know that frames per second is a bad scale for judging program performance because it scales non-linearly. However I have seen many programs which can render 100x the amount of vertices I am rendering and still get a better frame rate. Does anybody know why I might be seeing this massive performance drop.

Share this post

Link to post

Share on other sites

Sounds kinda strange I must say, I really don't know about this, but could it be that the card dislikes of drawing 12k tris in one batch? Sounds a bit strange, but I don't know, I've heard some talks about such... could be bullshit too.

Otherwise it sounds really strange unless you are doing some costy overhead such as lightning or so.

Share this post

Link to post

Share on other sites

no I am not using any textures, lights, or materials. However the way I am storing the 12k vertices is rather odd. I just copied 12 vertices from a pyramid 1000 times in my vertex array. Perhaps I am lagging due to overdraw? Is there a better way of rendering massive amounts of vertices without making an object loader?

The peak fill rate of a 9600XT is 2100M pixels according to one site on the web, which runs us into a bit of a problem, since you've described getting nearly 3 times that.

Lets assume that limit a memory bus limit, and using 16 bit allows us to double that to 4200M pixels. Let us further assume you're not quite filling the viewport, and that you rounded to 20FPS since it was a nice round number, bringing your 6000M pixels down somewhat, hopefully near 4200M.

The problem that comes up with 99% of the posts about only being able to draw x polys... they're all lots of fullscreen quads with alpha blending and hitting fill rate limitations. If this isn't what you're doing, and there is some other explaination for the low frame rate, I'd be quite interested to hear about it. Post more details and we'll see if we can't get to the bottom of it.