Polls

Qué cambiará obama?
 
Inicio arrow Noticias arrow Lo + Nuevo arrow IncompetenciaGL 3.0
IncompetenciaGL 3.0 PDF Print E-mail
Written by Javier Loureiro   
Tuesday, 12 August 2008

Llevamos mucho tiempo esperando al momento más importante del mundo de los gráficos, la salida de OpenGL 3.0, que prometía un montón e cosas nuevas. Sobre todo, un sistema de objetos que permitiese un acceso directo a la información del driver.  Además, el driver sería mucho m´s sencillo de escribir que antes. Se esperaba un completo rewrite del API, dejando atrás más de 15 años de herencia que ya se había convertido en un lastre muy gordo. Se intentaría resolver el problema de que hoy en día, hay muchas formas de hacer lo mismo con opengl, pero dependiendo del hardware, una será más rápida que otra. Un rewrite del API solucionará esto.

Pues bien, ya tenemos la nueva especificación de OpengGL 3.0 disponible . Y no podemos calificarla más que de auténtico fiasco y desastre. Todo lo que tiene que ofrecer el khronos group es una serie de extensiones de nvidia que ahora pasan a ser parte del core, y una nueva pesadilla, el "Deprecation Model", donde hay funcionalidad que está deprecada.

Despues de más de un año de "intenso trabajo", aqui tenemos un ejemplo de informaticos viviendo en el mundo de las pajaritas, que van bajando al mundo de la realidad poco a poco, hasta sacar un churro. Ahora ya no solo hay que perder un buen rato intentando descifrar qué extensiones están soportadas, si no que tendremos que andar mirando qué funciones están soportadas. Y nada más.

 Aqui tenemos la lista de maravillas:

 

  • 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.

 Esto podía ser perfectamente OpenGL  2.2 y no pasaría nada... pero es el típico caso de anunciar cosas que no existen,ir sacandolas a ver si cuela,e intentar arreglarlo cuando ya es tarde.

 Porque todo lo que no ha podido microsoft, lo va a conseguir la pandilla del khronos group. Mirad la web de OpenGL 3 , una foto y un logo, que interesante!

 Los foros de internet están que trinan... la gente esperaba algo más serio. No es tanto el API en sí (aunque lo de marcar cosas como deprecated es una cagada muy gorda) si no la forma de llevar todo esto. Tanto lio para al final nada... además, seguramente los drivers servirán sólo en tarjetas nvidia y tardarán en salir.

Este es el foro de gamedev , y este el de opengl.

Con todo esto, el futuro es un poco desolador... DX10 sólo funciona en vista, y microsoft está centrandose más en la XBOX y el XNA que en la comunidad... y opengl no soporta muchas cosas de las nuevas tarjetas (los geometry shaders es una extensión que ATI no soporta, y parece que van lentos) 

 

Comentarios
AgregarnuevoBuscar
Rasty3D   | 194.244.27.xxx | 2008-08-12 13:09:07
Que decepción. Me he estado mirando las especificaciones y efectivamente es como un 2.2 y no el 3.0 que anunciaban tan avanzado y novedoso. Y la verdad es que no entiendo porqué. ¿Si no tenían preparado todavía el 3.0, porqué sacan este engendro? Podrían haber sacado un 2.2 mientras terminaban el 3.0 y ya está.
- Prompt - Puff     | 195.160.225.xxx | 2008-08-12 14:00:47
Rasty3D pues si, un 2.2 mal hecho.

En estas circunstancias te preguntas...
- quien fue el crack que hizo la foto y el marqueting aquel del 2007?
- que demonios se ha hecho en 1 año?
- quien es el responsable?

A mi me parece que era un momento adecuado para presentar OGL 3.0 pero bueno. Deben rodar cabezas lo más pronto posible, para solucionarlo todo lo más pronto posible xD
Prompt     | 195.160.225.xxx | 2008-08-12 14:27:10
Relajandome un poco y leyendo la especificación un poco más etc...

