CreateTexture : Masked funtz nicht ...
Übersicht

![]() |
ToeBBetreff: CreateTexture : Masked funtz nicht ... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also ich hab eine Texture erstell mit CreateTexture. Da hab ich als dritten parameter noch die "4" angehängt, also masked. Damit schwarze flächen nicht eingezeichnet werden. Aber jetzt wird gar nix mehr eingezeichnet !
Der Hintergrund ist schwarz, die schrift weiß, aber es wird nix angezeigt : Code: [AUSKLAPPEN] Local IText = CreateTexture(512,512,4)
Local Font = LoadFont(FFile$,13,0,0,0) Color 0,0,0 Rect 0,0,512,512 CopyRect(0,0,512,512,0,0,BackBuffer(),TextureBuffer(IText)) Color 255,255,255 SetFont Font For x = 0 To 15 For y = 0 To 15 Cls Rect 12,12,8,8 Text 16,16,Zeichensatz(x,y),1,1 CopyRect(0,0,32,32,x*32,y*32,BackBuffer(),TextureBuffer(IText)) Next Next Cls EntityFX IMesh,1+2+8+16 EntityBlend IMesh,1 Oder liegt das daran das ich mit CopyRect arbeite und nicht mit SetBuffer TextureBuffer() ? mfg ToeB |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zeig mal bitte den ganzen Code, vielleicht machst du was beim anzeigen falsch. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jetzt ist ein weiteres Problem hinzugekommen : Ich kann in die Texture nur Rects und Ovals und so malen, nicht aber Texte schreiben.
Code: [AUSKLAPPEN] Function f2d_LoadFont(FCameraHandle,FFile$)
Local IPos = S_NFDB() Local IPivot = PeekInt(f2dCamera,FCameraHandle+f2dCameraPivot) Local IMesh = CreateMesh(IPivot) Local ISurf = CreateSurface(IMesh) Local IText = CreateTexture(512,512,4) Local Font = LoadFont(FFile$,13,0,0,0) SetFont Font SetBuffer TextureBuffer(IText) Color 0,0,0 Rect 0,0,512,512 Color 255,255,255 For x = 0 To 15 For y = 0 To 15 Text x*32+16,y*32+16,"HALLO",1,1;Zeichensatz(x,y),1,1 Rect x*32,y*32,16,16 Next Next Text 256,256,"TESTTESTTEST",1,1 SetBuffer BackBuffer() If IText = 0 RuntimeError("Bild nicht gefunden : "+FFile$) If TextureWidth(IText) <> TextureHeight(IText) RuntimeError("Bild ist nicht gleichseitig : "+FFile$) Local ISize# = TextureWidth(IText)/2 EntityTexture IMesh,IText EntityFX IMesh,1+2+8+16 EntityBlend IMesh,1 PokeInt(f2dBank,IPos+f2dBankOn,1) PokeInt(f2dBank,IPos+f2dBankMesh,IMesh) PokeInt(f2dBank,IPos+f2dBankSurface,ISurf) PokeInt(f2dBank,IPos+f2dBankTexture,IText) PokeInt(f2dBank,IPos+f2dBankCamera,FCameraHandle) PokeFloat(f2dBank,IPos+f2dBankScale,ISize) Return IPos End Function mfg ToeB |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
CreateTexture macht auf einigen (vielen?) Grafikkarten Probleme, wenn Alpha - Flags benutzt werden.
Das hier scheint auch ein solcher Fall zu sein. Dagegen kannst du nicht viel machen - eine Möglichkeit wäre, die erstellte Textur abzuspeichern und mit den gewünschten Flags neu zu laden (selbstverständlich hinterher wieder die Datei löschen). Das ist leider nicht Echtzeittauglich und auch nicht besonders sauber, aber viele andere Möglichkeiten gibts leider nicht. Ausserdem funktioniert Text im TextureBuffer nicht. |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also ich will ja nichts sagen, aber bei mir funktioniert Text im TexturBuffer einwandfrei. ![]() Vielleicht ist es ja nicht mit allen Grafikkarten/Treibern so, aber bei mir funzt es... |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das hat glaub ich nichts mit Treiber oder so zu tun. Die Flags haben ihre Auswirkung nur beim Laden! (also bei LoadTexture![]() |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das stimmt zwar, aber:
ToeB hat Folgendes geschrieben: Aber jetzt wird gar nix mehr eingezeichnet !
Das sind normalerweise die Symptome des CreateTexture - Fehlers ![]() Wenn die Textur gänzlich 'verschwindet', sollte man auf CreateTexture mit Alphaflag eher verzichten. |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group