Einzelnen Beitrag anzeigen

Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#697

Re: Andorra 2D [Ver. 0.40, 01.07.08]

  Alt 2. Jul 2008, 19:06
hm, mal so weit wie möglich zusammengezurrt:

Delphi-Quellcode:
var
  AdSetupDlg: TAdSetup;
begin
  AdDraw := TAdDraw.Create(Parent);
  AdSetupDlg := TAdSetup.Create(Canvas);
  AdSetupDlg.Image := 'Logo.png';

  if AdSetupDlg.Execute then
  begin
    if Canvas.Initialize then
    begin
      State := [rsFPS, rsMap];
      InputState := [];
    end
    else
    begin
      Result := False;
      Exit;
    end;
  end
  else
    halt;
  AdSetupDlg.Free;
  Result := True;
  Application.OnIdle := Idle; // Renderingschleife zuweisen
und die Idle-Routine:

Delphi-Quellcode:
 PerformanceCounter.Calculate;
 DoScroll(PerformanceCounter.TimeGap); // Scroll in der Sprite-Engine

  if Canvas.CanDraw then //Wenn überhaupt auf das AdDraw gezeichnet werden kann dann...
  begin
    Canvas.ClearSurface(0); //Füllt die Oberfläche mit schwarzer Farbe

    Canvas.BeginScene;

    if (rsFPS in State) then
      RenderFPS;
    if (rsMap in State) begin
        SpriteEngine.Dead;
        SpriteEngine.Draw;
      end;


    Canvas.EndScene;

    Canvas.Flip; //Präsentiert die gezeichneten Dinge auf dem Bildschirm.
  end;
Und nein, ich rufe kein Setup2D-Engine auf. Sollte ich es denn tun?

Und die Kleinigkeiten:

Der Parameter im Konstruktor von TAdSetupDlg ist kein Form mehr, sondern ein TAdDraw und es gibt die Properties Parent (TForm) und ... noch eins (vergessen) nicht mehr
Thomas
  Mit Zitat antworten Zitat