Si es un engaño OGL 3.0, no trae todo lo que prometieron, han hecho una limpieza previa a esos cambios y han "estandarizado" nuevas cosas.

El 3.0 le viene por cargarse todas las funciones del fixed pipeline, como era de esperar, igual que DX10. Si es cierto que parece según leo por ahi que el Geometry programable pipeline no va fino.
- Camilo Alvarez - Larga vida al imperio     | 190.159.138.xxx | 2008-08-12 17:16:59
Con esto ya no hay que decidir que se estudia si GL o DX, simpelemente hay que ver en que SO se quiere desarrollar y la elección ya esta hecha.

Fiasco...
Algar   | 57.67.17.xxx | 2008-08-12 17:25:26
Totalmente de acuerdo Derethor.

Decepcionante la ARB y decepcionante el Khronos group.
No nos han escuchado a la comunidad. No les importa las opiniones de los que al fin y al cabo son los únicos que utilizarán su API.
Decepcionante el modo en que han llevado todo esto.
Decepcionante su publicación, y su trabajo en todo este tiempo.

Me esperaba mucho más, o al menos lo prometido. Me quedo con cara de ingenuo e impotencia y espero que tras ver todas nuestras reacciones traten de enmendar semejante tomadura de pelo.

Con el buen momento que tenían ahora...

