Преглед на файлове

* unbind VBO after using it

master
Bergmann89 преди 10 години
родител
ревизия
3a2978e940
променени са 1 файла, в които са добавени 10 реда и са изтрити 9 реда
  1. +10
    -9
      utsRendererOpenGL.pas

+ 10
- 9
utsRendererOpenGL.pas Целия файл

@@ -137,12 +137,22 @@ begin
fIsRendering := true;
glPushMatrix;
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;

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
procedure TtsRendererOpenGL.EndRender;
begin
if fIsRendering then begin
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
glDisableClientState(GL_VERTEX_ARRAY);
glBindBuffer(GL_ARRAY_BUFFER, 0);

glPopMatrix;
fIsRendering := false;
end;
@@ -198,17 +208,8 @@ begin
end else
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);

glDisableClientState(GL_TEXTURE_COORD_ARRAY);
glDisableClientState(GL_VERTEX_ARRAY);

glMatrixMode(GL_TEXTURE);
glPopMatrix;
glMatrixMode(GL_MODELVIEW);


Зареждане…
Отказ
Запис