OpenGL 3 a la Basura

Al fin de la guerra de los API DirectX ha sido dado como el ganador, al menos en su terreno. La nueva especificación de OpenGL 3 que tanto prometia ha sido develada, mostrando lo que deberia llamarse 2.2 como ya se ha comentado en varios foros de Gamedev.net .

El modelo del API ha seguido intacto, no hay objetos por ninguna parte y lo único que se ha hecho es agregar nuevas capas de lo mismo al ya destartalado y desproporcionado modelo de programación de estados por tuberias orientado a funciones con extensiones:

  • API support for the new texture lookup, texture format, and integer and unsigned integer capabilities of the OpenGL Shading Language 1.30 specification (GL EXT gpu shader4).
  • Conditional rendering (GL NV conditional render).
  • Fine control over mapping buffer subranges into client space and flushing modified data.
  • Floating-point color and depth internal formats for textures and renderbuffers (GL ARB color buffer float, GL NV depth buffer float, 455 N.2. DEPRECATION MODEL 456 GL ARB texture float, GL EXT packed float, and GL EXT texture shared exponent).
  • Framebuffer objects (GL EXT framebuffer object).
  • Half-float (16-bit) vertex array and pixel data formats
    (GL NV half float and GL ARB half float pixel).
  • Multisample stretch blit functionality (GL EXT framebuffer multisample and GL EXT framebuffer blit).
  • Non-normalized integer color internal formats for textures and renderbuffers (GL EXT texture integer).
  • One- and two-dimensional layered texture targets
    (GL EXT texture array).
  • Packed depth/stencil internal formats for combined depth+stencil textures and renderbuffers (GL EXT packed depth stencil).
  • Per-color-attachment blend enables and color writemasks
    (GL EXT draw buffers2).
  • RGTC specific internal compressed formats (GL EXT texture compression rgtc).
  • Single- and double-channel (R and RG) internal formats for textures and renderbuffers.
  • Transform feedback (GL EXT transform feedback).
  • Vertex array objects (GL APPLE vertex array object).
  • sRGB framebuffer mode (GL EXT framebuffer sRGB)Plus deprecation of older features.

Para los que aún tengan interes en revisar esta farsa de actualización, pueden descargar la especificación completa en:

http://opengl.org/registry/doc/glspec30.20080811.pdf

Para se esto el resultado de casi dos años de trabajo desde que se anuncio Mount Evans y Birds of feather, mas parece un intento de enterrar a OpenGL, según comentan el los foros todo se haria en pos de conservar la compatibilidad con aplicaciones de CAD que no soportarían la reescritura hacia un nuevo modelo OO, lo cual termina siendo ridiculo dado el grado de utilización actual del estándar.

Es una pena para aquellos programadores que tengan que escribir los drivers de Windows para OpenGL 3, porque muy seguramente estarán perdiendo su tiempo en algo que no va a ser utilizado. Probablemente en Linux OpenGL aún valga la pena, pero aún así los programadores de esta plataforma merecían un API potenciado y de arquitectura moderna, no esta ya tan trajinada versión.

RIP OPENGL

Edición: Si quieren ver un punto de vista de la comunidad, un poco mas técnico pero no menos ácido pueden pasarse por el anuncio oficial en los foros de OpenGL.org, va dar para largo pero la comunidad no parece muy contenta al respecto…

Compartir esta entrada

