DirectX: Alpha-Wert festlegen (nicht im Material)
-
Hallo,
wenn ich im Material eines Objektes den Alpha-Anteil der Diffus-Farbe verändere, kann ich das Objekt transparent machen.
Kann man den Wert für Alpha-Blending in DirectX auch global festlegen (z.B. durch ein RenderState), sodass alle danach gerenderten Objekte einen bestimmten Alpha-Wert haben - unabhängig davon was in ihrem Material eingestellt ist?
mfg. Tubos
-
Global nicht, aber mit dem Texture Faktor müsste das ja auch ganz gut gehen.
Bye, TGGC (Keine Macht den Dummen)
-
Texture Factor... da finde ich ein bisschen was in der MSDN, ist das ein SetTexureStage - Aufruf?
Und funktioniert das auch wenn das Objekt keine Textur hat?
-
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_BLENDFACTOR);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVBLENDFACTOR);
-
Das mache ich bereits gemacht!
Aber wie stelle ich jetzt den Alpha-Wert ein?
-
Dokumentation schrieb:
D3DRS_BLENDFACTOR
D3DCOLOR used for a constant blend-factor during alpha blending. This functionality is available if the D3DPBLENDCAPS_BLENDFACTOR capabilities bit is set in the SrcBlendCaps member of D3DCAPS9 or the DestBlendCaps member of D3DCAPS9. See D3DRENDERSTATETYPE. The default value is 0xffffffff.
-
Tubos schrieb:
Das mache ich bereits gemacht!
Aber wie stelle ich jetzt den Alpha-Wert ein?
Hä du hast doch schon ein Objekt laut erstem Post auf transparent gestellt...
-
RTFM. Steht doch echt mal alles drin.
Bye, TGGC (Keine Macht den Dummen)
-
Danke!
-
np
Bye, TGGC (Keine Macht den Dummen)