wined3d: Move an VBO support check to the state template.
This commit is contained in:
parent
dc203d36c9
commit
55ab14a4ed
@ -3728,13 +3728,11 @@ static void scissorrect(DWORD state, IWineD3DStateBlockImpl *stateblock, WineD3D
|
||||
}
|
||||
|
||||
static void indexbuffer(DWORD state, IWineD3DStateBlockImpl *stateblock, WineD3DContext *context) {
|
||||
if(GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT)) {
|
||||
if(stateblock->streamIsUP || stateblock->pIndexData == NULL ) {
|
||||
GL_EXTCALL(glBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, 0));
|
||||
} else {
|
||||
IWineD3DIndexBufferImpl *ib = (IWineD3DIndexBufferImpl *) stateblock->pIndexData;
|
||||
GL_EXTCALL(glBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, ib->vbo));
|
||||
}
|
||||
if(stateblock->streamIsUP || stateblock->pIndexData == NULL ) {
|
||||
GL_EXTCALL(glBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, 0));
|
||||
} else {
|
||||
IWineD3DIndexBufferImpl *ib = (IWineD3DIndexBufferImpl *) stateblock->pIndexData;
|
||||
GL_EXTCALL(glBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, ib->vbo));
|
||||
}
|
||||
}
|
||||
|
||||
@ -3818,7 +3816,7 @@ const struct StateEntryTemplate misc_state_template[] = {
|
||||
{ STATE_TEXTURESTAGE(7, WINED3DTSS_BUMPENVLOFFSET), { STATE_TEXTURESTAGE(7, WINED3DTSS_BUMPENVLOFFSET), tex_bumpenvloffset }, 0 },
|
||||
|
||||
{ STATE_VIEWPORT, { STATE_VIEWPORT, viewport_miscpart }, 0 },
|
||||
{ STATE_INDEXBUFFER, { STATE_INDEXBUFFER, indexbuffer }, 0 },
|
||||
{ STATE_INDEXBUFFER, { STATE_INDEXBUFFER, indexbuffer }, ARB_VERTEX_BUFFER_OBJECT },
|
||||
{ STATE_RENDER(WINED3DRS_ANTIALIAS), { STATE_RENDER(WINED3DRS_ANTIALIAS), state_antialias }, 0 },
|
||||
{ STATE_RENDER(WINED3DRS_TEXTUREPERSPECTIVE), { STATE_RENDER(WINED3DRS_TEXTUREPERSPECTIVE), state_perspective }, 0 },
|
||||
{ STATE_RENDER(WINED3DRS_ZENABLE), { STATE_RENDER(WINED3DRS_ZENABLE), state_zenable }, 0 },
|
||||
|
Loading…
x
Reference in New Issue
Block a user