gather4 _ po _ c (sm5 - asm)
Verhält sich genauso wie gather4 _ po,führt jedoch einen Vergleich für Texel durch, ähnlich dem Beispiel _ c.
| gather4 _ po _ c dest [ .mask , ] srcAddress [ .swizzle ] , srcOffset [ .swizzle ] , srcResource [ .swizzle ] , srcSampler [ . R ] , srcReferenceValue |
|---|
| Element | BESCHREIBUNG |
|---|---|
| Dest |
[in ] Die Adresse des Ergebnisses des Vorgangs. |
| srcAddress |
[in ] Eine Gruppe von Texturkoordinaten. |
| Srcoffset |
[in ] Der Offset. |
| srcResource |
[in ] Ein Texturregister. |
| srcSampler |
[in ] Ein Samplerregister. |
| srcReferenceValue |
[in ] Einzelne Komponente ausgewählt. |
Bemerkungen
Im Beispiel _ c finden Sie Informationen dazu, wie srcReferenceValue mit jedem abgerufenen Texel verglichen wird. Im Gegensatz zu Beispiel _ c gibt gather4 po _ _ c jedes Vergleichsergebnis zurück, anstatt sie zu filtern.
Diese Anweisung funktioniert wie gather4 _ po nur mit 2D-Texturen. Dies ist im Gegensatz zu gather4 _ c, das auch mit TextureCubes funktioniert.
Bei Formaten mit float32-Komponenten wird der wert, der abgerufen wird, normalisiert oder +-INF unverändert im Vergleichsvorgang verwendet. NaN wird im Vergleichsvorgang als NaN verwendet, aber die genaue Bitdarstellung des NaN kann geändert werden. Denormale werden beim Vergleich auf 0 (null) geleert. Bei TextureCubes muss eine Synthese des fehlenden 4. Texels an Ecken auftreten, sodass das Konzept der Rückgabe von Bits unverändert für das synthetisierte Texel nicht zu anwendung findet.
Die für gather4 _ po _ c unterstützten Formate sind identisch mit denen, die für Beispiel c unterstützt _ werden. Dies sind Einzelkomponentenformate, also . R auf srcSampler, anstatt ein beliebiges Swizzle.
gather4 _ po _ c für eine ungebundene Ressource gibt 0 zurück.
Verwenden Sie diese Methode zum Filtern von Schattenkarten.
Diese Anweisung gilt für die folgenden Shaderstufen:
| Scheitelpunkt | Rumpf | Domain | Geometrie | Pixel | Compute |
|---|---|---|---|---|---|
| X | X | X | X | X | X |
Minimales Shadermodell
Diese Anweisung wird in den folgenden Shadermodellen unterstützt:
| Shadermodell | Unterstützt |
|---|---|
| Shadermodell 5 | ja |
| Shadermodell 4.1 | Nein |
| Shadermodell 4 | Nein |
| Shadermodell 3 (DirectX HLSL) | Nein |
| Shadermodell 2 (DirectX HLSL) | Nein |
| Shadermodell 1 (DirectX HLSL) | Nein |