UsePNGImageDecoder() - was ist mit alpha?

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Rings hat geschrieben:ihr stellt euch manchmal an,
warum soll fred was einbauen was nicht alle Grafikkarten können ?
Warum soll er überhaupt diesen ganzen Spielkram machen ?

programmiert es doch selber wenn ihr richtige Coder sein wollt.
oder kauft euch doch dieses Gamedingens und machts darin.

dieses rumgejammere verdeckt meistens nur eure unwissenheit.

just my 2 cents
Mit deiner Argumentation könnte man ja meinen du würdest gar keine Library-Befehle benutzen, sondern nur die jeweilige API.
Wenn Fred allerdings schon sowas wie 3D-Sprites usw. anbietet, dann sollte man doch eigentlich davon ausgehen, dass solche Standards wie Alphamasks mit eingebaut sind.

So, jetzt haben wir schon 4 Cent zusammen, vielleicht langt's ja bald für eine gescheite Grafikengine ;)
Zuletzt geändert von freedimension am 29.01.2005 14:58, insgesamt 1-mal geändert.
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

hab dich falsch verstanden. wenn du auf den dx screen blittest, den pb benutzt und das mit einem sprite bei dem die alphawerte richtig gesetzt sind *könnte* es funktionieren. aber zum einen weiß ich nicht, ob man an die dx screen surface kommt, die pb erzeugt hat, zum anderen kannst du dann wahrscheinlich nicht die displaysprite funktionen benutzen. diese übergeben dx vor dem blit eine struktur, die beschreibt was der blitter machen soll. es ist schon eine weile her, dass ich das letzte mal was mit dx gemacht hab, aber wenn ich mich richtig erinnere muß man dann in der struktur explizit sagen, dass alphainformationen benutzt werden sollen. kann mich da aber auch irren. am besten besorgst du dir vorher die dokumentation zu directx 7 (keine spätere version, da ab directx8 die 2d funktionen nichtmehr dokumentiert sind).
Benutzeravatar
Danilo
-= Anfänger =-
Beiträge: 2284
Registriert: 29.08.2004 03:07

Beitrag von Danilo »

Code: Alles auswählen

IDirectDrawSurface7::Blt

This method does not support z-buffering or alpha blending
during blit operations.
...

Obsolete and unsupported flags

All DDBLT_ALPHA flag values.
   Not currently implemented.
Sieht also so aus als wenn es DirectDraw7 von Haus aus
nicht kann.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Benutzeravatar
Ynnus
Beiträge: 855
Registriert: 29.08.2004 01:37
Kontaktdaten:

Beitrag von Ynnus »

Dann heißt's wohl Warten bis PB auch mit DX 8 oder 9 umgehen kann, was? (Oder eben selbst Initiative ergreifen und sich sowas zusammenschustern).
Benutzeravatar
Danilo
-= Anfänger =-
Beiträge: 2284
Registriert: 29.08.2004 03:07

Beitrag von Danilo »

Sunny hat geschrieben:Dann heißt's wohl Warten bis PB auch mit DX 8 oder 9 umgehen kann, was?
Mit Direct3D 7 (3D-Sprites) sollte es ja möglich sein, aber
Fred sagte mir vor 2 Jahren eh schon das er bald auf DX9
umsteigen wird - sollte also in den nächsten Jahren kommen.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

hmm... also warten oder ne lib für DX9 proggen...

beide alternativen sind nicht sehr erfreulich...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

Nur mal so ne Frage:

Hat sich schon was ergeben?
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

*auf die uhr guck*
...falsches werkzeug...
*auf den kalender guck*

mann das ist ja garnich mehr wahr.. was ein alter thread.. :lol:

also, ich habe es noch nicht selber getestet, aber Zaphod hat vor ein paar monaten angedeutet,
dass der Alphakanal genutzt wird, wenn man 32bit-PNGs als Textures für Sprite3D benutzt.

weg von screen gibt es die neue AlphaImage-feature...

...zusätzlich ist vor längerem eine DX9-Lib veröffentlicht worden hier im forum...

helfen diese hinweise?

was braucht du denn konkret...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Ich will auch endlich mal Transparenz für PNGs auch bei LoadImage(). :|
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

AND51 hat geschrieben:Ich will auch endlich mal Transparenz für PNGs auch bei LoadImage(). :|
PB-Help -> 2DDrawing ->
DrawAlphaImage(ImageID, x, y)

;) erst lesen, dann basteln...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten