Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Rambuffertblandaren kan nu blanda alfakanaler oberoende av färgkanalsblandning på återgivningsmål. Den här kontrollen är aktiverad med ett nytt återgivningstillstånd, D3DRS_SEPARATEALPHABLENDENABLE.
När D3DRS_SEPARATEALPHABLENDENABLE är inställt på FALSE- (vilket är standardvillkoret) är blandningsfaktorerna och åtgärderna för återgivningsmål som tillämpas på alfa desamma som de som definierats för att blanda färgkanaler. En drivrutin måste ange D3DPMISCCAPS_SEPARATEALPHABLEND-gränsen för att indikera att den kan stödja alfablandning med återgivningsmål. Se till att aktivera D3DRS_ALPHABLEND för att tala om för pipelinen att alfablandning behövs.
För att styra faktorerna i alfakanalen för render-målblandarna definieras två nya återgivningstillstånd på följande sätt:
D3DRS_SRCBLENDALPHA
D3DRS_DESTBLENDALPHA
Precis som D3DRS_SRCBLEND och D3DRS_DESTBLEND kan dessa anges till ett av värdena i D3DBLEND uppräkning. Inställningar för käll- och målblandning kan kombineras på flera sätt, beroende på inställningarna i SrcBlendCaps- och DestBlendCaps-medlemmarna i D3DCAPS9.
Alfablandningen görs på följande sätt:
renderTargetAlpha = (alfai * srcBlendOp) BlendOp (alfart * destBlendOp)
Var:
- alphai är indata alfa-värdet.
- srcBlendOp är en av blandningsfaktorerna i D3DBLEND.
- BlendOp är en av blandningsfaktorerna i D3DBLENDOP.
- alphart är alfavärdet render-target.
- destBlendOp är en av blandningsfaktorerna i D3DBLEND.
- renderTargetAlpha är det slutliga blandade alfavärdet.
Relaterade ämnen