Je suis à la recherche de bonnes ressources d'apprentissage pour le matériel graphique (et les logiciels de bas niveau associés). Fondamentalement, je veux en savoir plus sur ce qui se passe sous les couches API opengl / direcx en termes de mise en œuvre des choses.
Je connais ce qui se passe en principe lors des différentes étapes du pipeline de rendu (visualisation, projection, écrêtage, tramage etc.).
Mon objectif est de pouvoir prendre des décisions meilleures et plus éclairées sur les compromis et les optimisations potentielles lors de la programmation graphique / shader en ce qui concerne les types de problèmes suivants;
- mise en lots
- voir l'abattage
- occlusions
- dessiner l'ordre
- éviter les changements d'état
- triangles vs pointsprites
- échantillonnage de texture
- etc
Fondamentalement, tout ce que le programmeur graphique doit savoir sur le matériel graphique moderne pour devenir plus efficace.
Je ne recherche pas vraiment de techniques d'optimisation spécifiques, j'ai plutôt besoin de connaissances plus générales pour pouvoir naturellement écrire du code plus efficace.
Réponses:
La série de billets de blog de Fabian Giesen, A Trip through the Graphics Pipeline, est le meilleur endroit que je connaisse pour avoir une vue directe sur le fonctionnement des GPU modernes et sur ce que les API comme D3D et OpenGL font vraiment pour vous.
la source