Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Michael JLI'ler
Anmeldedatum: 20.07.2002 Beiträge: 173 Wohnort: Münster / NRW Medaillen: Keine
|
Verfasst am: 05.01.2003, 13:48 Titel: 2DLayer für D3D |
|
|
hi!
ich versuche gerade, einen layer für d3d zu entwickeln, der im endeffekt vom feeling her wie DirectDraw funktioniert, er kapselt also die D3D funktionen zum zweidimensionalen zeichnen. aber hier meine frage:
der typ LPDIRECT3DSURFACE8 unterstützt ColorKeys, zumindest kann man einen solchen in der funktion D3DXLoadSurfaceFromFileA(...) angeben. Wie aber kann ich die erstellte Surface auf den Monitor bringen MIT dem ColorKey? Mit CopyRects gehts nicht der unterstützt keine ColorKeys
Bitte helfen! _________________ Es geht auch ohne |
|
Nach oben |
|
|
Sören JLI Master Trainee
Anmeldedatum: 26.07.2002 Beiträge: 647 Wohnort: Bonn Medaillen: Keine
|
Verfasst am: 05.01.2003, 21:07 Titel: |
|
|
Ich würde keine Colorkeys verwenden, denn die Methode ist veraltet und wird von vielen Karten nur noch "auf Software" simuliert, was ein wenig Performance kostet! Wenn es möglich ist, verwende 32bit Bilder(sofern du die laden kannst) und mache die Pixel, die du Colorkeyen willst einfach transparent!
Ich hoffe ich hab da jetzt nichts falsch verstanden! |
|
Nach oben |
|
|
Michael JLI'ler
Anmeldedatum: 20.07.2002 Beiträge: 173 Wohnort: Münster / NRW Medaillen: Keine
|
Verfasst am: 06.01.2003, 09:17 Titel: |
|
|
wie mache ich die pixel denn unter D3D transparent? ich bin da nicht so der experte. andererseits muss man dazusagen dass es auf die performance nicht so ankommen wird da ich das quasi nur für ein spielmenu brauche, also zu einem zeitpunkt, zudem das spiel (3d) nicht gleichzeitig noch gerendert wird. _________________ Es geht auch ohne |
|
Nach oben |
|
|
VerruecktesHuhn Super JLI'ler
Anmeldedatum: 30.07.2002 Beiträge: 492 Wohnort: Stuttgart Medaillen: Keine
|
Verfasst am: 06.01.2003, 10:26 Titel: |
|
|
Nun, ich bin mir nich sicher, da ich mich mit dem Grafiken machen nicht so aus kenn unddaher nich so genau weiß, was ein Alpha Kanal ist .
Aber: Man müsste der Textur einen Alphakanal verpassen und den Renderstate dann glaube ich auf Alphablending setzen.
PS:
Es sollte schon bissl schnell sein, da wir dann so das Hub machen könnten |
|
Nach oben |
|
|
Michael JLI'ler
Anmeldedatum: 20.07.2002 Beiträge: 173 Wohnort: Münster / NRW Medaillen: Keine
|
Verfasst am: 06.01.2003, 11:18 Titel: |
|
|
ich habs jetzt man muss es einfach mit LPD3DXSPRITE machen und der LPDIRECT3DTEXTURE8 einen entsprechenden ColorKey verpassen, dann ist es wie bei DD!
@VH: mach doch vielleicht in dem GraficLayer in der Funktion vFontText die Farbe als Parameter, das ist dann viel flexibler. Und vielleicht machste noch ne funktion mit der man den font auch zur laufzeit "editieren" also in der größer oder so verändern kann! _________________ Es geht auch ohne |
|
Nach oben |
|
|
Sören JLI Master Trainee
Anmeldedatum: 26.07.2002 Beiträge: 647 Wohnort: Bonn Medaillen: Keine
|
Verfasst am: 06.01.2003, 19:18 Titel: |
|
|
Pixel transparent machst du, indem du einen Alphakanal verwendest im Malprogramm! Ansonsten Renderstates auf Alphablending setzen wie VH es schon gesagt hat! |
|
Nach oben |
|
|
|