Bonjour,
Je suis actuellement entrain de m'intéresser "en détail" aux différentes étapes pour arriver à un rendu graphique temps réel.
Cependant j'ai quelques interrogations.
J'ai commencé par les grandes étapes du graphics pipeline:
[ame]http://en.wikipedia.org/wiki/Graphics_pipeline[/ame]
Ensuite je suis allé voir le pipeline de DirectX (direct3D si on veut etre rigoureux) et OpenGL.
Q1 - Quel est le processus pour l'évolution de graphique pipeline?
Es ce que c'est soit DX ou OGL qui inove et l'autre suit...
Es ce que cela vient des constructeur de carte graphique qui changent leur architecture et ensuite les API graphiques exploitent les nouvelles fonctionnalités hardware? Ou es ce l'inverse OGL et DX innovent et les constructeurs adaptent leur architecture?
Q2 - Y'a t-il un "consortium" qui régis ses évolutions?
Si non, pourquoi OGL et DX ont le même graphique pipeline globalement?
A ce que j'ai vu l'architecture d'une carte graphique est "proche" du pipeline DX et OGL. mais je ne suis pas aller plus loin la dessus...
Pour en revenir aux API je prend l'exemple de DirectX:
La dernière mouture pour DX11 serait schématiquement comme ca
A la sortie de DX10 on a vu l'apparition du geometry shader. De ce que j'ai compris il permet d'effectuer des opérations sur plusieurs vertex, edges... le barycentre etc...
Q3 - Concretement, que permet de faire ce shader?
Peut-il ajouter des vertex, edges, faces?
Si oui doit-il repasser les informations de l'output stream dans l'input assembler pour qu'ils soit représenté?
Q4 - Si le geometry shader permet d'ajouter des edges, pourquoi avoir rajouté la tesslation dans DX11?
Avec l'arrivée du processus de tesslation de dx11, que pourra apporter le geometry shader en complément de cette nouvelle technologie?
Sera t-il seulement utilisé en tant que point sprites, ou proxy?
Q5 - Dans un moteur de jeu, le moteur physique pourra t-il prendre en compte le "displacement" créé grâce aux nouvelles étapes apporté par DX11?
Concernant les reflections:
Q6 - Pour creer une reflection de type "ray tracing" ou ce situe cette etape dans le pipeline? Au niveau des pixels shaders?des fragments shaders?
Une image ressort assez souvant sur l'évolution de DX9 à DX10:
Q7 - Pourquoi DX9 ne pourrais pas créer une tel représentation de l'eau et du ciel? Cette image n'est pas un peu "exagérée"?
Je ne sais pas si je suis le seul à me poser ses questions...Mais mes recherches sur google tournent en rond sans réel reponses.
Merci de votre lecture
Amicalement Suela
Partager