Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Khronos sort les spécifications d'OpenGL 4.1
L'API pour la 3D est entièrement compatible avec OpenCL et OpenGL ES 2.0

Le , par SteelStyle

0PARTAGES

0  0 
Mise à jour du 27/07/10 par Idelways

Le groupe Khronos, consortium industriel à l'origine d'un grand nombre d'API multimédia, vient de sortir la version 4.1 des spécifications d'OpenGL. OpenGL (Open Graphics Library) est une spécification qui définit une API multi-plateforme pour la conception d'applications générant des images 3D (mais également 2D).

OpenGL est un concurrent de Microsoft DirectX, et une spécification ouverte.

Le porte-parole de Khronos, Jonathan Hirshon a déclaré que cette dernière version de spécifications maintient une "rétrocompatibilité complète". Elle sera aussi compatible avec la spécification OpenGL ES 2.0 dédiée aux applications pour mobiles.

Elle permettra aux développeurs d'accéder à des fonctionnalités GPU avancées et portables pour plusieurs systèmes d'exploitation.

Parmi les nouveautés d'OpenGL 4.1, on trouve:

  • Une meilleure compatibilité avec OpenCL, l'implémentation d'Apple utilisée dans iOS et MacOS X Snow Leopard.
  • La possibilité de charger et d'appeler un binaire pour shader sans avoir à recompiler.
  • La possibilité d'utiliser des informations 64-bits à virgule flottante au niveau des shaders.


La nouvelle spécification est disponible sur le site officiel (document PDF)

Source : Le communiqué de presse du groupe Khronos

Lire aussi :

La prochaine version de Flash Player supportera la 3D, Adobe réussira-t-il à imposer sa technologie face aux avancés du HTML5 et WebGL ?

Le Khronos Group publie les spécifications de OpenGL 3.3 et 4.0, après deux ans de la sortie d'OpenGl 3.x

Le projet Natal change de nom, le système de reconnaissance de mouvements de Microsoft s'appellera officiellement Kinect

Les rubriques (actu, forums, tutos) de Développez :

Applications
2D - 3D - Jeux
Mac

Et vous ?

Que pensez-vous des nouveautées de cette spécifications ?

Le Khronos Group publie les spécifications de OpenGL 3.3 et 4.0

Déjà deux ans après la sortie d'OpenGl 3.x, le Khronos Group nous offre le même jour les spécifications des nouvelles versions d'OpenGL : La version 3.3 et la version 4.0

Pour ces nouvelles versions la séparation Core et Compatibility demeurent et, nouveauté pour le GLSL, les versions ont dorénavant le même nom que la version de l'API sous laquelle elles ont été sortis.

On nous promet aussi une version 4.0 optimisée, moins dépendante du CPU, notamment concernant la tesselation...

N'étant pas familier a OpenGL je n'oserais en dire plus pour les plus curieux voici le lien : About OpenGL 4.0

Que pensez vous des nouveautés de ces nouvelles versions ?
OpenGL est-il toujours à la hauteur de Direct3D ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Firwen
Membre expérimenté https://www.developpez.com
Le 13/03/2010 à 11:49
Pour en revenir au sujet principal, avant que ça ne vire au troll

L'excellente nouvelle dans tout ça et la meilleur cohésion entre openGL et openCL pour la 4.0. Le fait que openGL va utiliser CL pour les calculs de masse va permettre d'optimiser au maximum l'utilisation de la puissance disponible sur chaque machine : et ça, c'est une excellente nouvelle.
2  0 
Avatar de Dim Me As New Idiot
Membre du Club https://www.developpez.com
Le 12/03/2010 à 14:33
Dire qu'il y a quelque temps, je pensais que cette API était complétement moribonde. La reprise par le khronos group lui a vraiment été bénéfique.
1  0 
Avatar de TanEk
Membre expérimenté https://www.developpez.com
Le 12/03/2010 à 18:00
Heu... OpenGL 3.0 est sorti en juillet 2008... il y a meme pas deux ans... 3.2 est sorti il y a a peine 8 mois et a une mise-à-jour mineure en decembre il y a 4 mois. Donc dire que OpenGL 3.3|4.0 sort 2 ans apres OpenGL 3.x... hum...

Direct3D 10 est sorti en fevrier 2007, il y a plus de 3 ans. Direct3D 11 en juillet 2008, il y a deja plus de 2 ans.

