[quake3-bugzilla] [Bug 4358] Vertex Buffer Object (VBO) code available

bugzilla-daemon at icculus.org bugzilla-daemon at icculus.org
Fri Nov 12 04:33:16 EST 2010


http://bugzilla.icculus.org/show_bug.cgi?id=4358

use.less01 at gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Attachment #2475|0                           |1
        is obsolete|                            |

--- Comment #2 from use.less01 at gmail.com 2010-11-11 03:41:08 EST ---
Created an attachment (id=2475)
 --> (http://bugzilla.icculus.org/attachment.cgi?id=2475)
VBO code cobbled together from xreal w/ changes

So I decided to try my hand at implementing VBOs.  This involved taking the vbo
code from xreal, retrofitting it into ioquake3's renderer, and writing some
shader adaptation code without using vertex programs.

It's a little messy, and crashes/freezes at odd times, but it seems to work. 
There's a whole laundry list of caveats, though.

1. A lot of shader options are not supported, or half-supported.
2. The shader compatibility that's there has been done in a fundamentally
backward way, using matrix stuff that's deprecated in OpenGL 3.0.
2. Only world surfaces use VBOs, everything else is still using the old vertex
array code.
3. Recompiling the index buffers at every vis transition is slow.  On my (old)
system, running tvy-bench.pk3 took around 300-600 ms on every transition, which
is an awful hitch every few moments, and in exchange I only get around 20 fps
more than before.

Still, I suppose it might be useful as a base or something to someone.

--- Comment #3 from use.less01 at gmail.com 2010-11-12 04:33:11 EST ---
Created an attachment (id=2477)
 --> (http://bugzilla.icculus.org/attachment.cgi?id=2477)
Newer version of VBO code from xreal w/ changes

I've fixed a whole lot of things in the previous patch.

This one crashes less, and performs a lot better on vis cluster changes, with
the hitch reduced to under 10 ms on tvy-bench.  As well, doors, portals, and
mirrors all render correctly now.

The problem of the unsupported shaders remains, though.

-- 
Configure bugmail: http://bugzilla.icculus.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the quake3-bugzilla mailing list