Bläddra i källkod

* unbind VBO after using it

master
Bergmann89 10 år sedan
förälder
incheckning
3a2978e940
1 ändrade filer med 10 tillägg och 9 borttagningar
  1. +10
    -9
      utsRendererOpenGL.pas

+ 10
- 9
utsRendererOpenGL.pas Visa fil

@@ -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);


Laddar…
Avbryt
Spara