Pour le moment OpenGL etait toujours en retard par rapport a Direct3D au niveau des features mais on peut dire que la 4.0 arrive au meme niveau que Direct3D 11.

Il faut comprendre que les utilisateurs de OpenGL ne sont pas que dans le domaine du jeu-video comme c'est le cas pour Direct3D ou dans le meme OS. Il y a des contraintes de compatibilite beaucoup plus importantes et donc une inertie pour le changement plus grande. Neanmoins avec le systeme de deprecation et d'extensions qu'a OpenGL, le Khronos Group a reussi ce challenge de pouvoir changer rapidement l'API et revenir au niveau de Direct3D tout en gardant une compatibilite forte avec les anciens logiciels.

De toute maniere dans le monde reel, pour des applications 3D legeres les prerequis sont la compatibilite avec OpenGL 2.0... Et quand a la suppression totale de code utilisant le pipeline fixe... Il va s'en passer des annees...
1  0 
Avatar de TanEk
Membre expérimenté https://www.developpez.com
Le 12/03/2010 à 19:17
La tesselation etait supportee au travers d'une extension AMD. Donc de la a dire que OpenGL le supportait...

De plus il me semble que la tesselation supportee par Direct3D est beaucoup plus generique que cette extension (avec 2 ou 3 stages de calcul, je ne sais plus exactement ; par exemple, la tesselation dans OpenGL 4.0 utilise deux nouveaux types de shaders et des stages de tesselation en plus).

Et si on veut etre pointilleux, une carte qui se definie comme OpenGL 4.0 compatible n'est pas obligee de supporter la tesselation qui reste encore pour le moment de type ARB, cela veut dire extension standardisee mais optionnelle... C'est pourquoi les cartes nvidias sont dites compatibles OpenGL 3.0 a partir de la serie des geforce 8 alors qu'elles ne sont pas encore Direct3D 11 compatibles.

Car la tesselation n'est pas "possible" sur les cartes nvidia actuelles, seule la nouvelle architecture fermi sera adaptee a ce type de calcul et pourra se vanter d'etre Direct3D 11 compatible et de supporter l'extension OpenGL 4.0 ARB_tessellation_shader.

Erratum: la tesselation est de type ARB (donc optionnelle) pour OpenGL 3.2 et semble integree au core OpenGL 4.0. Donc une carte OpenGL 4.0 compatible devra supporter la tesselation.
1  0 
Avatar de Idelways
Expert éminent sénior https://www.developpez.com
Le 27/07/2010 à 12:22
Khronos sort les spécifications d'OpenGL 4.1
L'API pour la 3D est entièrement compatible avec OpenCL et OpenGL ES 2.0

Le groupe Khronos, consortium industriel à l'origine d'un grand nombre d'API multimédia, vient de sortir la version 4.1 des spécifications d'OpenGL. OpenGL (Open Graphics Library) est une spécification qui définit une API multi-plateforme pour la conception d'applications générant des images 3D (mais également 2D).

OpenGL est un concurrent de Microsoft DirectX, et une spécification ouverte.

Le porte-parole de Khronos, Jonathan Hirshon a déclaré que cette dernière version de spécifications maintient une "rétrocompatibilité complète". Elle sera aussi compatible avec la spécification OpenGL ES 2.0 dédiée aux applications pour mobiles.

Elle permettra aux développeurs d'accéder à des fonctionnalités GPU avancées et portables pour plusieurs systèmes d'exploitation.

Parmi les nouveautés d'OpenGL 4.1, on trouve:

  • Une meilleure compatibilité avec OpenCL, l'implémentation d'Apple utilisée dans iOS et MacOS X Snow Leopard.
  • La possibilité de charger et d'appeler un binaire pour shader sans avoir à recompiler.
  • La possibilité d'utiliser des informations 64-bits à virgule flottante au niveau des shaders.


La nouvelle spécification est disponible sur le site officiel (document PDF)

Source : Le communiqué de presse du groupe Khronos

Lire aussi :

La prochaine version de Flash Player supportera la 3DAdobe réussira-t-il à imposer sa technologie face aux avancés du HTML5 et WebGL ?

Le Khronos Group publie les spécifications de OpenGL 3.3 et 4.0, après deux ans de la sortie d'OpenGl 3.x

Le projet Natal change de nom, le système de reconnaissance de mouvements de Microsoft s'appellera officiellement Kinect

Les rubriques (actu, forums, tutos) de Développez :

