Text Funktion bei BB+ Demo Fehlerhaft?

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

m@g

Betreff: Text Funktion bei BB+ Demo Fehlerhaft?

BeitragDi, Nov 16, 2004 13:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
ich habe zu Testzwecken mal ein kleines Spiel mit der Demo geschrieben und dazu nur die Textausgabe verwendet. Dabei ist mir aufgefallen, dass diese Funktion einen Speicherleak erzeugt...schaut man sich das Programm im Taskmanager an, wächst der Speicherverbrauch abhängig davon, wie oft man Texte ausgibt.

Ich arbeite mit dem XP Betriebssystem und habe DirectX 9.0c installiert.

Hat jemand von euch etwas ähnliches bei der Demo bemerkt?
 

BIG BUG

BeitragDi, Nov 16, 2004 15:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Mir ist hier nix bekannt.
Hast du vielleicht LoadFont in einer Schleife verwendet?
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final)
 

m@g

BeitragDi, Nov 16, 2004 16:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich benutze kein LoadFont sondern gebe einfach direkt einen Text aus.


hier ein Beispiel

Graphics 640,480,0,2

CurrentPlayer = 0

SetBuffer BackBuffer()

While Not KeyHit(1)

Cls
Color 255,255,255

Text 0,0, "Player:"+(CurrentPlayer+1)

Flip

Wend

End

D2006

Administrator

BeitragDi, Nov 16, 2004 16:56
Antworten mit Zitat
Benutzer-Profile anzeigen
das würde erklären warum Text bei mancher Hardware extrem perfomanceraubend ist.

Es liegt an deiner Hardware, aber eigentlich auch wieder an Blitz. Naja, jedenfalls sollte man Bitmapfonts benutzen, dann hat man das Problem nicht.

MfG
 

m@g

BeitragDi, Nov 16, 2004 17:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Habe mich mal im englischen Forum umgeschaut und einen ähnlichen Eintrag entdeckt. Dort stand, daß es wohl in der Version 1.11 wirklich einen Memoryleak gibt...leider gibt es die Demo nur in dieser Version Crying or Very sad

eXceptION

BeitragDi, Nov 16, 2004 18:17
Antworten mit Zitat
Benutzer-Profile anzeigen
D2006 hat Folgendes geschrieben:
das würde erklären warum Text bei mancher Hardware extrem perfomanceraubend ist.

das ist nicht 100% wahr... den text wird mit windows api (gdi) erzeugt... welches nicht gerade schnell ist...

ich kann mir aber gut vorstellen dass bb/bb3d diese text erstmal in eine runtime erzeugte surface (directx bitmap) zeichnet... und dass dieses bitmap nicht wieder freigegeben wird...
Norweger...

Spreche aber verdammt gut 8086

D2006

Administrator

BeitragMi, Nov 17, 2004 0:59
Antworten mit Zitat
Benutzer-Profile anzeigen
nunja, Tatsache ist:

Hat man ein Spiel, woher der ganze Bildschirm mit Text beschrieben wird, immer und immer wieder, so läuft das bei einigen total flüssig bei >100 FPS. Bei anderen jedoch kann man das wegwerfen <3 FPS. Muss also an Hardware bzw. Treiber für diese liegen.

MfG

eXceptION

BeitragMi, Nov 17, 2004 1:10
Antworten mit Zitat
Benutzer-Profile anzeigen
okay...

ein grund dafür dass bb3d nie dx8/dx9 kompatibel wird, ist das M$ ziemlich viele veränderungen in dx gemacht haben... früher waren direct3d and directdraw (2d) zwei verschiedene sachen... das hat das wechseln zwischen 2d und 3d total inefficient gemacht... aber ab dx8 ist directdraw total mit direct3d integriert geworden, und das "directdraw" module ist weggenommen... (jetzt heisst es einfach direct3d)

scheisse... vergessen was ich eigentlich schreiben wollte! Shocked

aber was auch tolle verzögerungen beim text herruft, sind windows fonts mit antialiasing...
Norweger...

Spreche aber verdammt gut 8086
 

walski

Ehemaliger Admin

BeitragMi, Nov 17, 2004 10:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Glaub ich auch nicht, denn das ein Treiberupdate der Grafikkarte oft zu imensen Leistungsschüben bei der Textausgabe führt ist ja kein Geheimnis.

Deine "Windows GDI ist schuld" - These ist also recht schwer zu halten! Denn die Hardware blieb ja die gleiche und den Einfluss der Graka-Treiber auf die Winows-GDI schätze ich als eher gering ein Wink

walski
buh!

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group