Schnell Text schreiben

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

morszeck

Gast

Betreff: Schnell Text schreiben

BeitragFr, Dez 26, 2003 14:58
Antworten mit Zitat
Ich brauch für mein Game eine ordentliche Textausgabe. Wenn ich allerdings die Standartfunktionen Print oder Write oder Text nehme geht die Framerate bei nur einem Wort runter auf 50 Fps.

Was kann ich machen?? Ich kann doch nicht jedes Wort als Bild abspeichern... Rolling Eyes

Sparx

BeitragFr, Dez 26, 2003 15:01
Antworten mit Zitat
Benutzer-Profile anzeigen
1. Drueck dich ordentlich aus, damit man weisz was du willst.
2. Wieso speicherst du die Sahxcen nicht in eine Variable?
3. Kann sein das das ^^ Falsch ist deshalb immer : "GIB CODE!"
User posted image

Travis

BeitragFr, Dez 26, 2003 16:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem kenne ich. Diese Print/Text-Funktion ist echt sau langsam. Aber vielleicht sollte man doch (zwar nicht jedes Wort, aber jeden Buchstaben) als Bild speichern.

Viele Spiele haben ja ihre eigenen Fonts als Bitmap. Das könnte man ja in BlitzBasic auch machen. Einfach ein Bild mit allen Buchstaben und dann mit LoadAnimImage einladen. Dann müßte man für die Textausgabe bloß noch die ganzen Texte in Zahlencodes umwandeln und diese dann den Frames entsprechend zuordnen.

z.B. A=1,B=2 ect.

Das ist ein bisschen Arbeit, aber das sieht nachher bestimmt besser aus und vielleicht gehts ja sogar schneller. Vielleicht werd' ich's auch selbst mal ausprobieren.
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.

Slayer

BeitragFr, Dez 26, 2003 17:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Guckste hier http://www.mdtools.de/Diettric...loads.html

und nimm MD_font's, ist super gemacht und ne tolle hilfe mit dabei.

Wenn ich Bitmab fonts nutze, nehme ich immer das.
AMD2500XP, SB5.1, DX9, 512MB DDR333,
XPPro SP1a,ATI 9800SE 256bit 128MB,B3B, B+ immer die neue Version
 

IonPainter

BeitragFr, Dez 26, 2003 20:28
Antworten mit Zitat
Benutzer-Profile anzeigen
warum bleibt bei einem text 0,0,"test" die framerate bei mir über 700? saulangsam ist für mich was anderes... Rolling Eyes

D2006

Administrator

BeitragFr, Dez 26, 2003 21:25
Antworten mit Zitat
Benutzer-Profile anzeigen
bei manchen Hardwarezusammenstellungen gibt es Probleme.
Lösung: aktuellste Treiber und DirectX besorgen!

Ich finde es auch sinnlos Bitmapfonts nur zu verwenden, weil bei ein/zwei updatefaulen Usern Text zu langsam ist.

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragFr, Dez 26, 2003 22:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi, ich kann kaum glauben das die fps wegen ein paar Texte so sinken kann, hab das natürlich getestet und text ist das schnellste

aber kann es sein das dir irgendwie ein flip zuviel drinn ist, oder sonst etwas das so bremmst?
wie hoch war denn überhaupt die Speed bevor du den text eingebaut hast?
hier noch das test proggy Code: [AUSKLAPPEN]
Graphics 640,480,16,2
SetBuffer BackBuffer()
 a$= " Testprogramm Speed  "
 
t1 = MilliSecs()
For t= 0 To 10000
    Text 100,100,a$+t
   Text 100,130,a$ ; Dieser wird berechnet
    Flip 0
    Cls
Next
wert1 = MilliSecs() -t1

t1 = MilliSecs()
For t= 0 To 10000
    Text 100,100,a$+t
    Flip 0
    Cls
Next
  wert2 = MilliSecs() -t1
  Text 200,50,  wert1 + " millisekunden   nur schleife 2x Text   " +     (10000*1000/wert1) + " FPS"
  Text 200,100, wert2 + " millisekunden  nur schleife  1x Text    "+     (10000*1000/wert2) + " FPS"
  Text 200,150, wert1-wert2 +" millisekunden   text 10000 mal einsetzten"
