DrawText in Pixmap/Image?

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

 

sdjh

Betreff: DrawText in Pixmap/Image?

BeitragSa, Mai 31, 2008 19:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo zusammen,

ich bin gerade dabei alte Programme auf BMax zu portieren und mir ist aufgefallen, dass es keine entsprechende Funktion zum alten Imagebuffer gibt. Das Forum und BB.com geben Antworten im Sinne, dass entweder alles mit WritePixel geschrieben oder vom Backbuffer gegrabt werden muss.

Wie mache ich dass denn nun, wenn ich Text auf ein Bild schreiben will? Kann ja schlecht Fonts laden und die dann Pixel per Pixel auf meine Map schreiben. Gibt es da schon Lösungen?

Eine Möglichkeit für mich wäre, den gesamten Text jeden Frame neu zu rendern. Macht meines erachtens aber auch nicht soviel Sinn was die Performance angeht.

Gruß
Simon

d-bug

BeitragSa, Mai 31, 2008 20:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Das funktioniert entweder über GrabPixmap, was aber für meinen Geschmack zu schlechte Ergebnisse bzw. zu umständlich ist, oder du benutzt eine RenderToTexture Variante (z.B. die von klepto2). eine 1zu1 Portierung ist bei solchen Codes dann eh nicht mehr möglich. Ich würde es dann wohl bevorzugen es gleich neu zu schreiben, aber das ist wie immer Geschmackssache!
 

Dreamora

BeitragSa, Mai 31, 2008 20:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist schon im regulären B3D nicht legitim Text in nen Buffer zu zeichnen. Das geht zwar tatsächlich auf vielen Karten, offiziell ist aber KEIN Drawbefehl auf nen Buffer erlaubt, und das bekommt man auf den restlichen Karten und verschiedenen NVIDIA Treiber Versionen auch recht zu spüren.

Wenn du unter BM sowas nutzen willst: Im englischen Board gibt es die für 1.26+ geupdatete version von Indiepath's Render2Texture modul. das wär die für max2d empfohlene methode würde ich sagen.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group