Age | Commit message (Collapse) | Author |
|
This also involves adding a gl_array_object::VBOonly field. For the
ARB extension, all arrays in the object must reside in a VBO. This flag
keeps track of that requirement.
|
|
|
|
The ARB version requires VAOs to be per-context while the Apple extension
was ambiguous.
|
|
|
|
We don't really implement vertex weights but in the VBO code this
fixes and odd case for the legacy_array[] setup. Before, the
vbo->draw_prims() call was always indicating that the vertex weight
array was present/enabled when it really wasn't.
|
|
|
|
This will replace the code in state.c
|
|
|
|
Don't really delete vertex array objects until the refcount hits zero.
At that time, unbind any pointers to VBOs.
|
|
Every kind of object that can be shared by multiple contexts should be
refcounted.
|
|
Since shared array objects may point to the null/default buffer object,
the null/default buffer object should be part of the shared state.
|
|
|
|
The max texture coord units is still 8. All the fixed-function paths are
still limited to 8 too. But GLSL shaders can use more samplers now.
Note that some texcoord-related data structures are declared to be 16
elements in size rather than 8. This just simplifies the code in a few
places; the extra elements aren't accessible to the user.
These changes haven't been extensively tested yet, but sanity checking has
been done.
It should be possible to increase the max image units/samplers to 32 without
doing anything special. Beyond that we'll need longer bitfields in a few
places.
|
|
|
|
|
|
Use new _mesa_reference_buffer_object() function wherever possible.
Fixes buffer object/display list crash reported in ParaView.
|
|
of -I flags.
|
|
|
|
|
|
|
|
and demos are also added.
Adding basic support to drivers should be as easy as just enabling the
extension, though thorough test would also be required.
|