Transparenz-Leuchten.. mit BlendingMode
Transparenz-Leuchten.. mit BlendingMode
Ich habe paar monate nichts gemacht mit PB und ich wollte nun fragen ob sich was auf dem Gebiet mit den Sprite3DblendingMode was getan hat?
Ich brauche diesen Effekt, wo die Pixelfarben 'aufaddiert' werden, was also so eine art leuchte verursacht. (schwarze Farbe wird kaum angezeigt, helle hingegen setzt sich stark durch) Auf meiner nVidia Graka ist es afaik der blendingMode 0,2 gewesen.
Nunja auf manchen Rechnern gabs jedoch Probleme damit, entweder wurde der Effekt mit Fehlern angezeigt oder es wurde ein ganz anderer dafür angezeigt.
Verwendet einer hier BlendingMode effekte und hat damit schon erfahrung? Gibts vieleicht denselben Effekt auch unter einer anderen Kombination?
Im altem Forum hat jemand dazu eine Recherche gemacht, würde mich interessieren was daraus wurde..
edit:
ahja, hab den Thread nochmal gefunden :]
http://robsite.de/php/pureboard-archiv/ ... highlight=
Scheint was gefunden zu haben wie es auch auf Radeon Grafikkarten funktioniert.
Vieleicht kanns hier einer bestätigen?
Ich brauche diesen Effekt, wo die Pixelfarben 'aufaddiert' werden, was also so eine art leuchte verursacht. (schwarze Farbe wird kaum angezeigt, helle hingegen setzt sich stark durch) Auf meiner nVidia Graka ist es afaik der blendingMode 0,2 gewesen.
Nunja auf manchen Rechnern gabs jedoch Probleme damit, entweder wurde der Effekt mit Fehlern angezeigt oder es wurde ein ganz anderer dafür angezeigt.
Verwendet einer hier BlendingMode effekte und hat damit schon erfahrung? Gibts vieleicht denselben Effekt auch unter einer anderen Kombination?
Im altem Forum hat jemand dazu eine Recherche gemacht, würde mich interessieren was daraus wurde..
edit:
ahja, hab den Thread nochmal gefunden :]
http://robsite.de/php/pureboard-archiv/ ... highlight=
Scheint was gefunden zu haben wie es auch auf Radeon Grafikkarten funktioniert.
Vieleicht kanns hier einer bestätigen?
besucht http://www.dark-matter-soft.de
Hm naja da kam am ende des Thread nichts raus, also nichts handfestes was zu 100% was auf allen Grakas geht.
Laut dem anderem Thread sollen 5,2. 6,2 und 7,7 gehen.
Bei mir klappen sie alle. Verwende zurzeit 7,7
Würde mich interessieren wenn das einer mit ner Radeon bestätigen könnte ob die genannten Kombinationen bei ihm auch richtig gehen.
Laut dem anderem Thread sollen 5,2. 6,2 und 7,7 gehen.
Bei mir klappen sie alle. Verwende zurzeit 7,7
Würde mich interessieren wenn das einer mit ner Radeon bestätigen könnte ob die genannten Kombinationen bei ihm auch richtig gehen.
besucht http://www.dark-matter-soft.de
Der Thread war dieser hier gell:
http://robsite.de/php/pureboard-archiv/ ... d+blending
Ich hab mich damals mit ATI und nvidia Support in Verbindung gesetzt. Das Problem war zum einen dass PB zwar Blending Modi über 16 unterstützt, die aber noch garnicht existieren.Soweit ich das verstanden hab. Und darauf reagieren Grafikkarten jeweils anders.
Des weiteren gibt es Probleme mit Blending Modi 0, 1 - den Grund hab ich nichtmehr im Kopf, glaub aber es war der selbe wie oben. Ich bekam damals eine List von verfügbaren Modi zugeschickt, die unterscheidet sich durchaus etwas von den von PB zur verfügung gestellten Modi.
Und das eigentliche Problem war dann, dass z.B. "Faktor" einen zusätzlichen Wert (eben diesen Faktor) braucht, den Purebasic aber nicht ermittelt bzw abfrägt. - Auf "kein Faktor vorhanden" reagiert jede Grafikkarte anders, das erklärt die unterschiedlichen Ergebnisse.
Auf diesem Rechner hier hab ich den Mailverkehr nicht, aber sobald ich an den anderen Rechner komme such ich die Liste raus die mir der Support damals geschickt hat. - Eigentlich müssten alle Kombinationen funktionieren die zwischen 2 und 13 liegen.
Die werte die ich damals im Thread genannt habe , 5,2 6,2 7,7 waren nur die Werte die ich von Forenusern mit Geforce Karte zurückbekommen hab, die mein Tool getestet haben, und mit diesen Werten die von mir GESUCHTEN Effekte erreicht haben!
Das Problem lag darin dass nicht nur einige Kombinationen NICHT funktioniert haben, sondern zwar auf beiden Karten funktionieren, aber jeweils anders aussehen.. sodass man, wenn man nicht exakt den selben Effekt mit dem selben Sprite auf beiden Karten testet, man zunächst nicht bemerkt dass es evtl probleme geben kann.
Deshalb hab ich damals zum Test mit meinem Tool aufgerufen. Die User sollten mit verschiedenen Kombinationen die Effekte hervorrufen die ich in den Screenshots mitgeliefert hab.
Das waren dann eben die Kombis 5,2 6,2 7,7 - andere Werte könnten auch auf beiden Karten gehen, waren aber für MEINEN gewünschten Effekt nicht die richtigen. Andere Kombinationen zwischen 2 und 13 sollten also auch gehen
.. nur damit keine Verwirrung aufkommt...
PS:
falls du mein Tool noch nicht hast, lads dir mal von meiner Homepage runter, es ist da recht hilfreich. Gerade wenn du eine Geforce Karte hast, denn die Screenshots die das Tool zeigt sind die von meiner Radeon Karte und sind vermjutlich die Effekte die du brauchst, du siehst also gleich wie sie "live" bei dir aussehen, und auf meiner Radeon damals aussahen.
http://robsite.de/php/pureboard-archiv/ ... d+blending
Ich hab mich damals mit ATI und nvidia Support in Verbindung gesetzt. Das Problem war zum einen dass PB zwar Blending Modi über 16 unterstützt, die aber noch garnicht existieren.Soweit ich das verstanden hab. Und darauf reagieren Grafikkarten jeweils anders.
Des weiteren gibt es Probleme mit Blending Modi 0, 1 - den Grund hab ich nichtmehr im Kopf, glaub aber es war der selbe wie oben. Ich bekam damals eine List von verfügbaren Modi zugeschickt, die unterscheidet sich durchaus etwas von den von PB zur verfügung gestellten Modi.
Und das eigentliche Problem war dann, dass z.B. "Faktor" einen zusätzlichen Wert (eben diesen Faktor) braucht, den Purebasic aber nicht ermittelt bzw abfrägt. - Auf "kein Faktor vorhanden" reagiert jede Grafikkarte anders, das erklärt die unterschiedlichen Ergebnisse.
Auf diesem Rechner hier hab ich den Mailverkehr nicht, aber sobald ich an den anderen Rechner komme such ich die Liste raus die mir der Support damals geschickt hat. - Eigentlich müssten alle Kombinationen funktionieren die zwischen 2 und 13 liegen.
naja ich programmiere auf einer Radeon 9800, die beiden Testrechner haben 9500 und ne alte Radeon Mobility aufm Laptop. Da gehen sie alle.Würde mich interessieren wenn das einer mit ner Radeon bestätigen könnte ob die genannten Kombinationen bei ihm auch richtig gehen.
Die werte die ich damals im Thread genannt habe , 5,2 6,2 7,7 waren nur die Werte die ich von Forenusern mit Geforce Karte zurückbekommen hab, die mein Tool getestet haben, und mit diesen Werten die von mir GESUCHTEN Effekte erreicht haben!
Das Problem lag darin dass nicht nur einige Kombinationen NICHT funktioniert haben, sondern zwar auf beiden Karten funktionieren, aber jeweils anders aussehen.. sodass man, wenn man nicht exakt den selben Effekt mit dem selben Sprite auf beiden Karten testet, man zunächst nicht bemerkt dass es evtl probleme geben kann.
Deshalb hab ich damals zum Test mit meinem Tool aufgerufen. Die User sollten mit verschiedenen Kombinationen die Effekte hervorrufen die ich in den Screenshots mitgeliefert hab.
Das waren dann eben die Kombis 5,2 6,2 7,7 - andere Werte könnten auch auf beiden Karten gehen, waren aber für MEINEN gewünschten Effekt nicht die richtigen. Andere Kombinationen zwischen 2 und 13 sollten also auch gehen
.. nur damit keine Verwirrung aufkommt...
PS:
falls du mein Tool noch nicht hast, lads dir mal von meiner Homepage runter, es ist da recht hilfreich. Gerade wenn du eine Geforce Karte hast, denn die Screenshots die das Tool zeigt sind die von meiner Radeon Karte und sind vermjutlich die Effekte die du brauchst, du siehst also gleich wie sie "live" bei dir aussehen, und auf meiner Radeon damals aussahen.
2D Game H.E.R.A. (Entwicklung eingefroren)
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
- Ypser
- XMas-Contest-Gewinner '03
- Beiträge: 128
- Registriert: 29.08.2004 14:35
- Computerausstattung: Win7
- Wohnort: Ingelheim
- Kontaktdaten:
Sicher? Ich habe da was geschrieben, von (5, 7), was eigentlich überall funktionieren sollte.
Viele Modi scheinen auch auf den ersten Blick zu funktionieren, aber wenn man etwas damit rumspielt stellt man fest,
dass bei einigen Modi die Transparenz-Angaben bei DisplaySprite3D ignoriert werden... Also Vorsicht!
Viele Modi scheinen auch auf den ersten Blick zu funktionieren, aber wenn man etwas damit rumspielt stellt man fest,
dass bei einigen Modi die Transparenz-Angaben bei DisplaySprite3D ignoriert werden... Also Vorsicht!
absolut nicht sicherYpser hat geschrieben:Sicher? Ich habe da was geschrieben, von (5, 7), was eigentlich überall funktionieren sollte.
Viele Modi scheinen auch auf den ersten Blick zu funktionieren, aber wenn man etwas damit rumspielt stellt man fest,
dass bei einigen Modi die Transparenz-Angaben bei DisplaySprite3D ignoriert werden... Also Vorsicht!
nicht alle modi behandeln diei transparenz gleich, manche haben keine transparenzfarbe, andere schon, etc. - sollte man mit meinem Tool eigentlich feststellen können.
Wenn du möchtest, dann mach doch mal ein paar screenshots wie ein modus aussieht aber nicht aussehen sollte auf verschiedenen karten
2D Game H.E.R.A. (Entwicklung eingefroren)
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
Im DX-SDK steht eigentlich drin wie man die Grafikkarte abfragen
kann, ob sie einen bestimmten Modus interstützt oder nicht.
Entweder PB checkt das nicht (was ich mal annehme), oder
es hat noch nie jemand den Rückgabewert von BlendingMode
gecheckt (was auch nicht dokumentiert ist).
Du, SirCus, warst damals aber auf einer ganz falschen Spur, soweit
ich mich erinnere.
Ich habe damals extra die Konstanten (bis 24) überprüft, und
Du hattest da ganz andere Konstanten als in der PB-Hilfe.
Die Werte aus der PB-Hilfe stimmen mit denen vom DX7-SDK
jedenfalls überein - Du hattest da etwas ganz anderes, Konstanten
für eine andere Funktion.
Schau nochmal im DX7-SDK nach den Konstanten D3DTOP_.... -
Du hattest D3DBLEND oder so.
"D3DTOP" = Direct3D TextureOPeration, siehe Funktion
Direct3DDevice7.SetTextureStageState().
Die PB-Befehle scheinen das allerdings intern immer zu
setzen (in Sprite3DBlendingMode), so daß man da nicht
eingreifen kann. Ich habs jedenfalls damals nicht geschafft
und dann sein gelassen. Wenn Du alles selbst machst (ohne
den PB-Befehl), dann ist das aber sicher kein Problem.
kann, ob sie einen bestimmten Modus interstützt oder nicht.
Entweder PB checkt das nicht (was ich mal annehme), oder
es hat noch nie jemand den Rückgabewert von BlendingMode
gecheckt (was auch nicht dokumentiert ist).
Du, SirCus, warst damals aber auf einer ganz falschen Spur, soweit
ich mich erinnere.
Ich habe damals extra die Konstanten (bis 24) überprüft, und
Du hattest da ganz andere Konstanten als in der PB-Hilfe.
Die Werte aus der PB-Hilfe stimmen mit denen vom DX7-SDK
jedenfalls überein - Du hattest da etwas ganz anderes, Konstanten
für eine andere Funktion.
Schau nochmal im DX7-SDK nach den Konstanten D3DTOP_.... -
Du hattest D3DBLEND oder so.
"D3DTOP" = Direct3D TextureOPeration, siehe Funktion
Direct3DDevice7.SetTextureStageState().
Die PB-Befehle scheinen das allerdings intern immer zu
setzen (in Sprite3DBlendingMode), so daß man da nicht
eingreifen kann. Ich habs jedenfalls damals nicht geschafft
und dann sein gelassen. Wenn Du alles selbst machst (ohne
den PB-Befehl), dann ist das aber sicher kein Problem.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
ich hab keine ahnung was ich hatteDanilo hat geschrieben: Du, SirCus, warst damals aber auf einer ganz falschen Spur, soweit
ich mich erinnere.
Ich habe damals extra die Konstanten (bis 24) überprüft, und
Du hattest da ganz andere Konstanten als in der PB-Hilfe.
Die Werte aus der PB-Hilfe stimmen mit denen vom DX7-SDK
jedenfalls überein - Du hattest da etwas ganz anderes, Konstanten
für eine andere Funktion.
Schau nochmal im DX7-SDK nach den Konstanten D3DTOP_.... -
Du hattest D3DBLEND oder so.
"D3DTOP" = Direct3D TextureOPeration, siehe Funktion
Direct3DDevice7.SetTextureStageState().
SetD3DBlendingMode(i,o) setze
dass ich dann die D3DBlendingModi setze. Wo war ich da auf der falschen Spur?
Ich kann mich nicht an D3DTOP_ oder ähnliche Konstanten erinnern. Ich hab nur mit der PB-Hilfe und den PB Befehlen gearbeitet, sonst nix.
Die Rückgabewerte der Modi sagen zwar aus ob der Modus funktioniert, nicht aber wie die Grafikkarte ihn interpretiert. Anscheinend geht das über Purebasic teilweise falsch. denn obwohl der Modus korrekt initialisiert wird, stellen manche Grafikkarten einige Modi unterschiedlich dar.
Ich war lediglich auf der Suche nach Modi, die auf den gängigen Karten gleich dargestellt werden.
2D Game H.E.R.A. (Entwicklung eingefroren)
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
@Danilo nochmal zum beweis
wennich in der PB HIlfe auf Sprite3DBlendingmode gehe,
dann bekomme ich folgendes output
wennich in der PB HIlfe auf Sprite3DBlendingmode gehe,
dann bekomme ich folgendes output
nichts anderes habe ich benutzt.Sprite3DBlendingMode()
Syntax
Sprite3DBlendingMode(Ausgangsmodus, Zielmodus)
Beschreibung
Verändert die Art, wie das Sprite3D (beim Benutzen von DisplaySprite3D() und einem Transparenz Wert) grafisch mit dem Hintergrund verbunden ("blended") wird. Beide Modi (Ausgangs- und Zielmodus) können einen Wert zwischen 0 und 24 annehmen. Dieser Befehl ist nur für fortgeschrittene Programmierer. Hier die DirectX Liste der zugehörigen Werte:
#D3DTOP_SELECTARG1 = 2
#D3DTOP_SELECTARG2 = 3
#D3DTOP_MODULATE = 4
#D3DTOP_MODULATE2X = 5
#D3DTOP_MODULATE4X = 6
#D3DTOP_ADD = 7
#D3DTOP_ADDSIGNED = 8
#D3DTOP_ADDSIGNED2X = 9
#D3DTOP_SUBTRACT = 10
#D3DTOP_ADDSMOOTH = 11
#D3DTOP_BLENDDIFFUSEALPHA = 12
#D3DTOP_BLENDTEXTUREALPHA = 13
#D3DTOP_BLENDFACTORALPHA = 14
#D3DTOP_BLENDTEXTUREALPHAPM = 15
#D3DTOP_BLENDCURRENTALPHA = 16
#D3DTOP_PREMODULATE = 17
#D3DTOP_MODULATEALPHA_ADDCOLOR = 18
#D3DTOP_MODULATECOLOR_ADDALPHA = 19
#D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20
#D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21
#D3DTOP_BUMPENVMAP = 22
#D3DTOP_BUMPENVMAPLUMINANCE = 23
#D3DTOP_DOTPRODUCT3 = 24
2D Game H.E.R.A. (Entwicklung eingefroren)
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
www.chamaeleo-fx.de.vu
- mein Lieblingszitat
"die Informationsumwelt wird von einer fürchterlichen Menge an Unsinn und Lügen verschmutzt" (Stanislaw Lem, Lokaltermin, 1954 (!) )
http://www.stanislaw-lem.de/zitate/zitate.shtml
OK, Sorry. Ich dachte Du hattest mal was von D3DBLENDSirCus hat geschrieben:@Danilo nochmal zum beweis
[...]
nichts anderes habe ich benutzt.
erzählt, und das sieht man auch hier:
D3DBlending Mode 14 ..wie faktor setzen? - D3DBLEND_BLENDFACTOR
War meine Erinnerung also doch richtig - hatte dort sogar
schon geantwortet.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
