Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#22

AW: GDI, GDI+ oder doch Direct2D?

  Alt 10. Jul 2012, 23:50
Man kann es drehen und wenden wie man will: GDI+ ist praktisch abgekündigt. Natürlich kann man damit noch viele Dinge tun, und es ist in vielen Belangen besser/schöner/schneller als die gute alte GDI, und "legacy" Anwendungen würde ich - sofern bereits auf GDI+ basierend - auch eher zögerlich bis garnicht so massiv umschreiben. Aber es bleibt dennoch abgekündigt, und wird spätestens ab Win8 komplett in Software laufen, und war an und für sich auch vorher schon nie für Programme gedacht, die eine gewisse stabile Framerate einhalten mussten.

Wenn man es "richtig" machen will, und die Geschwindigkeit einfach braucht, und auch im nächsten Windows (oder anderen OS) nicht nackt dasteht, bleibt als größter gemeinsamer Nenner, dessen Standard auch schon seit etlichen Jahren nach unten hin recht beständig und brav behandelt wird - und zwar in Hardware wo möglich - ist OpenGL. Wenn man nach dem besten (Kompromiss aus Geschwindigkeit und Kompatibilität) sucht, ist das eine verdammt gute Antwort.

Natürlich ist der Schwung von GDI zu GDI+ gemütlicher. GDI->OpenGL entspricht einem Rewrite des GUI inkl. einem eigenen VCL-Ersatz, und ggf. auch einem ganzen Haufen Lernaufwand (wir reden über Mannwochen wenn man ganz ohne 3D-API Erfahrung da dran geht und es wirklich verstehen will - sprich von der Pike auf, ohne aufgeblasene und plattformeingrenzende Frameworks). Aber wenn die Frage lautet "was ist das beste?", bleibt OpenGL es eine verdammt gute Antwort, die sowohl einen prima Mittelweg für diverse Anforderungen, als auch auf den meisten Endgeräten eine "nah am möglich machbaren" Performance bietet. End of Story.
Wer möglichst einfach migrieren will, muss anders fragen.

PS: FMX nutzt zwar auch OpenGL, ist aber imho noch viel zu unausgereift und "kantig" (codemäßig) um es in ernsten Projekten einzusetzen. Zudem bringt es, diversen Blogs nach, noch zu viel "bloat" und undurchdachten Code mit sich. Wenn es, jetzt für mich persönlich, um ein kommerzielles Produkt ginge, würde ich einen Teufel tun und auf FMX setzen. Wenn sich alles in XE4 oder so mal langsam gestzt hat, dann guck ich da nochmal drauf.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)

Geändert von Medium (11. Jul 2012 um 00:01 Uhr)
  Mit Zitat antworten Zitat