DXGK_GDIARG_ALPHABLEND Struktur (d3dkmddi.h)
Die DXGK_GDIARG_ALPHABLEND Struktur beschreibt die Eigenschaften eines hardwarebeschleunigten Alpha-Blend-Vorgangs.
Syntax
typedef struct _DXGK_GDIARG_ALPHABLEND {
[in] RECT SrcRect;
[in] RECT DstRect;
[in] UINT SrcAllocationIndex;
[in] UINT DstAllocationIndex;
[in] UINT NumSubRects;
[in] RECT *pSubRects;
[in] BYTE SourceConstantAlpha;
[in] BOOLEAN SourceHasAlpha;
[in] UINT SrcPitch;
} DXGK_GDIARG_ALPHABLEND;
Angehörige
[in] SrcRect
Eine RECT- Struktur, die den zu kopierenden rechteckigen Bereich definiert. Dieses Quellrechteck wird im Koordinatensystem der Quelloberfläche angegeben und wird durch zwei Punkte definiert: oben links und unten rechts. Die beiden Punkte, die das Rechteck definieren, sind immer gut sortiert. Dieses Rechteck überschreitet niemals die Grenzen der Quelloberfläche, sodass es niemals die Quelloberfläche übersteigt. Dieses Rechteck wird dem Zielrechteck zugeordnet, das durch DstRectdefiniert wird. Weitere Informationen finden Sie in den Hinweisen.
[in] DstRect
Eine RECT- Struktur, die den zu ändernden rechteckigen Bereich definiert. Dieses Rechteck wird im Koordinatensystem der Zieloberfläche angegeben und durch zwei Punkte definiert: oben links und unten rechts. Das Rechteck ist ausschließlich unten rechts; d. h. ihre unteren und rechten Ränder sind kein Teil der Bitblockübertragung. Die beiden Punkte, die das Rechteck definieren, sind immer gut sortiert.
Das durch DstRect- definierte Zielrechteck kann die Grenzen der Zieloberfläche überschreiten, aber Unterrechtecke können nicht. Darüber hinaus werden alle Unterrechtecke garantiert in die Zieloberfläche passen. Unterrechtecke können weiter durch ein umgebendes Rechteck eingeschränkt werden, das kleiner als das Zielrechteck ist.
[in] SrcAllocationIndex
Ein Index des Elements in der Zuordnungsliste, das die Zuordnung angibt, auf die vom SrcRect Quellrechteck verwiesen wird.
[in] DstAllocationIndex
Ein Index des Elements in der Zuordnungsliste, der die Zuordnung angibt, auf die vom DstRect Zielrechteck verwiesen wird.
[in] NumSubRects
Die Anzahl der Unterrechtecke im Zieloberflächenbereich, die durch das DstRect- Zielrechteck begrenzt ist.
[in] pSubRects
Ein Zeiger auf die Unterrechtecke im Zieloberflächenbereich.
[in] SourceConstantAlpha
Der konstante Blendfaktor, der auf die gesamte Quelloberfläche angewendet werden soll. Dieser Wert liegt im Bereich von [0,255], wobei 0 vollständig transparent und 255 vollständig undurchsichtig ist.
[in] SourceHasAlpha
Definiert, ob für die Oberfläche ein Alphakanal verwendet wird. Wenn TRUE, wird davon ausgegangen, dass die Oberfläche über einen Alphakanal verfügt; andernfalls ist der Wert FALSE.
[in] SrcPitch
Die Neigung der Quelloberfläche in Byte.
Bemerkungen
Wenn ein Bitblockübertragungsvorgang (Bitblt) erforderlich ist, werden die x- und y-Dehnungsverhältnisse als Verhältnis der X- und Y-Größen der DstRect und SrcRect--Member berechnet, und der Stretchvorgang wird so fortgesetzt, als ob der COLORONCOLOR-Wert in *Wingdi.h festgelegt ist. Bei einer verkleinerten Bitblockübertragung sollten genügend Pixel ignoriert werden, damit Pixel nicht kombiniert werden müssen. Bei einer dehnenden Bitblockübertragung sollten Pixel repliziert werden.
Wenn Unterrechtecke in den Quelloberflächenbereich transformiert werden, ist das Ergebnis garantiert innerhalb der Quelloberfläche. Die Transformation der Koordinaten eines Unterrechtecks in der Zieloberfläche in Koordinaten in der Quelloberfläche wird durch die folgenden Formeln definiert, wobei:
- (Xd, Yd) ist ein Punkt innerhalb des Unterrechtecks.
- (Xs, Ys) ist ein Punkt innerhalb des Quellrechtecks.
float Ws = SrcRect.right - SrcRect.left;
float Wd = DstRect.right - DstRect.left;
int Xs = round((Xd - DstRect.left + 0.5) * Ws/Wd + SrcRect.left - 0.5)
// OR
int Xs = truncate((Xd - DstRect.left + 0.5) * Ws/Wd + SrcRect.left)
float Hs = SrcRect.bottom - SrcRect.top;
float Hd = DstRect.bottom - DstRect.top;
int Ys = round((Yd - DstRect.top + 0.5) * Hs/Hd + SrcRect.top - 0.5)
//OR
int Ys = truncate((Yd - DstRect.top + 0.5) * Hs/Hd + SrcRect.top)</code></pre>
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 7 |
Header- | d3dkmddi.h (einschließlich D3dkmddi.h) |