// Draw the imgui triangle data void DrawTriangles(uint count, ImVector <ushort> idxBuffer, ImPtrVector <ImDrawVertPtr> idxVert, int idxOffset, int vtxOffset, IntPtr textureId) { uint texId = (uint)textureId; ushort index; ImDrawVertPtr vertex; if (Rlgl.rlCheckBufferLimit((int)count * 3)) { Rlgl.rlglDraw(); } Rlgl.rlPushMatrix(); Rlgl.rlBegin(Rlgl.RL_TRIANGLES); Rlgl.rlEnableTexture(texId); for (int i = 0; i <= (count - 3); i += 3) { index = idxBuffer[idxOffset + i]; vertex = idxVert[vtxOffset + index]; DrawTriangleVertex(vertex); index = idxBuffer[idxOffset + i + 2]; vertex = idxVert[vtxOffset + index]; DrawTriangleVertex(vertex); index = idxBuffer[idxOffset + i + 1]; vertex = idxVert[vtxOffset + index]; DrawTriangleVertex(vertex); } Rlgl.rlDisableTexture(); Rlgl.rlEnd(); Rlgl.rlPopMatrix(); }