Results 1 to 2 of 2

Thread: vertex arrays, culling for a performance boost

  1. #1
    Junior Member Newbie
    Join Date
    Aug 2000
    Location
    Pasadena, CA, USA
    Posts
    16

    vertex arrays, culling for a performance boost

    1) In the interest of getting faster execution, I've switched from calling
    glVertex3f to loading vertex arrays for a terrain generated from a 16*24
    elevation point array that fills about a 4x4 inch section of the screen.
    The problem is I don't see any increase in the FPS. (I get around 12-15
    fps.) Now this isn't a very big set of data, but I was expecting to see a
    little bump in performance, since the CPU I'm using is a 933 MHz Celeron
    with an Intel 810 chipset. I have one interleaved array for color and
    triangle strip points, and one for line strip grid points that's laid on
    top.

    Just where in the processing chain are vertex arrays supposed to help?
    In the CPU, by eliminating all the calls to glVertex? Is this just saving
    the call overhead, with all of the geometry still needing to be done as before?
    If so, maybe my 16*24 scenario is not intensive enough to matter.
    In the graphics processor, by letting it digest this data in a more efficient
    manner? I don't really know what's going on here, so maybe its load is not
    reduced at all.

    The 810 processor doesn't have any of its own memory, so assume there's no
    options for any other improvement, such as VBOs.

    2) I've also turned on back face culling and see no improvements in performance
    compared to no culling. When I turn it on for front faces (as an experiment)
    I do see substantial improvements (and of course the terrain is missing). I
    thought the whole point of culling is to save the processing time of faces
    that aren't seen.

  2. #2
    Senior Member OpenGL Pro
    Join Date
    May 2001
    Location
    Kristianstad,Skåne,Sweden
    Posts
    1,595

    Re: vertex arrays, culling for a performance boost

    Yes you minimize the overhead of glVertex() calls and if vertices are used many times you only need to specify them one time, you should get a little improvment at least I guess.

    So you would minimize the load on the CPU and move some of the load to the GPU if there is one.

    Backface culling if a pretty fast operation and may not have much impact on performance, front face culling do of course improve alot but that's because there is less stuff to render, it all depends on what you render and the order you render it.

    If you render a sphere and you render the backfacing polygons first and then the front facing you should notice some difference in performance with & without backface culling for example.

    Mikael

Similar Threads

  1. Performance and stride of vertex arrays?
    By Keith Z. Leonard in forum OpenGL: Basic Coding
    Replies: 2
    Last Post: 06-13-2010, 06:41 AM
  2. vertex arrays and performance
    By in forum OpenGL: Basic Coding
    Replies: 2
    Last Post: 12-22-2004, 12:23 AM
  3. Vertex arrays performance
    By Orzech in forum OpenGL: Basic Coding
    Replies: 2
    Last Post: 08-11-2003, 01:50 AM
  4. Polygon culling on vertex arrays
    By OpenGLRox in forum OpenGL: Basic Coding
    Replies: 3
    Last Post: 06-28-2001, 12:31 PM
  5. Frustum Culling with a set of Index Vertex Arrays?
    By Pete Bassett in forum OpenGL: Advanced Coding
    Replies: 3
    Last Post: 01-14-2001, 08:18 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Proudly hosted by Digital Ocean