Sign in to follow this  
floyd3

No improvment with Vertex Buffers

Recommended Posts

I made a heightmap using vertex buffers (thanks a lot for a lot of you!) but I see no improvments in the FTP from my older Display list method. I am using triangle strips... Can it be because my graphic card is only a Riva TNT 2 ? maybe it cannot use the full power of the vertex buffers?

Share this post


Link to post
Share on other sites
Well, I can assure you that converting to Vertex Buffers will improve the use of bandwidth when sending data to the graphics chip and the rate at which the card is able to fetch that data, but...

If that's not where you're bottleneck is, then it's not surprising that you're not seeing an improvement in framerate. Considering the age of your card, I would be willing to hazard a guess that you may be highly fillrate bound, especially if you are using any sort of multipass/multitexture operations. Try this: Generate all the landscape data as usual (upload vertex data, set textures, etc.) but leave out the actual render call (in this case glDrawArrays or glDrawElements) If this gives you a sudden FPS hike, then you're almost certainly fillrate bound. The other scenario (though I feel like it's unlikely) is that you're CPU bound, in which case you'd have to optimize your game logic to see any improvement.

One final idea: It may be that your card, as old as it is, doesn't have the proper hardware support for vertex buffers and as a result is emulating them, storing the vertex data in system memory instead of video memory. (Which would actually make this a form of CPU bottleneck) If this is the case then it's unlikely that your system will show any benefits from the conversion, but anyone who's card supports the method will enjoy a speed boost.

Share this post


Link to post
Share on other sites
What were you using before? A static model I presume... Anyway, a static model should be about the same as a VertexBuffer, it might be a little slower to load but in rendering you wouldn't notice. Where you would notice a vertex buffer being better is if you had to change the terrain for LODing, morphing, destruction and/or swapping in new terrain chunks. The main feature being that you can lock portions of the vertex buffer and mark the locked area as discardable so that Directx( if thats what you are using ) will just suck in the new data without needing to do extra memory syncing.

Maybe post a demo or code so we can know more about your test scenario.

J

Share this post


Link to post
Share on other sites
Quote:
I made a heightmap using vertex buffers (thanks a lot for a lot of you!) but I see no improvments in the FTP from my older Display list method.

u wont VBO + display lists are normally about the same speed BUT as Toji said the bottleneck is most likely elsewhere

Share this post


Link to post
Share on other sites
Hi all and thanks,

I am using VBO for Heightmap, so its pretty stastic.

About the Fillrate bottleneck - impossible. I am drawing in LINES mode, and the FILLED mode is always faster on my system.

I switch between display list and VBO, and I see no difference -
8 FPS for 130,000 triangles (in line mode), and faster on filled mode (about 24 FPS).

If its not a fillrate problem, I reckon its probably the card, simulating VB's...

Share this post


Link to post
Share on other sites
Hi all and thanks,

I am using VBO for Heightmap, so its pretty stastic.

About the Fillrate bottleneck - impossible. I am drawing in LINES mode, and the FILLED mode is always faster on my system.

I switch between display list and VBO, and I see no difference -
8 FPS for 130,000 triangles (in line mode), and faster on filled mode (about 24 FPS).

If its not a fillrate problem, I reckon its probably the card, simulating VB's...

Share this post


Link to post
Share on other sites
Believe it or not, drawing lines is always slower than drawing filled triangles. Another way to test for fillrate limits is to make the window smaller. If the framerate increases, then you are fillrate bound.

Share this post


Link to post
Share on other sites
Quote:
Original post by rick_appleton
Believe it or not, drawing lines is always slower than drawing filled triangles.


I believe but never understood why...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this