| @@ -137,12 +137,22 @@ begin | |||||
| fIsRendering := true; | fIsRendering := true; | ||||
| glPushMatrix; | glPushMatrix; | ||||
| glColor4fv(@Color.arr[0]); | glColor4fv(@Color.arr[0]); | ||||
| glBindBuffer(GL_ARRAY_BUFFER, fVBO); | |||||
| glEnableClientState(GL_VERTEX_ARRAY); | |||||
| glVertexPointer(2, GL_FLOAT, SizeOf(TVertex), Pointer(0)); | |||||
| glEnableClientState(GL_TEXTURE_COORD_ARRAY); | |||||
| glTexCoordPointer(2, GL_FLOAT, SizeOf(TVertex), Pointer(8)); | |||||
| end; | end; | ||||
| //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// | ||||
| procedure TtsRendererOpenGL.EndRender; | procedure TtsRendererOpenGL.EndRender; | ||||
| begin | begin | ||||
| if fIsRendering then begin | if fIsRendering then begin | ||||
| glDisableClientState(GL_TEXTURE_COORD_ARRAY); | |||||
| glDisableClientState(GL_VERTEX_ARRAY); | |||||
| glBindBuffer(GL_ARRAY_BUFFER, 0); | |||||
| glPopMatrix; | glPopMatrix; | ||||
| fIsRendering := false; | fIsRendering := false; | ||||
| end; | end; | ||||
| @@ -198,17 +208,8 @@ begin | |||||
| end else | end else | ||||
| glMultMatrixf(@ref.VertMat[0, 0]); | glMultMatrixf(@ref.VertMat[0, 0]); | ||||
| glBindBuffer(GL_ARRAY_BUFFER, fVBO); | |||||
| glEnableClientState(GL_VERTEX_ARRAY); | |||||
| glVertexPointer(2, GL_FLOAT, SizeOf(TVertex), Pointer(0)); | |||||
| glEnableClientState(GL_TEXTURE_COORD_ARRAY); | |||||
| glTexCoordPointer(2, GL_FLOAT, SizeOf(TVertex), Pointer(8)); | |||||
| glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); | glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); | ||||
| glDisableClientState(GL_TEXTURE_COORD_ARRAY); | |||||
| glDisableClientState(GL_VERTEX_ARRAY); | |||||
| glMatrixMode(GL_TEXTURE); | glMatrixMode(GL_TEXTURE); | ||||
| glPopMatrix; | glPopMatrix; | ||||
| glMatrixMode(GL_MODELVIEW); | glMatrixMode(GL_MODELVIEW); | ||||