... roulement de batteries ...
\o/ \o/ OpenGL 2.0 et 2.1 est supporté \o/ \o/
Allez, histoire de ne pas faire un journal de première page trop court, j'ajoute ces infos :
New features
* OpenGL 2.0 and 2.1 API support.
* Entirely new Shading Language code generator. See the Shading Language page for more information.
* Much faster software execution of vertex, fragment shaders.
* New vertex buffer object (vbo) infrastructure
* Updated glext.h file (version 39)
* Updated glxext.h file (version 19)
* GL_MAX_DRAWBUFFERS is now 4 (software rendering) so "multiple render targets" are really supported.
Bug fixes
* Fog was errantly applied when a fragment shader was enabled (bug 9346)
* glPush/PopClientAttrib didn't handle VBO bindings correctly (bug 9445)
* With 32-bit Z buffer, the fragment Z of lines and points was sometimes wrong.
* GL_POST_CONVOLUTION_ALPHA_BIAS/SCALE was broken.
* 1D convolution state could effect 2D image transfers
* Overlapping glCopyPixels with negative Y zoom didn't work (bug 10521)
* Fixed a number of framebuffer/renderbuffer reference counting bugs
* Fixed a few bugs in software-emulated alpha planes
* Assorted minor bug fixes in glCopy/DrawPixels, glPixelZoom, etc.
* Assorted DRI driver bug fixes.
* Fixed a number of bugs that prevented "depth-peeling" rendering from working.
Internal code changes
* Old array_cache module replaced by new vbo module. All geometry rendering is now cast in the form of vertex buffer objects.
* Massive changes to the Shading Language compiler and related state.
* Vertex/fragment shaders are compiled into GPU instructions and programs very similar to GL_ARB_vertex/fragment_program.
* Vertex and fragment programs are executed with the same code now.
* The SSE-optimized vertex program path has been removed since it didn't support more than 12 temp registers, didn't support branching/looping, etc.
To Do (someday) items
* Switch to freeglut
* Fix linux-glide target/driver.
* Improved lambda and derivative calculation for frag progs.
http://www.mesa3d.org/
# Qui relèvera le défi
Posté par Christophe Merlet (site web personnel) . Évalué à 5.
[^] # Re: Qui relèvera le défi
Posté par Rin Jin (site web personnel) . Évalué à 10.
http://translate.google.com/translate?u=http%3A%2F%2Flinuxfr(...)
PS: tu n'as pas demandé une traduction lisible et compréhensible :)
# bug ?
Posté par Laurent J (site web personnel, Mastodon) . Évalué à 10.
et aprés
> OpenGL 2.0 et 2.1 est supporté
Y a comme un bug... Faut se relire avant de publier...
Bref, il s'agit de mesa3d 6.5.3.
[^] # Re: bug ?
Posté par BAud (site web personnel) . Évalué à 10.
il ne faut pas s'arrêter à la chaleur estivale actuelle et encore attendre 3 mois quand même pour Août.
# Mesa
Posté par patrick_g (site web personnel) . Évalué à 10.
[^] # Re: Mesa
Posté par Markov . Évalué à 4.
http://www.opengl.org/documentation/specs/glx/glx1.4.pdf
Donc pour le moment on doit avoir l'interface opengl 2.0 disponible uniquement si on link directement avec mesa dc sans acceleration ou affichage sous X.
Bienvenue dans le subtile monde des protocoles graphiques :)
[^] # Re: Mesa
Posté par Snarky . Évalué à 2.
[^] # Re: Mesa
Posté par Markov . Évalué à 1.
Si tu fais un glxinfo tu verra la version du protocole GLX (ca doit etre 1.2 pour tout les linux d'aujourd'hui sauf peut être avec les drivers nvidia). Le protocole GLX fait le liens entre OpenGL et le protocole X donc GLX n'est utile et n'a de sens que sous un système X window, et ce protocole définis qu'elle version d'opengl est supporte(voir le lien que j'ai donné).
Enfin je serais pas étonné que les fonctions GL 2.0 soient tout de même exposées sous le protocole GLX 1.2 ou 1.3. Ce qui ne serait pas conforme au protocole mais par exemple l'extension EXT_TFP nécessaire a compiz sous AIGLX est expose avec glx 1.2 alors qu'elle requiert au moins le 1.3 ou 1.4 (enfin c'est un micmac du genre).
[^] # Re: Mesa 6.5.3
Posté par Patrice Mandin . Évalué à 4.
Brian Paul, le chef du projet Mesa, a annoncé Mesa 7.0 (la version stable) pour bientôt sur la liste de diffusion, le temps de faire quelques corrections dans la 6.5.x. Cette version 7.0 sera officiellement celle à partir duquel OpenGL 2.0 sera supporté.
# Pendant ce temps...
Posté par ChickenKiller . Évalué à 4.
DirectX10 qui est une technologie "plus mieux bien" que OpenGL2, car tout le monde sait bien que, plus le numéro de version est élevé, plus le produit est aboutit.
Un décideur pressé.
[^] # Re: Pendant ce temps...
Posté par Snarky . Évalué à 4.
De plus, Direct3D et un fork de OpenGL à la base.
[^] # Re: Pendant ce temps...
Posté par LeMagicien Garcimore . Évalué à 4.
Un fork ? T'es sur de toi la ? Rien de tout ça sur wikipedia en tout cas...
[^] # Re: Pendant ce temps...
Posté par Markov . Évalué à 2.
[^] # Re: Pendant ce temps...
Posté par LeMagicien Garcimore . Évalué à 2.
[^] # Re: Pendant ce temps...
Posté par Snarky . Évalué à 4.
L'histoire c'est que, à la base, un consortium comprenant les plus grand (IBM, Microsoft, ect...) on commencé à développé un API commune pour la 3D, car il n'existait rien.
Quelques années après que les bases soient bien posé et que ça fonctionnait, Microsoft à décidé de se retirer du projet pour développer son petit truc dans son coin. Évidement, le plus gros du travail avait déjà été fait, il suffisait juste de récrire le code.
[^] # Re: Pendant ce temps...
Posté par Markov . Évalué à 2.
[^] # Re: Pendant ce temps...
Posté par LeMagicien Garcimore . Évalué à 1.
# Le rôle de Mesa
Posté par seginus . Évalué à 3.
Après, vu que ce n'est pas la carte qui fait le travail, celui-ci est relayé au CPU.
Ma question est donc, au vu de la puissance actuelle des CPU, que permet au juste de faire tourner Mesa.
Peut-on espérer pouvoir faire tournée « prochainement » des bureaux en 3D, à défaut de jouer à des FPS avec par exemple une « carte mesa » ?
Voilà, j'aimerai donc connaître le but de ce projet, et où est-il utile et utilisé.
[^] # Re: Le rôle de Mesa
Posté par Markov . Évalué à 6.
- Les cartes graphiques sont capables de traiter plusieurs pixels en même temps avec des opérations complexes et particulière (typiquement des groupes de 64 ou 128 pixels, nvidia allez jusqu'a 1024 me semble t-il mais ce n'étaient pas un bon choix) un CPU lui ne pourra pas traiter autant de pixel aussi efficacement même avec les instructions "multimedia". En effet l'agencement mémoire sur la carte graphique et l'architecture autour permet d'optimiser les access sur ces groupes de pixels alors que pour le cpu le plus souvent on a des cache miss et on ne peut avoir une organisation aussi sioux que pour le gpu.
- Les cpu ne sont pas tres efficaces pour des opérations comme le blending de pixel a moins de faire des routines tres optimisées.
- Mesa ne cherche pas a optimiser aux maximums son rendue software principalement car c'est irréaliste. En effet il faudrait écrire en asm chaque combinaison possible de rendu et il y en a plusieurs milliers voir une infinité si l'on considère les vertex et pixel shader. Donc mesa s'intéresse plus a avoir une pipeline software la plus proche des spécifications opengl (je crois que certains professionnel se sert du rendu de mesa comme référence).
- Enfin le rendu dans les résolutions actuelle demande de deplace des dizaines de mega octect de mémoire a chaque frame et l'architecture de nos machines n'est pas la plus optimise pour ca.
Voila pourquoi mesa ne représente pas une solution fonctionnel pour le rendu en software de bureau 3d. Mais mesa est utilisées par tout les pilotes 3d graphiques libre sous linux; effectivement rare sont les cartes qui implémentent l'ensemble d'opengl aussi beaucoup de fonction de l'opengl sont laisse a la charge de mesa.
Mesa est aussi utilise pour tester des idées en software de protocole ou extension opengl qui pourrait être utile. Il est aussi probablement utilise dans plusieurs application professionnel qui ne peuvent se contenter du rendu des cartes graphiques. Bref je ne pense pas que l'on puisse facilement dresser une liste exhaustive de ses utilisations. Mais il reste un composant clef de l'accélération matériel sous linux ou netbsd, il s'agit tout simplement du centre névralgique par ou tout passe pour l'opengl. C'est pourquoi chaque amélioration qu'il subit a de grande chance d'améliorer les drivers libres de manière indirect.
Et le but de ce projet c'est simplement de proposer une implémentation d'opengl en software la plus conforme possible ainsi que de fournir une infrastructure pour l'accélération matériel d'opengl. A ma connaissance c'est la seul implémentation aussi complète d'opengl en software, il s'agit vraiment d'un travail énorme.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.