Это метод, который я использую для рисования спрайтов:
public void DrawSprite(Sprite sprite)
{
Gl.glBegin(Gl.GL_TRIANGLES);
{
for (int i = 0; i < Sprite.VertexAmount; i++)
{
Gl.glBindTexture(Gl.GL_TEXTURE_2D, sprite.Texture.Id);
DrawImmediateModeVertex(
sprite.VertexPositions[i],
sprite.VertexColors[i],
sprite.VertexUVs[i]);
}
}
Gl.glEnd();
}
DrawImmediateModeVertex
- рисует одну вершину.
Должен ли я получить Gl.glBindTexture
из цикла for?Также странные вещи случаются при рендеринге текстуры, хотя я предоставляю спрайты с разными идентификаторами текстур, каждый раз рисуется одна и та же текстура.