Hey,
habe ein Problem mit dem Framework von Andorra 2D:
Das Programm ist mit dem Framework einfach seehr langsam und instabil. Das sehe ich daran, da die Idle-Prozedur nur sehr selten aufgerufen wird und die FPS der Anwendung auf und ab rasen.
Mein Programmquelltext sieht wiefolgt aus:
Delphi-Quellcode:
program Zatacka;
uses
Main in 'Main.pas';
var
App1 : TZatacka;
begin
App1 := TZatacka.Create;
try
App1.Run;
finally
App1.Free;
end;
end.
Und meine Mainunit (ist auch die einzige sieht so aus). Es wird eigentlich nur das Fenster erstellt und das OnIdle-Event wird der Prozedur Idle zugewiesen.
Delphi-Quellcode:
unit Main;
interface
uses
AdClasses, AdEvents, AdTypes, AdDraws, AdStdWindow, AdPerformanceCounter,
SysUtils;
type
TZatacka =
class
public
AdDraw : TAdDraw;
AdPerCounter : TAdPerformanceCounter;
procedure Run;
procedure Idle (Sender:TObject;
var Done:boolean);
end;
implementation
procedure TZatacka.Run;
begin
AdDraw := TAdDraw.Create(
nil);
AdDraw.DllName := '
AndorraOGL.dll';
if AdDraw.Initialize
then
begin
AdPerCounter := TAdPerformanceCounter.Create;
AdDraw.Window.Events.OnIdle := Idle;
AdDraw.Run;
end;
AdPerCounter.Free;
AdDraw.Free;
end;
procedure TZatacka.Idle (Sender:TObject;
var Done:boolean);
begin
AdPerCounter.Calculate;
AdDraw.Window.Title := '
FPS:' + IntToStr(AdPerCounter.FPS);
end;
end.
Ich habe das Programm nochmal angehängt. Wenn ihr den Fehler nicht gleich findet, könntet ihr ja überprüfen, ob bei euch das Programm auch so unrund läuft. Das Programm macht halt noch nicht mehr als sich anzuzeigen und die FPS anzuzeigen
.
mfg Looper