Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Kasenoru

Frischling

  • »Kasenoru« ist der Autor dieses Themas

Beiträge: 79

Beruf: Softwareentwickler

  • Private Nachricht senden

1

30.10.2005, 17:00

AlphaBlending und Colorkeying Problem.

Hallo ich hasse 3D deswegen will ich mit DirectX 2D verwenden können
ich hab mir dazu ne Klasse gemacht und es funtzt auch alles wunder ich kann bilder laden,anzeigen,rotieren,bewegen,gamma verändern,etc

nur 2 sachen funzten nicht und zwar AlphaBlending und Colorkeying.

Zuerst zum Colorkeying:
Es funzt zwar ich kann einen Colorkey angeben und die farbe wird dann auch Tranzparent naja oder eben auch nicht wirklich tranzparent denn
wenn sich ein teil eines bildes unter einem teil eines bildes der tranzparent ist befindet dann müsste man den teil sehen können dem ist aber nicht so die tranzparens scheint wohl doch nicht tranzparents zu sein.
ich weiß das das jetzt vielleicht nicht ganz verständlich rüber kam und bei bedarf kann ich auch gerne ein beispiel posten damit ihr besser versteht was ich meine.

Nun zum AlphaBlending:
Ich dachte erst "is ja leicht" ich hatte einfach jeder Vertexfarbe einen vierten wert also das alpha gegeben ich dachte eigentlich so würde es ohne probleme funtzen aber dem ist nicht so egal wie ich das alpha auch verändere das bild bleibt vollständig sichtbar.
das liegt wohl daran das ich keine ahnung hab deswegen brauche ich hilfe ich weiß nich wie ich das lösen kann.
auch hier kann ich gerne einen code posten falls es nötwendig is.

Könnt ihr mir helfen denn ich finde am Clorkeying und AlphaBlending muss es doch nicht scheitern.

Lemming

Alter Hase

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

2

30.10.2005, 19:18

ich nehme einfach mal an du probierst das mit direct3D9.

zu der sache mit dem überlappen weiß ich nich ganz genau, was das problem ist, aber ich nehme an es ist das gleiche wie das alphablending.

vermutlich hast du vergessen die entsprechenden renderstates zu setzen:
zB:

C-/C++-Quelltext

1
2
3
    g_pD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,    TRUE);
    g_pD3DDevice->SetRenderState(D3DRS_SRCBLEND,            D3DBLEND_SRCALPHA);
    g_pD3DDevice->SetRenderState(D3DRS_DESTBLEND,           D3DBLEND_INVSRCALPHA);

weitere infos dazu findest du in der directX hilfe würd ich mir unbedingt durchlesen, gerade für SRCBLEND und DESTBLEND
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Kasenoru

Frischling

  • »Kasenoru« ist der Autor dieses Themas

Beiträge: 79

Beruf: Softwareentwickler

  • Private Nachricht senden

3

30.10.2005, 21:56

Super danke hat gefunzt du bist genial naja oder ich bin einfach nur blöd lol naja danke aufjedenfall.

Lemming

Alter Hase

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

4

30.10.2005, 22:17

so wünscht man sich das.
eine frage, eine antwort, ein problem gelöst *g*
viel glück bei deinem game
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Werbeanzeige