Fullscreen oder Windowed? Die Sache ist halt es gibt auch einen gewissen Present-Overhead, d.h. die GPU kommt egal was du renderst wohl nicht viel über 300FPS.
D.h. man sollte es eher mit sehr vielen Dreiecken versuchen und vor allem den Vertex-Cache optimieren, d.h. indizierte Geometrie und vorher durch ATI Tootle oder sowas durchlassen.
Du solltest übrigens auch für dynamische Vertexdaten VBOs verwenden, die musst du dann halt entsprechend anlegen, damit sie im AGP- und nicht im Videospeicher liegen.
Klar, ich habe VBOs auch für dynamische Objekte, aber es hat nicht viel mehr Performance als Vertexarrays, da ich sie ja mit jedem Frame neu einlade (Wegen Animation die ich per CPU löse).
Nunja, ich hab jetzt mal den Profiler nochmal drüberlaufen lassen und siehe da SDL_PollEvents() ist sau lahm.
Wenn ich nur die Rendering-Methoden messe bekomm ich bei 100350 Dreiecken 500-1000 FPS. Mit der Inputmethode von SDL nurnoch 250 - 300 :ang-2:.
Da soll man erstmal drauf kommen dass die Eingabe, welche eigentlich von Windows verwaltet und von SDL nur gewrappt werden sollte durchschnittlich 5671 µs dauern kann und 1000 / 5,671ms ergibt eine durchschnittlich maximale Framerate von 176,34 mit eingeschaltetem Profiler.