Textur nach copyrect und mask flag(4) (Erledigt)
Übersicht

SilbersurferBetreff: Textur nach copyrect und mask flag(4) (Erledigt) |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi leute habe ein problem mit meiner erstellten textur!
ich lade mir ein image ein welches ich mittels copyrect dann in den Texturbuffer schreibe, soweit so gut.... das anzeigen ist kein problem solange ich kein alpha (2) oder mask (4) flag setze, dann ist der inhalt aufeinmal ganz weg (transparent) eigentlich sollten doch nur die schwarzen anteile verschwinden und alpha aktiviert werden oder liege ich da falsch ? Edit zur besseren verständnis diese bild zum beispiel.. ![]() bei diesen bild würde ich es als textur laden, und mask flag setzen. Dann würde alles was schwarz ist transparent sobald ich es aber als image lade dann kopiere ist komplett transparent warum das hat da keiner eine Idee ?????? hier mein code dazu BlitzBasic: [AUSKLAPPEN] Function Is_create_fontSurface(mesh,image$,fxflag=1,tflag=1) |
||
- Zuletzt bearbeitet von Silbersurfer am Mi, Apr 27, 2011 12:47, insgesamt einmal bearbeitet
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
LoadImage läd keine Transparenz.
Da musst du entweder eine eigene LoadImage Funktion schreiben, oder die Pixel einzeln mit Read-/WritePixel kopieren, und dabei einen entsprechenden Alpha-Wert setzen. |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kann man nicht aus einem Texturenbuffer in einen Texturenbuffer laden? Dann wär's doch das, was gesucht ist.
Und die Textur lädt man richtig mit den Flags 1+2, s. LoadTexture ![]() |
||
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Pac-Man ja das schon, aber in meinen fall nicht.
Denn ich möchte Bilder die nicht textur größen haben z.B. (2.4.6.8.32.64) usw. unverzerrt in eine neu erstellte textur kopieren.. drum ist auch ärgerlich das blitz3d das nicht bei Image befehlen unterstützt was aMul auch schon sagte.. ich habe da jetzt mal die freeimage.dll mir deshalb angeschaut, und hoffe das ich es damit hin bekomme nur wie gesagt ist es natürlich echt dumm das zwar alpha in texturen funtz und dabei die image befehle völlig außen vorgelassen wurden... zumindestens was dem Laden angeht den copyreckt,writepixel,readpixel können das ja.... |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Clippe die Bilder doch und mach sie größer? | ||
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Pac-Man wie meinst du das jetzt ?? clippen
wenn ich z.B. einen bitmap font lade der eine bildgröße von 300*96 hat. dann wird der von texturload auf 512*128 hochscaliert was nicht sin und zweck ist. denn das macht das graben unbrauchbar... Weshalb ich auf den gedanken kam diese normal zu laden, und dann in eine Textur zu kopieren.. Was ja auch geht, bis auf das dann alle alpha werte nicht mehr anwedbar sind |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
dann bearbeite die textur in einem bildbearbeitungsprogramm und füge leeren platz rechts und unten ein. | ||
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das ist es, was ich zur Zeit ja auch mache Pac-Man nur ne schöne lösung ist das
natürlich nicht... Würde viel lieber ne andere möglichkeit finden, und danke für deine mühe mir da weiter zu helfen |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja, es ist ziemlich blöd, dass man nicht Alpha und Unverzerrtes auf einmal haben kann. Wenns jedoch nur um Masking geht, hilft dir vielleicht folgendes weiter: So ersetzt man Pixel einer bestimmten Farbe (im Beispiel das Pink 248,0,248) durch transparente Pixel, Code: [AUSKLAPPEN] For x = 0 To width -1
For y = 0 To height-1 If ReadPixelFast(x,y,TextureBuffer(tex))= $FFF800F8 Then WritePixelFast x,y,0, TextureBuffer(tex) EndIf Next Next |
||
MrKeks.net |
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke erstmal Mr.Keks, aber so geht es nicht, da die werte nicht koreckt in den Texturbuffer geschrieben werden.
Ich weiß nicht warum z.b color 0,0,0 im texturbuffer kein wirkliches rgb $000000 ist,zumindestens bei activem alpha nicht auch als ich die RGB werte in RGB+Alpha umgewandelt habe war RGB $000000 nicht transparent obwohl es eigent lich so sein sollte. Nu habe ich das ganze etwas abgeändert und es klappt jetzt endlich... ![]() anstatt den RGB wert zu überprüfen, habe ich die aufgesplitteten R,G,B werte auf maskfarbe überprüft und siehe da es geht.... hier noch der code dazu für alle die es Interessiert ![]() gruß Silbersurfer BlitzBasic: [AUSKLAPPEN] ;erstellt eine Textur mit flags |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
Naja, der von mir gepostete Code ist aus einem Projekt kopiert, in dem es so funktioniert ![]() |
||
MrKeks.net |
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das funktioniert auch, wenn es nur im Texturbuffer gemacht wird Mr.Keks
aber leider nicht wenn man von Imagebuffer es zum Texturbuffer macht. egal mit dem code kann man aufjedenfall jetzt, vom Imagebuffer daten zum Texturbuffer mit alphaflag schreiben die dann auch zu sehen sind ![]() |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group