J'ai appris DirectX 11, et dans le livre que je suis en train de lire, il indique que le Rasterizer génère des Fragments. Il est de ma compréhension, que ces fragments sont la sortie du Rasterizer (qui introduit des primitives géométriques), et en fait ne sont que 2D Positions (votre 2D Render Target View)DirectX 11 Qu'est-ce qu'un fragment?
Voici ce que je pense que je comprends, s'il vous plaît corriger moi. Le Rasterizer utilise des primitives géométriques (sphères, cubes ou boîtes, tores , pyramides, maillages triangulaires ou maillages polygonaux) (https://en.wikipedia.org/wiki/Geometric_primitive). Il traduit ensuite ces primitives en pixels (ou points) qui sont mappés à votre vue cible de rendu (c'est-à-dire en 2D). C'est ce qu'est un Fragment. Pour chaque fragment, il exécute Pixel Shader, afin de déterminer sa couleur. Cependant, je suppose seulement parce qu'il n'y a pas d'explication simple de ce que c'est (que je peux trouver).
Mes questions sont ...
1: Qu'est-ce qu'un Rasterizer? Quelles sont les entrées et quelle est la sortie?
2: Qu'est-ce qu'un fragment, par rapport à la sortie Rasterizer.
3: Pourquoi un fragment est-il une valeur float 4 (SV_Position)? Si c'est seulement l'espace d'écran 2D pour la vue cible de rendu? 4: Comment est-il corrélé à la sortie cible de rendu (la texture de l'écran 2D)? 5: Est-ce la raison pour laquelle nous effaçons la vue Render Target View (quelle que soit la couleur), car Razterizer et Pixel Shader ne s'exécutent pas sur tous les emplacements X, Y de la vue Render Target View?
Merci!
Je vous recommande de jeter un oeil à certains manuels classiques sur l'infographie 3D. Il vous manque une compréhension de base du fonctionnement de * tous * les pipelines 3D. Une fois que vous avez ce contexte, vous pouvez alors apprendre comment exactement l'API Direct3D correspond au pipeline 3D classique et vous permettra de mieux comprendre comment le matériel l'accélère. Je n'écris plus de routines de numérisation de triangles texturées par logiciel - et je n'ai jamais été particulièrement doué pour ces routines - mais même une implémentation de logiciel merdique vous apprendra beaucoup de ce qui se passe ici. –
Le manuel classique ici est [Foley et vam Dam] (https://www.amazon.com/Computer-Graphics-Principles-Practice-2nd/dp/0201848406). [Hearn et Baker] (https://www.amazon.com/Computer-Graphics-C-Version-2nd/dp/0135309247) est assez bon, tout comme le [Watt] (https://www.amazon.com/Computer-Graphics-3e-Alan-Watt/dp/0201398559) livre. –
@ChuckWalbourn Merci! Recommandez-vous ces vieux livres de temps, ou obtenez-vous une version améliorée? Je cherche des réponses que je suppose ne sont pas présentes dans les livres génériques directx. Malheureusement, j'ai besoin de connaître les raisons pour lesquelles quelque chose fonctionne avant d'avoir le moment "AHA". – Mike5050