Eine Möglichkeit, dies zu betrachten, ist WebGL, OpenGL ES 2.0, und OpenGL ES 2.0 ist OpenGL, wobei alle alten Cruft entfernt wurden.
Da Shader hinzugefügt glPushMatrixwurden glLight, glVertexmachte es keinen Sinn , die alte Pipeline mit festen Funktionen usw. beizubehalten.
Sind diese "fehlenden" Funktionen oder korrekt und ordnungsgemäß "veraltete" Funktionen?
Welche spezifischen Funktionen suchen Sie?
WebGL / OpenGL ES 2.0 ist ein grundlegender Vertex- und Fragment-Shader. Es gibt nur begrenzte Unterstützung für Nicht-Power-of-2-Texturen und nur wenige Texturformate (99% aller Texturen sind RGB8 oder RGBA8). Die Unterstützung von Gleitkomma-Texturen ist optional, wird jedoch von den meisten Geräten unterstützt. Die Unterstützung für das Rendern in Gleitkomma-Texturen ist jedoch seltener. Nur wenige mobile Geräte unterstützen das Rendern in eine Gleitkomma-Textur.
WebGL2 (gerade ausgeliefert) und OpenGL ES 3.0 haben eine Menge neuer Texturformate hinzugefügt, darunter ganzzahlige Texturen und 3D-Texturen. Die Nicht-Potenz-von-2-Texturgrenzen wurden entfernt. Es wurde Transformations-Feedback hinzugefügt (die Fähigkeit eines Vertex-Shaders, in einen Puffer zu schreiben). Es wurden auch Okklusionsabfragen hinzugefügt. Vertex-Array-Objekte sind Standard (sie waren in WebGL / ES 3.0 optional). Es gibt eine Reihe weiterer kleinerer Funktionen.
ES 3.1 (und wahrscheinlich die nächste Version von WebGL) fügt Compute-Shader hinzu (die Fähigkeit eines Fragment-Shaders, Schreibvorgänge mit wahlfreiem Zugriff auszuführen). Fragment-Shader konnten im Moment nur auf das von ihnen angeforderte Fragment / Pixel schreiben, während sie Shader berechnen und schreiben, wo immer sie wollen.
Welche anderen Funktionen wollten Sie verwenden?