Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Beni5 Super JLI'ler
Alter: 36 Anmeldedatum: 12.11.2003 Beiträge: 310 Wohnort: Switzerland Medaillen: Keine
|
Verfasst am: 11.01.2004, 13:36 Titel: Transparente Surfaces in dx9? |
|
|
Hallo
Ich mal n Bild mit Alphakanal als Surface anzeigen lassen, aber der Alphakanal wurde nicht beachtet. Wie wende ich den an auf Surfaces?
Danke |
|
Nach oben |
|
|
bladegool JLI'ler
Anmeldedatum: 26.08.2003 Beiträge: 127 Wohnort: München Medaillen: Keine
|
Verfasst am: 11.01.2004, 14:27 Titel: |
|
|
Du musst ein paar RenderStates und TextureStageState aktivieren/setzen
z.b
Code: |
// Direct3D soll den Alphakanal der Texturen und den Alphawert der Streufarbe verwenden.
g_pD3DDevice->SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
g_pD3DDevice->SetTextureStageState(0, D3DTSS_ALPHAARG1, D3DTA_CURRENT);
g_pD3DDevice->SetTextureStageState(0, D3DTSS_ALPHAARG2, D3DTA_TEXTURE);
// Das Alpha-Blending aktivieren
g_pD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, TRUE);
g_pD3DDevice->SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
g_pD3DDevice->SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
|
|
|
Nach oben |
|
|
Beni5 Super JLI'ler
Alter: 36 Anmeldedatum: 12.11.2003 Beiträge: 310 Wohnort: Switzerland Medaillen: Keine
|
Verfasst am: 11.01.2004, 15:18 Titel: |
|
|
Hmm geht irgendwie net
Verwechselst du das nicht mit Sprites? Ich glaube Texturen verwendet man nur bei Sprites? |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 11.01.2004, 16:57 Titel: |
|
|
Texturen werden für fast alle Darstellungsarten verwendet.
Zu deinem Problem: es kann sein das entweder deine Textur gar keine Alphamap besitzt oder du die TExtur ohne Alphabits geladen hast. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Beni5 Super JLI'ler
Alter: 36 Anmeldedatum: 12.11.2003 Beiträge: 310 Wohnort: Switzerland Medaillen: Keine
|
Verfasst am: 11.01.2004, 17:42 Titel: |
|
|
Ich habe einfach CreateOffscreenPlainSurface benutzt. |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 11.01.2004, 17:54 Titel: |
|
|
Damit hast du keine Textur und damit auch keine Alphaeffekte. Das wird leider beim Kopieren (ich denke mal du nutzt StretchRect) nicht berücksichtigt.
C. |
|
Nach oben |
|
|
|