"Ca depend de la taillle de ton ensemble"
=>
Si un vecteur peut-etre reutilise plusieurs fois de suite, si ta memoire est aligne (buffer de vecteurs alignes), etc...
>permet pas le développement d'un moteur de rendu l'utilisant
?? faut pas exagerer. Developper un jeu en OpenGL est tout a fait possible actuellement (Doom III ?)
Les extensions ne sont pas si rebutantes que ca, C'est quand meme assez rapide a utiliser et implementer.
Ce qui prend le plus de temps, c'est bien de developper en fonction de chaque generation de cartes graphiques... et La il y a plus que deux fois plus de boulot (Nvidia, Ati, Intel, matrox, powerVR)
La memoire video dispo, vitesse AGP, le nombre d'unites de texture dispo (rendu simple passe, multipasses), les differents paths de rendu selon les cartes (avec shaders, registers, etc...), les optimisations specifiques aux cartes video (vertex cache ou pas, Triangle stripping ou pas, etc...)
Et ce probleme est commun a Direct3d et OpenGL.
Exemple : L'excellent moteur 3D LGPL "Ogre"permets l'utilisation de DirectX et OpenGL (avec ses extension) et le plus problematique, c'est bien le support de toutes les cartes graphiques, voire des differentes version de drivers, pas les extensions !
>Même en restant que dans le graphisme, les algorithmes à >plusieurs passes sont de plus en plus utilisé
on ne peut malheureusement pas utiliser le resultat d'une passe precedente dans un fragment shader. En multitexturing multipasse, en tout cas, On part toujour de fragment.color.
Mais avec les MRT (Mutliples Render Target), ca va peut-etre changer ?
>Quelques exemples d'applications des gpu
C'est pas que de la recherche, sh et autres gpugpu... Dans les jeux on utilise les GPU aussi pour la simulation de fluide (le sang), les simulations physiques de particules (eclats rebondissant, fumee suivant les conduits, etc..), etc...
>Mais bon, ce n'est qu'un avis personnel et je ne sais pas quelles >ont été les réelles motivations de l'ARB =)
Les constructeurs de GPU voudrait utiliser les memes circuits pour calculs de vertex et de fragment (au lieu de float d'un cote et uchar de l'autre). Apres une suite de calculs la perte d'info est grande si on utilise pas des float (meme des float16), donc l'image est plus "vrai", moins approximative.
Les textures elle-memes en float, c'est (malheureusemnet) pas pour tout de suite :
Le probleme reste pour moi la bande passante et la memoire video dans la carte... Deja qu'avec des textures 8 bits (rgba en DXT5) ca rame a mort pour charger toutes les textures (normal, hauteurs, couleurs, tables) qu'est ce que ca va etre avec des textures float32 (128bits) ou float16 (64bits)?
Les deux appellations se defendent, utiliser le terme fragment ne fait que compliquer a mon avis...
En entree d'un fragement shader : un pixel en rgba (que l'on peut appeler fragment)
en sortie, un pixel en rgba
Entre les deux, des operations sur des pixels en rgba (que l'on peut appeler fragment)
Je critique pas l'appelation OpenGL, mais je la regrette. deja que c'est pas simple, mais si on complique avec des termes inconnus (pixel est plus connu qu'un fragment.)
tu confond deux techniques : le "offset mapping" (anciennement apelle le "parallax mapping" qui utilise les pixels shaders) et le "displacement mapping" (vertex shader).
c'est dit dans ton lien :
displacement mapping : "You could displace vertices by reading the displacement map in the vertex shader and moving the vertex in the direction of its normal."
Parallax mapping : " will give you a proper parallax effect when the camera pans across a surface, but it will not modify your geometry like displacement mapping does"
fragment shader est beaucoup moins parlant que pixel shader.
(puisqu'un fragment shader ne peut modifier que des pixels...)
Il est vrai que les techniques deviennent de plus en plus nombreuses et il est devient difficile de s'y retrouver.
" d'autre part, le rendu est plus réaliste (un polygone n'est plus plat comme avec du bump mapping, mais est réellement gondolé visuellement)"
Ca, c'est juste unes des utilisations des shaders, plus precisement ici, des vertex shaders. C'est la technique dite du "displacement mapping".
Les shaders sont divises en deux parties : une pour traiter les vertex (les points des polygones) et une pour les pixels, donc les effets de textures.
L'avantage d'OpenGL 2.0, c'est aussi de presenter un langage haut niveau (genre C) pour programmer les shaders.
Avant fallait passer par de l'assembleur, qui restait tres simple touttefois. Ou par des langages appartenant a ATI ou Nvidia. Ici le nouveau langage GLSL est de haut niveau et le meme pour toutes les cartes supportant OpenGL 2.0.
OpenGL 2.0 est un peu decevant car juste c'est juste une compilation des differentes extensions... Pas de nouveautes revolutionnaires, donc.
Un OpenGL plus modulaire, et facile a decliner aurait ete bien.
(plutot que plusieurs openGL separes : OpenGL OpenGL ES, OpenML, OpenVG, OpenMAx, etc... cf http://www.khronos.org/(...))
Amaya implemente le SVG en utilisant OpenGL pour obtenir des performances suffisantes pour l'animation.
(en deportant les calculs sur la carte 3D quand elle est disponible, ou en revenant au mode "software" avec Mesa)
Du coup khronos group propose une librarie pour implementer du vectoriel, avec un support materiel d'acceleration.
soit juste le tip :
"
To integrate DDD with Emacs, use `M-x gdb' or `M-x dbx' in Emacs to
start a debugging session. At the prompt, enter `ddd --tty' (followed
by `--dbx' or `--gdb', if required), and the name of the program to be
debugged. Proceed as usual.
"
Qui lui, a plein de GUI (en plus d'un mode emacs) :
Alleyoop, Valgui, , Gnogrind, ou en plugin de KDevelop v3.0.0
si on aime pas emacs, le projet a suivre en GUI front-end de prog, c'est KDevelop 3.0.0
support de automake, qmake, doxygen, CVS, Perforce, Subversion, Clearcase, CTags... http://www.kdevelop.org/?filename=3.0/features.html(...)
Tes envois seront classes par les filtres. Du coup questions (recues) et reponses (envoyes) seront dans le meme dossier...
Avec un peu de chances tu peux avoir une vue par fil de discussions... (thread-like)
C'est plus logique que de de voir chercher question et reponses dans deux repertoire differents...
(Notons que ce probleme n'apparait pas dans Opera 7.50 preview... qui filtre envoi et reponse de la meme facon...(en plus des filtres bayesiens anti-spam (d'ailleurs tres bel article de linux-mag sur les filtres bayesiens...(mais plus trop d'artilcles su Lisp(ou scheme(ou erlang)))))))
[^] # Re: les sources d'optimisation
Posté par tuan kuranes (site web personnel) . En réponse au message Optimisation de code C. Évalué à 2.
=>
Si un vecteur peut-etre reutilise plusieurs fois de suite, si ta memoire est aligne (buffer de vecteurs alignes), etc...
[^] # Re: Petits optimizs.
Posté par tuan kuranes (site web personnel) . En réponse au message Optimisation de code C. Évalué à 2.
# les sources d'optimisation
Posté par tuan kuranes (site web personnel) . En réponse au message Optimisation de code C. Évalué à 1.
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_(...)
le cache :
http://josu.uninet.edu/n1/acox.html(...)
si une des trois reponses est beaucoup plus courante dans le switch, utilise la prediction de branche avec l'algo "d-loop" sur onversity.com
Ca depend de la taillle de ton ensemble, mais le prefetch doit surement etre la meilleure piste.
[^] # Re: details
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La spécification de OpenGL 2.0 enfin en version finale. Évalué à 3.
http://libsh.org/download.html(...)
[^] # Re: un peu en retard pour doom3...
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La spécification de OpenGL 2.0 enfin en version finale. Évalué à 3.
?? faut pas exagerer. Developper un jeu en OpenGL est tout a fait possible actuellement (Doom III ?)
Les extensions ne sont pas si rebutantes que ca, C'est quand meme assez rapide a utiliser et implementer.
Ce qui prend le plus de temps, c'est bien de developper en fonction de chaque generation de cartes graphiques... et La il y a plus que deux fois plus de boulot (Nvidia, Ati, Intel, matrox, powerVR)
La memoire video dispo, vitesse AGP, le nombre d'unites de texture dispo (rendu simple passe, multipasses), les differents paths de rendu selon les cartes (avec shaders, registers, etc...), les optimisations specifiques aux cartes video (vertex cache ou pas, Triangle stripping ou pas, etc...)
Et ce probleme est commun a Direct3d et OpenGL.
Exemple : L'excellent moteur 3D LGPL "Ogre"permets l'utilisation de DirectX et OpenGL (avec ses extension) et le plus problematique, c'est bien le support de toutes les cartes graphiques, voire des differentes version de drivers, pas les extensions !
[^] # Re: le Grand Ternet
Posté par tuan kuranes (site web personnel) . En réponse au message Recherche développeur PHP/MySQl. Évalué à 1.
(il est dans mon profil ou mon site.)
[^] # Re: details
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La spécification de OpenGL 2.0 enfin en version finale. Évalué à 2.
on ne peut malheureusement pas utiliser le resultat d'une passe precedente dans un fragment shader. En multitexturing multipasse, en tout cas, On part toujour de fragment.color.
Mais avec les MRT (Mutliples Render Target), ca va peut-etre changer ?
>Quelques exemples d'applications des gpu
C'est pas que de la recherche, sh et autres gpugpu... Dans les jeux on utilise les GPU aussi pour la simulation de fluide (le sang), les simulations physiques de particules (eclats rebondissant, fumee suivant les conduits, etc..), etc...
>Mais bon, ce n'est qu'un avis personnel et je ne sais pas quelles >ont été les réelles motivations de l'ARB =)
Les constructeurs de GPU voudrait utiliser les memes circuits pour calculs de vertex et de fragment (au lieu de float d'un cote et uchar de l'autre). Apres une suite de calculs la perte d'info est grande si on utilise pas des float (meme des float16), donc l'image est plus "vrai", moins approximative.
Les textures elle-memes en float, c'est (malheureusemnet) pas pour tout de suite :
Le probleme reste pour moi la bande passante et la memoire video dans la carte... Deja qu'avec des textures 8 bits (rgba en DXT5) ca rame a mort pour charger toutes les textures (normal, hauteurs, couleurs, tables) qu'est ce que ca va etre avec des textures float32 (128bits) ou float16 (64bits)?
[^] # Re: details
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La spécification de OpenGL 2.0 enfin en version finale. Évalué à 2.
En entree d'un fragement shader : un pixel en rgba (que l'on peut appeler fragment)
en sortie, un pixel en rgba
Entre les deux, des operations sur des pixels en rgba (que l'on peut appeler fragment)
Je critique pas l'appelation OpenGL, mais je la regrette. deja que c'est pas simple, mais si on complique avec des termes inconnus (pixel est plus connu qu'un fragment.)
# le Grand Ternet
Posté par tuan kuranes (site web personnel) . En réponse au message Recherche développeur PHP/MySQl. Évalué à 1.
si c'est en flash, y'a des composants qui font ca. (sur internet ou chez macromedia)( flash + php + mysql)
[^] # Re: details
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La spécification de OpenGL 2.0 enfin en version finale. Évalué à 5.
tu confond deux techniques : le "offset mapping" (anciennement apelle le "parallax mapping" qui utilise les pixels shaders) et le "displacement mapping" (vertex shader).
c'est dit dans ton lien :
displacement mapping : "You could displace vertices by reading the displacement map in the vertex shader and moving the vertex in the direction of its normal."
Parallax mapping : " will give you a proper parallax effect when the camera pans across a surface, but it will not modify your geometry like displacement mapping does"
fragment shader est beaucoup moins parlant que pixel shader.
(puisqu'un fragment shader ne peut modifier que des pixels...)
Il est vrai que les techniques deviennent de plus en plus nombreuses et il est devient difficile de s'y retrouver.
Relis ton lien, ou mieux lis en francais la doc :
http://www.onversity.com/cgi-bin/progactu/actu_aff.cgi?Eudo=bgteob&(...)
# details
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La spécification de OpenGL 2.0 enfin en version finale. Évalué à 10.
Ca, c'est juste unes des utilisations des shaders, plus precisement ici, des vertex shaders. C'est la technique dite du "displacement mapping".
Les shaders sont divises en deux parties : une pour traiter les vertex (les points des polygones) et une pour les pixels, donc les effets de textures.
L'avantage d'OpenGL 2.0, c'est aussi de presenter un langage haut niveau (genre C) pour programmer les shaders.
Avant fallait passer par de l'assembleur, qui restait tres simple touttefois. Ou par des langages appartenant a ATI ou Nvidia. Ici le nouveau langage GLSL est de haut niveau et le meme pour toutes les cartes supportant OpenGL 2.0.
OpenGL 2.0 est un peu decevant car juste c'est juste une compilation des differentes extensions... Pas de nouveautes revolutionnaires, donc.
Un OpenGL plus modulaire, et facile a decliner aurait ete bien.
(plutot que plusieurs openGL separes : OpenGL OpenGL ES, OpenML, OpenVG, OpenMAx, etc... cf http://www.khronos.org/(...))
# Concurrence
Posté par tuan kuranes (site web personnel) . En réponse au journal Merci Valgrind !. Évalué à 2.
http://www.elis.rug.ac.be/~ronsse/diota/(...)
(Plus oriente perfs, avec gestion mmx, sse, etc..)
# Le Futur du SVG
Posté par tuan kuranes (site web personnel) . En réponse à la dépêche La norme SVG, une évolution du Web.. Évalué à 10.
(en deportant les calculs sur la carte 3D quand elle est disponible, ou en revenant au mode "software" avec Mesa)
Du coup khronos group propose une librarie pour implementer du vectoriel, avec un support materiel d'acceleration.
http://www.khronos.org/openvg/(...)
De quoi aider beaucoup le developpement du SVG et assurer son futur.
sinon qq liens SVG :
les maths en svg : http://pilat.free.fr/(...)
Support natif de SVG par X : http://xsvg.org/(...)
# Idee
Posté par tuan kuranes (site web personnel) . En réponse au journal bittorrent - classes ip - optimisation ?. Évalué à 2.
En plus, ils repere les NATes et les Directement connectes pour permettre des connection entre 2 Nates, et ca c'est une bonne idee.
[^] # Re: Palladium
Posté par tuan kuranes (site web personnel) . En réponse au journal Palladium ?! REVOLTANT !!. Évalué à 3.
le dernier lien de
http://www.google.com/search?q=palladium+site:linuxfr.org&sourc(...)
# hostscripts
Posté par tuan kuranes (site web personnel) . En réponse au journal Lecture RSS en PHP. Évalué à 2.
http://www.hotscripts.com/cgi-bin/search.cgi?bool=AND&query=rss(...)
atom en php:
http://www.hotscripts.com/cgi-bin/search.cgi?bool=AND&query=ato(...)
plus de 7000 scripts PHP :
http://www.hotscripts.com/PHP/Scripts_and_Programs/index.html(...)
(et une fonction recherche qui marche bien...)
# Au boulot !!!
Posté par tuan kuranes (site web personnel) . En réponse au journal J'suis papa !. Évalué à 2.
Je te recommande la lecture de "How to parent" ou la version francaise au titre un peu racoleur : "Tout se joue avant 6 ans" de Fitzhugh Dodson
http://www.amazon.fr/exec/obidos/ASIN/2501026713/171-3894298-975702(...)
[^] # Re: HOW TO mesure ?
Posté par tuan kuranes (site web personnel) . En réponse au journal Freebox et atténuation + quelques question pour les pro de free. Évalué à 2.
http://adsl.free.fr/suivi/suivi_tech.html(...)
# Re: Traffic bizarre de mon localhost vers mon ip internet
Posté par tuan kuranes (site web personnel) . En réponse au journal Traffic bizarre de mon localhost vers mon ip internet. Évalué à 3.
http://www.rootkit.nl/(...)
# Re: creation site sur Windows
Posté par tuan kuranes (site web personnel) . En réponse au journal creation site sur Windows. Évalué à 1.
http://www.w3c.org/amaya(...)
WYSIWYG => what You see is what You get
# Re: De la doc sur SDL_net ??
Posté par tuan kuranes (site web personnel) . En réponse au journal De la doc sur SDL_net ??. Évalué à 1.
http://www.gameprogrammer.com/net2/net2-0.html(...)
(utilise les threads pour passer de 6000 p/s a 30.000 p/s... interressant (mecanismes pouvant etre etendus a SDL_input))
[^] # Re: GDB 6.1 is out !
Posté par tuan kuranes (site web personnel) . En réponse au journal GDB 6.1 is out !. Évalué à 2.
soit "google chance" sur "emacs ddd tty"
soit juste le tip :
"
To integrate DDD with Emacs, use `M-x gdb' or `M-x dbx' in Emacs to
start a debugging session. At the prompt, enter `ddd --tty' (followed
by `--dbx' or `--gdb', if required), and the name of the program to be
debugged. Proceed as usual.
"
# Re: GDB 6.1 is out !
Posté par tuan kuranes (site web personnel) . En réponse au journal GDB 6.1 is out !. Évalué à 2.
Comme dans :
http://www.nada.kth.se/cgi-bin/info?(ddd.info(...))Integrating%20DDD
ou en plugin de kdevelop 3.0 ...
enfin... gdb j'utilise de moins en moins directement depuis VALGRIND (qui peut appeler gdb):
http://valgrind.kde.org/(...)
Qui lui, a plein de GUI (en plus d'un mode emacs) :
Alleyoop, Valgui, , Gnogrind, ou en plugin de KDevelop v3.0.0
si on aime pas emacs, le projet a suivre en GUI front-end de prog, c'est KDevelop 3.0.0
support de automake, qmake, doxygen, CVS, Perforce, Subversion, Clearcase, CTags...
http://www.kdevelop.org/?filename=3.0/features.html(...)
[^] # Re: Filtre d'envoi sur Thunderbird
Posté par tuan kuranes (site web personnel) . En réponse au journal Filtre d'envoi sur Thunderbird. Évalué à 1.
# Re: Filtre d'envoi sur Thunderbird
Posté par tuan kuranes (site web personnel) . En réponse au journal Filtre d'envoi sur Thunderbird. Évalué à 1.
Mets toi en BCC: auto sur tous tes messages...
Tes envois seront classes par les filtres. Du coup questions (recues) et reponses (envoyes) seront dans le meme dossier...
Avec un peu de chances tu peux avoir une vue par fil de discussions... (thread-like)
C'est plus logique que de de voir chercher question et reponses dans deux repertoire differents...
(Notons que ce probleme n'apparait pas dans Opera 7.50 preview... qui filtre envoi et reponse de la meme facon...(en plus des filtres bayesiens anti-spam (d'ailleurs tres bel article de linux-mag sur les filtres bayesiens...(mais plus trop d'artilcles su Lisp(ou scheme(ou erlang)))))))