Flip
WaitMouse
End

meiner braucht etwa 140 Millisekunden
[BB2D | BB3D | BB+]

Travis

BeitragFr, Dez 26, 2003 23:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei mir ist es so, wenn ich einige Grafiken habe und dann viel Text dazu ausgeben will (z.B. Spielstatistiken), dann fängt es an zu flimmern bzw. man kann sehen, wie der Text gelöscht wird und dann wieder neu gezeichnet wird.

Aber ich habe jetzt angefangen eine eigene Funktion zur Bitmap-Font Ausgabe zu entwickeln. Habe aber noch Probleme mit der Performance. Je öfter ich diese Ausgabe anwende, desto ínstabiler wird's. Das kann soweit gehen, dass sich das Programm aufhängt und nicht mehr beenden läßt. Und es funktioniert momentan nur mit einem Font.

Wenn's interessiert:
http://home.t-online.de/home/D...mpFont.rar

Sind drei Beispiele bei. Das 3. ist ein kleiner Benchmark. Ich brauche für eine Stringausgabe etwa 16,38ms Rolling Eyes .
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.

Arcanes

BeitragSa, Dez 27, 2003 0:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Travis hat Folgendes geschrieben:
Bei mir ist es so, wenn ich einige Grafiken habe und dann viel Text dazu ausgeben will (z.B. Spielstatistiken), dann fängt es an zu flimmern bzw. man kann sehen, wie der Text gelöscht wird und dann wieder neu gezeichnet wird..

Also teilweise hab ihr echt seltsame Probleme, wo ich mir dann ehrlich gesagt nicht denken kann, dass ihr das alles auch wirklich vernünftig und korrekt programmiert habt! (weil sonst würde so etwas wie oben beschrieben nicht passieren!)

"Flimmern" klingt für mich jedenfalls immer erstmal nach nem Flip-Fehler! warum sollte da sonst etwas flimmern? bzw. warum sollte man sehen, wie sich der Text neu zeichnet?! - wobei sich mir auch gleich die nächste Frage stellt: wieviel Text Du da bitte ständig zur Anzeige Deiner Spielstatistiken ausgeben tust?? n' dreiseitges Word-Dokument?! - na wie auch immer, bei SOviel Text würde ich Dir dann eh empfehlen, dass nur ein einziges mal mit der TEXT Prozedur aufzuschreiben! - und zwar in einen IMAGEBUFFER!

Alles immer (meistens) nur eine Frage der Technik... Exclamation


PS: Das eine ImageFont insgesamt schneller sein soll, als einfacher Text... habe ich zwar nicht überprüft, aber ich würd diese These dennoch einfach mal anzweifeln.... Rolling Eyes
tHey pUt mE iN a rOuNd rOom tO diE
User posted image
http://www.myownmalice.de.vu
 

jaZ

BeitragSa, Dez 27, 2003 0:34
Antworten mit Zitat
Benutzer-Profile anzeigen
soweit ich weiß( wenns falsch ist bitte mich korrigieren Smile ) benutzt bb
zur textausgabe und anderem kram die GDI. Das heißt : Nix DX. da wird einfach aufm buffer geschrieben. Und das ist LAHM!! auserdem ist es ja truefont. Das heißt wiederum das die buchstaben aus kurven bestehen die dann rasteriziert werden. DAS IST SEHR LAHM! hat zwar vorteile : man kann text scalieren soviel man viel ohne das es pixelt. aber es ist LAHM. für windows(also den fensterinhalt, der text in eurem gebrannten word Very Happy, und ein paar kleine bilder) mag das ja reichen aber für ein schnelles game ist es shice.
Deswegen benutzte imagefonts. da muss der pc nur die einzelnen buchstaben, beschleunigt von der graka aufn buffer blitten. mehr nicht,
und das ist SCHNELL Very Happy ihr wisst ja, speed,speed speed!!!

wie man das genau macht erkläre ich jetzt net, gibt genug beispiele.
--DRRRSCH!!--

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group