1. Foren
  2. Kommentare
  3. Applikationen
  4. Alle Kommentare zum Artikel
  5. › Sling Shot Extreme: Neuer 3DMark…

OpenGL ES 3 vs Metal

Das Wochenende ist fast schon da. Zeit für Quatsch!
  1. Thema

Neues Thema Ansicht wechseln


  1. OpenGL ES 3 vs Metal

    Autor: /mecki78 01.04.16 - 12:24

    Ich hätte ja gerne, dass man am iPhone/iPad zwischen beiden umschalten kann, weil mich schon mal interessieren würde, ob Metal wirklich so viel besser ist und wirklich was in der Praxis bringt.

    Wenn man sich mal mit beiden Schnittstellen im Detail anschaut, dann kommt man nämlich schnell zum Schluss, dass Metal nichts weiter ist als ein OpenGL ES Subset, dass als einzig klar erkennbare Vorteile von Haus aus Thread-Safe zu sein scheint, eine nicht so low levelige API besitzt und das Vorhanden sein bestimmter Funktionalität garantiert, die bei OpenGL ES eben nur optional ist (wobei optional bedeutet, dass konforme Hardware diese Funktionen nicht zwingend beherrschen muss, faktisch kann man aber keine Hardware am Markt finden, die sie wirklich nicht beherrscht).

    Ansonsten kann Metal nicht mehr als OpenGL ES, es kann nur überall weniger und ist daher oft einfacher zu benutzten. Das mag Entwicklern sicherlich entgegen kommen (müssen sich weniger API merken, können weniger falsch machen), aber ob die API jetzt einfach oder komplex ist sagt primär erst einmal nichts über die Geschwindigkeit oder Mächtigkeit der Schnittstelle aus.

    IMHO ist OpenGL nämlich weit aus besser als sein Ruf. Es ist lediglich nicht einfach guten OpenGL Code zu schreiben bzw. es ist leicht schlechten zu schreiben. So bietet OpenGL (ES ignorieren wir mal kurz) manchmal 10 unterschiedliche Wege zum gleichen Ergebnis zu kommen, von denen aber 8 unterschiedlich langsam und ineffektiv sind (das steht aber nirgendwo so in der Doku), eine ist schnell und effektiv und funktioniert auf quasi jeder existierenden Hardware und eine ist sogar noch viel schneller und noch viel effektiver, wird aber nur von jeder dritten GPU unterstützt. Wenn man das weiß, dann prüft man ob die GPU die aller beste Methode kann und wenn ja, dann nutzt man die, ansonsten nutzt man eben die andere, die immer noch relativ gut ist und quasi jeder beherrscht, und um die anderen 8 macht man einen großen Bogen.

    Der Vorteil von Schnittstellen wie Metal ist in diesem Fall nur, dass sie von Haus nur eine Methode anbieten und diese intern immer die beste Methode verwendet, die die GPU beherrscht. Deswegen ist sie aber nicht schneller als wenn man OpenGL und in OpenGL auch die richtige Methode genutzt hätte. Man musste nur weniger Wissen als Entwickler, weniger Entscheiden und weniger Code schreiben, um zum besten Ergebnis zu kommen, aber man hätte auch mit OpenGL ein gleich gutes Ergebnis erreichen können. Und in diesen Fall hätte man nicht unbedingt eine neue 3D API gebraucht, ein OpenGL Wrapper, der Programmierern Arbeit abnimmt und dafür sorgt, dass immer automatisch die beste Methode genommen wird hätte es dann genauso getan.

    /Mecki

  1. Thema

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. Metabowerke GmbH, Nürtingen
  2. über duerenhoff GmbH, Freiburg im Breisgau
  3. Fraunhofer-Institut für Optronik, Systemtechnik und Bildauswertung IOSB, Karlsruhe
  4. über Hays AG, Augsburg

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. (u. a. Code Vein - Deluxe Edition für 23,99€, Railway Empire - Complete Collection für 23...
  2. 26,99€
  3. 14,99€


Haben wir etwas übersehen?

E-Mail an news@golem.de