Applications
2D - 3D - Jeux
Mac

Et vous ?

Que pensez-vous des nouveautés de cette spécification ?
1  0 
Avatar de AuraHxC
Membre éclairé https://www.developpez.com
Le 12/03/2010 à 16:17
J'ai pas encore eu le temps de tout regarder, mais quelques points m'ont intéressé dont le fait que le GPU sera plus sollicité, la tesselation, le fait que les versions de GLSL prennent le numéro de l'API, etc...
En tout très content que cela se bouge du côté de mon API graphique préféré
0  0 
Avatar de TresNulDev
Nouveau membre du Club https://www.developpez.com
Le 12/03/2010 à 19:40
Non, pour être compatible avec OpenGL 4.0, une carte doit avoir cette extension GL_ARB_tessellation_shader car elle fait partie du core d'OpenGL 4.0; donc ce n'est pas optionnel. Notons que c'est la première fois qu'OpenGL présente à peu près le même niveau de fonctionnalité que la dernière version de Direct3D (la 11) presque en même temps puisque les cartes DirectX 11 de Nvidia ne sont pas encore disponibles (au passage, elles supporteront OpenGL 4.0 dès leur sortie) et que celles d'AMD/ATI ne sont disponibles que depuis 6 mois.
0  0 
Avatar de Lynix
Membre habitué https://www.developpez.com
Le 12/03/2010 à 20:28
Citation Envoyé par TanEk Voir le message
La tesselation etait supportee au travers d'une extension AMD. Donc de la a dire que OpenGL le supportait...
C'était le cas, OpenGL permettait la tesselation, les extensions font parties d'OpenGL en mon sens, et à partir du moment où une extension est utilisable sur une grande partie des cartes, je ne vois pas où est le problème.

Citation Envoyé par TanEk Voir le message
Et si on veut etre pointilleux, une carte qui se definie comme OpenGL 4.0 compatible n'est pas obligee de supporter la tesselation qui reste encore pour le moment de type ARB, cela veut dire extension standardisee mais optionnelle...
Erreur, les constructeurs de carte graphiques se basent sur les extensions ARB pour les fonctionnalités de leurs cartes.
0  0 
Avatar de stardeath
Expert confirmé https://www.developpez.com
Le 12/03/2010 à 20:40
opengl permettait la tesselation que sur une partie des cartes graphiques disponibles, c'est à dire les cartes ati, et pas sur intel ni nvidia; 1 constructeurs sur 3 c'est limite quand même.
maintenant pour être certain que la tesselation sera supporté il faudra une carte compatible opengl4 ou dx11, ce qui laisse moins de place à l'improvisation pour les développeurs.

et les extensions arb sont ajoutées selon ce que propose les constructeurs par consensus, pas le contraire. khronos ou l'arb ne font que valider les spécifications.
0  0 
Avatar de Groove
Membre régulier https://www.developpez.com
Le 15/03/2010 à 16:53
Pardon les gars mais ce thread me semble tellement riche d'impression qu'il faut que je repondes:

- "Optimisé" ca veut vraiment rien dire.
- La seule amelioration d'interopabilité avec OpenCL vient d'ARB_draw_indirect qui permet utiliser des buffers => notamment <= generer depuis OpenCL pour faire un rendu d'intances avec transform feedback sans retour sur le CPU et multidraw call. Ca assure comme feature m'enfin, ca reste un cas d'utilisation tres specifique.

OpenCL 1.0 fonctionne tres bien avec OpenGL 3.0 et pourrait meme fonctionner avec OpenGL 1.5 mais en pratique seul les cartes OpenGL 3.0 suporttent OpenCL 1.0. Ce n'est donc pas vraiment une question d'API.

Une carte OpenGL 4.0 doit suporter tous les features de la spec. Le truc c'est qu'un Radeon 57XX n'est donc pas une carte OpenGL 4.0 car elle ne supportent pas les double pour les shaders et les uniforms... L'extension ARB_gpu_shader_fp64 n'aurait pas du etre integrer au core a mon sens. J'ai cherche mais pas trouvé d'option conditionner le suport des double.

Grace a OpenGL 3.3 et aux extensions ont aura la possibilité utiliser le tesselator & les features SM5. C'est bien mais pas super commode s'achant que les jeux en general n'ont pas besoin de double. Aller, disons a la rigeux pour des calcules de physique mais pas pour le rendu.
0  0