Ich ahne zwar, dass hier eh keiner das ließt bzw. glaubt was ich schreibe, aber ich verweise hier noch mal massiv auf das, was ich in der Wiz FAQ geschrieben habe, denn das sind die Fakten.
Hier aber nochmal ein paar Klarstellungen:
Ok aber als gegen Argument würde ich sagen,
GLB hat auch arge Probleme mit dem Tearing aber GernotFrisch ist ja auch nicht von gestern und macht mit GLB sein Geld, trotzdem ist es ihm nicht möglich das Tearing in den griff zu bekommen, ich würde ihn an deiner stelle auch mal fragen wiso gehts bei GPH Games???
Ich bin kein GLBasic Experte, aber ich denke Gernot setzt auf eine Integration von OpenGL. Ihm fehlen dazu aber Informationen von GPH. Wird es integriert, dann bekommt man das Drehen des Bildes und damit die Entfernung von Tearring quasi für Lau hinzu. Es macht jetzt wohl für Ihn keinerlei Sinn, da per Software kurzfristig was zu drehen. (Klasse Wortspiel...
)
Gernot könnte uns die Details natürlich besser erläutern.
GPH bzw. GPHs Softwareentwickler lösen das Tearingproblem im Augenblick durch unterschiedliche Maßnahmen:
- Beim Menü wird das Bild durch eine modifizierte SDL Datei in Software gedreht. Das ist sehr langsam und absolut keine Lösung für andere Programme. Man merkt das daran wie träge das Menü nach dem Update geworden ist.
Ich habe mal vor einiger Zeit einige SDL Dateien ins Archiv gestellt. Ladet die mal runter und kopiert die z.B. in den Ordner eines SDL Spieles, z.B. Gianas Return und Ihr seht was ich meine...
-
Propis nutzt die Pollux GPU zum Drehen und Ausgeben des Bildes. Man kann das ganz klar an den EGL Aufrufen erkennen, wenn man sich den Start des Programmes per RS-232 anschaut. Wem das zu aufwendig ist oder wer es nicht glaubt löscht einfach mal die libopengles_lite.so vom Wiz NAND und versucht Propis zu starten. Oder er installiert die ältere libopengles_lite.so Version aus dem Archiv und schaut mal was beim Start so passiert... Wirklich interessant, wie die das mit der alten GP2x Toolchain und dynamischen Linken hinbekommen haben. :wink:
- Bei Her Knights habe ich keine EGL Aufrufe gefunden und ich vermute, dass hier eine Drehung in Software verwendet wird. Möglicherweise haben die Programmierer auch das Spiel komplett für die geänderte Ausrichtung angepasst. Zumindest ist die Performance gut und damit scheidet die SDL Lösung aus.
Ein wenig problematisch ist das eher bei Emulatoren - diese müssten erst virtuell 320x240 aufbauen, danach das ganze drehen und schließlich auf 240x320 aufbauen.
Dann gäbe es auch hier kein Tearing mehr. Inwiefern das die Geschwindigkeit beeinflusst, läßt sich schwer sagen - dürfte aber minimal sein (ein rotieren um 90 Grad dauert nicht allzulange).
Kann man doch leicht selber testen: Gpsp und MAME (Und die Private Beta von notaz PicoDrive) haben diese (abschaltbare) Funktion schon eingebaut. Wohlgemerk: Nur in Software bis jetzt! Je nach Spiel ist der Performanceverlust mal mehr, mal weniger sichtbar. Bei Gpsp ist er, wenn man die 3:2 Bildausgabe nutzt kaum bemerkbar. Hier wird das Bild eh von einem Software Scaler bearbeitet. Da fällt das Drehen nicht mehr so sehr ins Gewicht.
Bei einer Ausgabe über OpenGL könnte man Videoausgabe, Skalieren mit bilinearem Filtern und Drehen kombinieren bei minimalen Performanceverlust und optimaler Optik. Erst dann kann der Wiz sein ganzes Potential ausschöpfen.
Und wozu hat man eine Wiz 3D Demo wen man 3D eh nicht nutzen kann??
Man kann 3D nutzen. Propis, die Quake Alpha von Pickle und nicht zuletzt das von Dir genannte 3D Demo zeigen das.
Pickle hat das aber nur mit viel Trial und Error und einer von ihm gestrickten Hilfslibrary erreicht. Das ist aber keine wirklich praktikable Lösung für zukünftige Programme. Und da GPH sich ausschweigt, wie sie die 3D Demo oder auch Propis zum Laufen bekommen haben, müssen wir bis zum Ende des Jahres warten und im SDK mal nachschauen wie es gemacht wird.
Dafür ist das SDK so wichtig.
Außerdem gibt es zur Zeit noch Probleme mit der binären 3D Library (libopengles_lite.so). Sie beinhaltet VFPU Aufrufe, die beim Wiz wenig hilfreich sind, da dieser keine FPU hat. Probleme beim Kompilieren und Performanceeinbussen sind da angesagt. Das kann nur MES fixen, da die als einzige den Sourcecode besitzen und niemals herausgeben werden. Die Gründe habe ich oben schon mal genannt...
Die ganze OpenGL Geschichte können euch aber unsere 3D Experten hier im Board viel besser beschreiben, leider scheinen ich von denen keine Unterstützung in diesem Thread zu bekommen. Würde mich aber mal wirklich interessien, wie die die SDK Problematik sehen und ob die auch gemütlich bis Ende des Jahres warten wollen... :wink:
So, das ist jetzt aber vorläufig wirklich das letzte Mal, das ich mich zum Thema Tearing hier geäußert habe. Von mir aus glaubt doch was und wem Ihr wollt...
Gruß,
Stephan
(Der schon wieder viel mehr geschrieben hat als er eigentlich wollte... <_< )