Un saludo a todos.
- David Miraut - Umm...     | 84.77.150.xxx | 2008-08-12 19:18:19
Aún me lo tengo que leer con detalle antes de hacerme una idea precisa de lo que han eliminado de la especificación preliminar (que parece bastante), y del potencial que le queda :-(

No hay que olvidar que el grupo Kronos tiene un buen montón de agentes involucrados, acada uno con sus propios intereses económicos, y que no dudan en tirar "para su lado" sin que les importe demasiado lo que desean sus otros asociados (que muchas veces son competidores comerciales).

OpenGL 3.0 en su anuncio de hace un año era muy muy ambicioso, en primer lugar porque era muy dificil que se pusieran realmente de acuerdo en lo que se había propuesto, y en segudo porque se proponían en el estandard algunas "extensiones" que a día de hoy no pueden ser aceleradas por HW (en la GPU) de forma eficiente.

Microsoft forma parte del Kronos Group, para bien o para mal tiene una influencia muy muy importante en la evolución del HW gráfico y los shader models, no sólo en su API, sino también en OpenGL.

Probablemente, debido a las peleas internas la especificación se estaba apollando en los cajones de los investigadores, y han decidido sacar aquello en lo que ha habido un mínimo acuerdo para poder seguir adelante.

El HW que hay en el mercado puede hacer de sobra lo que se ha puesto en las especificicaciones (al menos lo que he visto por encima) de modo que los fabricantes sólo tienen que actualizar drivers para darle soporte.

A diferencia de DirectX, parece que esta versión de OpenGL va a corriente de lo que ya ha hecho el resto de la industria, en lugar de suponer un cambio que responda a las peticiones de los desarrolladores en una API cuyos "huesos" llevan más de 15 años sin renovarse.

Por otro lado, buena parte del potencial de Larrabee queda en barbecho con los actuales DirectX 10 y lo que han hecho ahora en OpenGL 3.0. La especificación original abría muchas puertas que por ahora sólo podrían acelerarse en una arquitectura de este estilo (probablemente nVIDIA y ATI tienen ases en la manga, pero no los muestran tan abiertamente como Intel).
No me extrañaría que estos recortes se deban a un cierto recelo hacia la solución de Intel, que si bien también forma parte del grupo Kronos, no debe ser tan fuerte en sus decisiones si AMD y nVIDIA se alian para frenarle en el comité que se encarga de redactar las especificiaciones.

En cualquier caso, funcionalidades como el rasterizado y el ROP programables llegarán y llegarán pronto. Y cuando estén aquí necesitarán volver a remendar OpenGL.
- David Miraut - Golpe de efecto     | 84.77.150.xxx | 2008-08-12 19:22:54
Se me olvidaba comentar una cosa obvia...
Me imagino que la decisión de realizar la divulgación de las especificaciones definitivas, precisamente en estas fechas, habrá tenido que ver con acaparar cierta atención de la industria en la conferencia del SIGGRAPH, aprovachando que están todos los grandes reunidos allí.
El aó pasado lo anunciaron y hubiesen quedado muy mal si lo volvían a retrasar despues de todo el hype que crearon, aunque vista la reacción, no sé que hubiese sido mejor...
bubu   | 87.220.156.xxx | 2008-08-13 08:22:26
Si, es penoso... y, por desgracia, no hay alternativa para linux/macOSX. Me veo haciendo todo por software otra vez :D
Inigo Quilez     | 69.198.85.xxx | 2008-08-13 12:44:11
Bueno, no puedo esperar a ver a los de mac implementnado (por fin!) dx o creando su propio api.

Hasta ahora programar en gl2 en windows era un acto de voluntariado, un gesto de solidaridad hacia los usuarios de la plataforma menores. La forma de agradecernoslo es esta spec ruinosa, y no dudo que muchos pasaremos de la (sobrevalorada) portabilidad e iremos a por un api profesional como dx. Porque queremos perder nuestro tiempo creando técnicas y algoritmos, no peleando con bugs y programando apis retorcidas.

Todo esto me recuerda a los ultimos 20 minutos de la peli titanic, cuando el gran barco se quiebra y se va al garete.
Prompt   | 195.160.225.xxx | 2008-08-14 09:04:40
Tendriais que leer las memeces que estais diciendo...

David Miraut, gracias por comentar algo con fundamento.

Me gustaría contestar uno a uno las sandeces que decís pero prefiero irme a desayunar y no perder el tiempo :P

Fuera de coñas... un poco de seriedad porque vaya comentarios que poneis. Pareceis adoradores del apocalipsis.
Inigo Quilez     | 69.198.85.xxx | 2008-08-14 17:24:19
lo que tu digas. yo también voy a desayunar.
Anonimo   | 208.78.234.xxx | 2008-08-14 19:44:58
Cita:
Tendriais que leer las memeces que estais diciendo...

David Miraut, gracias por comentar algo con fundamento.

Me gustaría contestar uno a uno las sandeces que decís pero prefiero irme a desayunar y no perder el tiempo :P

Fuera de coñas... un poco de seriedad porque vaya comentarios que poneis. Pareceis adoradores del apocalipsis.

Ole! Eso se llama tener respeto a los demas y el resto son tonterias!
- Ruben Penalva - El anonimo era yo!     | 208.78.234.xxx | 2008-08-14 19:45:53
El de antes era yo, que se me paso rellenar el formulario..... ^^U
- David Miraut - Cons-paranoias...     | 84.77.139.xxx | 2008-08-15 03:47:26
Todas las opiniones son igual de validas, Alvaro/Prompt. La verdad es que ha sido bastante decepcionante el OpenGL 3.0 que tenemos tras un año de espera.

A las empresas relacionadas con los gráficos/juegos/peliculas/efectos especiales les encanta crear espectación ("hype") antes de sacar sus productos y muchas veces se promete el oro y el moro. Yo creo que nos hemos llevado más chasco porque esta vez la solución venía de la mano de un grupo que se dedica a los estándares abiertos y eso da más confianza a primera vista. Aunque luego todo depende de los intereses que tengas las empresas de los representantes del comité técnico.

En SlashDot (http://tech.slashdot.org/tech/08/08/11/2135259.shtml) hay algunos comentarios muy interesantes, y eso que hay muchos acérrimos al binomio linux-opengl. Tanto a favor (compatibilidad, programas CAD...) como en contra de la nueva versión.

De entre ellos, me ha llamado especialmente la atención este comentario: http://tech.slashdot.org/comments.pl?sid=642653&cid=24561889, no con la intención de buscar un culpable/responsable al que hacerle rodar la cabeza como dice Álvaro, sino porque da un poco de luz sobre el punto de vista de AMD-ATI que yo no acabo de comprender.

Por un lado abren especificaciones para "mejorar"/abaratar costes en los drivers open-source, pero por otra, da la sensación de que no desean ofrecen toda la funcionalidad que tienen sus tarjetas a través de la API de OpenGL.

A veces me siento más paranoico que Mulder en X-Files, pero... ¿no tendrá que ver un poco con los acuerdos que tiene AMD-ATI con Microsoft? A fin de cuentas, el mayor volumen de negocio en las ventas de chips gráficos viene de sus consolas o de sistemas en los que se juega bajo Windows. Aunque tienen productos para Mac no parecen darles tanta importancia (http://ati.amd.com/Products/mac.html) ¿será porque los últimos prouctos de Apple vienen con tarjetas nVIDIA de serie?

Ojalá OpenGL estuviese un poco al margen de tanto interés comercial, al menos no está controlada por una sola empresa :-(
Anonimo   | 81.172.115.xxx | 2008-08-15 13:24:06
En mi opinión, sin irse a conspiraciones, que solo son especulaciones, por lo que es más un acto de fe el creerlas o no, creo que han sido demasiado ambiciosos con la restructuración del api, y a mitad de camino se han dado cuenta de que no tenian tiempo para resolver el problema.

Con esto no quiero decir que con 2 años no hubiera podido hacerse, simplemente no administraron bien, o no han tenido en cuenta lo que les iba a llevar resolver todos los problemas que han ido apareciendo.

Al final se han quedado a medio camino, y han preferido sacar algo que aunque no sea lo prometido, les permita introducir en el core ciertas extensiones. Tampoco hay que extrañarse de que lo que hayan hecho sea eso, puesto que lo lógico en la evolución de la especificación es admitir al core las extensiones más útiles y necesarias. Sin embargo pienso que el camino de restructuración y el modelo a objetos, están ahi, para seguirse, y que si no lo van a conseguir ahora lo haran poco a poco.

Es decepcionante que no hayan conseguido sus objetivos, y que en este periodo de limpieza, van a surgir las dudas, y quejas de desarrolladores que alimentandose del hype quiere tener su ya su nuevo "juguete", pero todavía tienen que esperar. Sin embargo la limpieza es necesaria y cuando este "arreglada" podrán incorporar más características de forma más rápida (la especificación de la 3.1 se planea para dentro de 6 meses), y veremos si ha merecido o no la espera.

Un saludo a todos
- David Miraut - Disponibles los drivers de Ope     | 84.77.146.xxx | 2008-08-15 18:42:17
Parece que no se han hecho mucho de rogar, ya han salido los drivers de nVIDIA para OpenGL en Windows (XP y Vista).
http://developer.nvidia.com/object/opengl_3_driver.html

Cualquier tarjeta a partir de la serie 8 tiene soporte para el "nuevo" OpenGL. La buena noticia es que no tendremos que cambiar de tarjetas para poder programarlo.
Escribir comentario
Nombre:
Email:
 
Website:
Título:
Código UBB:
[b] [i] [u] [url] [quote] [code] [img] 
 
Security Image
Por favor introduce el codigo anti-spam que puedes leer en la imagen.

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.



menéameDigg!Del.icio.us!Google!Technorati!Yahoo!
Last Updated ( Tuesday, 12 August 2008 )
 
< Prev   Next >

Lista de Correo

visita la lista de correo de codepixel. Es una lista abierta, asi que podrás subscribirte y preguntar tus dudas de programación, compartir tus opiniones, aportar ideas, y formar parte de la comunidad codepixelera.