DiggReddit
  • http://www.alvaromartin.net Prompt

    Tu analisis es uno más de esa corriente sensacionalista anti OpenGL. OpenGL 3.0 no tiene nada de malo es otro update más a las puertas de los cambios que tanto se anunciaron. De hecho quitan bastante funcionalidad del fixed pipeline en previsión de lo que viene.

    Lo único bueno de estos cambios va a ser que gentuza sensacionalista que ni se lee las especificaciones de OpenGL 3.0 les dará por programar en D3D en windows.

    Que no se de el autor del post por aludido pero que haga examen de conciencia con las cosas que publica. Todo sensacionalismo de foros y de gente que solo dice tonterial del calado “RIP OpenGL” más que nunca OpenGL está resurgiendo bastante fuerte, consolas como PS3 y portatiles de nueva generación ya optan por OGL, sin decir la inmensa cantidad de televisores, etc… que lo usan. Sin nombrar a Apple que se está comiendo terreno a Microsoft a mordiscazos.

    Un saludo!

  • http://black-byte.com/ jotatsu

    “Tu analisis es uno más de esa corriente sensacionalista anti OpenGL”.

    Me considero (pasado) un fan de OpenGL, algunos tutoriales muestran que almenos he aprendido hasta el punto amateur, pero como se ve en el link de gamedev.net (la discusión en cierta medida ya esta muerta), los profesionales no estan muy contentos con esta ultima actualización y no tiene que ver con sentido “anti-OpenGL” o “Pro-Microsoft”, sino mas bien con una realidad creada por un año de promesas que terminaron en nada.

  • Toni Mallorca

    La verdad es que hay que ser jilopollas, o que microsoft te pague algo para decir OpenGL a la basura, que eres mongol?, que pasa con todos los que pertenecemos a la comunidad GNU/linux?, Mac etc… joer tio.. yo programo en opengl bajo linux, y la verdad es que no me desagrada la idea de la maquina de estados que criticas tanto, en mi caso uso c++ y moldeo mis objetos a mi gusto, ya sean para almacenar texturas con sus propiedades, contenedores para figuras etc.. DE MUERTO NADA!!

  • Juan Manuel

    OpenGL 3 es solo un update mas. El problema es que muchos desarrolladores pensaban que ogl se iba a convertir en un dx10 y eso no va a pasar. Precisamente su engorroso sistema de extensiones (cada vez mas engorroso) lo permite mantenerse en muchas plataformas. El sistema de microsoft solo nos lleva a encerrarnos en un solo producto, el que ellos nos venden (no a mi). Mucha gente se quiere pasar por alto el verdadero valor de una biblioteca abierta. De todas formas en cuanto usabilidad coincido con toni. Saludos

  • Bolchevique

    Lo sierto esque el grupo Khronos ha trabajado arduamente en la nueva version de opengl aunque microsoft quire comprar opengl para tener abiertas las puertas del mercado de graficos, opengl lo supera en rendimiento y facilidad, yo programo los graficos en linux y sin ninguna modificacion los puedo cargar en windows, ese nivel de portabilidad no se consigue con direcX, y de, de muerto opengl no tiene nada

  • Marceloko

    ooo GGGGGGG L
    ooooo G L
    ooooooo G GGGG L
    oooooo G G L
    oooo GGGGGGG LLLLLLLLL

    Para siempre

  • Realidad

    Los telefónos móviles usan OpenGL ES, que NO es lo mismo al OpenGL de los PC y Macs. La PS3 viene con OpenGL ES; pero la industria usa las librerías de bajo nivel. NDS y Wii usan GLX, que aunque se parece a OpenGL no es igual a esa mierda.

    OpenGL hace rato solo es usado en PC y Macs. En consolas y móviles no (repito: OpenGL ES es muy diferente a esa mierda de OpenGL).

  • *

    No entiendpo porque los linuxeros son tan putos resentidos.. joder tio… cada uno tiene puntos de vistas diferentes y hay que saber respetarlos.

  • h3nr1x

    “…ya destartalado y desproporcionado modelo de programación de estados por tuberias orientado a funciones con extensiones”

    Por ser tan simple (basado solo en funciones) es facil y eficiente montar una capa de abstraccion sobre OGL, asi que su sencillez no es tan mala como parece… Cierto, carece de algunas funcionalidades que el kit de desarrollo de DX provee (como por ejemplo las herramientas para convertir mallados y las rutinas para cargarlos automaticamente, eso es cool), pero OGL es altamente portable (Windows, Linux, Mac y cualquier plataforma grafica basada en software libre), en cambio DX esta orientado a juegos en plataformas de Microsoft, aunque las actualizaciones de DX sean mucho mas frecuentes solo funciona en cosas con Windows

    “según comentan el los foros todo se haria en pos de conservar la compatibilidad con aplicaciones de CAD que no soportarían la reescritura hacia un nuevo modelo OO”

    No sirve de mucho que D3D tenga un modelo de objetos propio y sea OO o a que OGL lo transformen en un API OO si al final cada quien termina creando un custom engine basado en el API (D3D como OGL son solo eso, un API como cualquier otra que pueda salir al mercado, no se debe crear ataduras a una u otra, siempre es necesario tener la mente abierta y concentrarse en los algoritmos, lo importante es el resultado final)…

    “OpenGL hace rato solo es usado en PC y Macs”

    Pues eso ya es bastante, no?

    “cada uno tiene puntos de vistas diferentes y hay que saber respetarlos”

    Completamente de acuerdo :)

  • al0n

    La primera vez que llego a este blog y espero que la última, sin duda.
    Propongo renombrar la noticia en cuestión con algo más adecuado, dadas las circunstancias, ¿qué os parece black-byte.com a la basura?