Thema: Delphi Andorra 2D GUI Problem

Einzelnen Beitrag anzeigen

Benutzerbild von XXcD
XXcD

Registriert seit: 19. Sep 2006
581 Beiträge
 
Delphi 2007 Professional
 
#1

Andorra 2D GUI Problem

  Alt 30. Jul 2008, 16:35
Hallo,
ich versuche gerade das GUI System zu verwenden und stehe da vor einem Problem.
Ich wollte in der Demo Wormhunter das GUI ausprobieren. Also wenn man Escape drückt, soll das Menü aufgehen und mann kann dann Einstellungen vornehmen.

Das funktioniert nicht und habe das deshalbd erstmal genauso wie in der Demo Videoplayer versucht.
Dort wird aber auch nichts angezeigt.

Hier mal der Code:

Delphi-Quellcode:
...
  public
    AdGUI: TAdGUI;
...


procedure TForm6.FormCreate(Sender: TObject);
var
  i:integer;
  AdSetup: TAdSetup;
begin
  Randomize;

  AdPerCounter := TAdPerformanceCounter.Create;

  Cursor := crNone;
  AdDraw := TAdDraw.Create(self);
  AdDraw.Options := AdDraw.Options - [aoCulling];
  AdDraw.DllName:='AndorraDX93D.dll';
      with AdDraw.Display do
      begin
  DisplayMode :=dmWindowed;
  Width :=800;
  Height :=600;
  BitDepth := ad32Bit;
  end;
    if AdDraw.Initialize then
    begin
      Application.OnIdle := Idle;
      AdImageList := TAdImageList.Create(AdDraw);
      AdImageList.LoadFromFile(pathc+'demo_wormhunter.ail');

      AdPixelCollisionTester := TAdSpritePixelCollisionTester.Create(AdDraw);

      AdSpriteEngine := TSpriteEngine.Create(AdDraw);

      //GUI Menü
      AdGUI := TAdGUI.Create(AdDraw);
      AdGUI.Skin.LoadFromFile('sunna.axs');
      AdGUI.Cursors.LoadFromFile('cursors.xml'); //Laden der Cursor
      AdGUI.LoadFromFile('VideoGUI.axg');
      //GUI Menü


      AdSplatterEffect := TAdParticleSystem.Create(AdDraw);
      AdSplatterEffect.LoadFromFile(pathp + 'splatter.apf');
      AdSplatterEffect.Texture := AdImageList.Find('particle').Texture;
      ...

    end
    else
    begin
      ShowMessage(AdDraw.GetLastError);
      halt;
    end;
end;

procedure TForm6.Idle(Sender: TObject; var Done: boolean);
var
  keys:TKeys;
begin
  if (AdDraw.CanDraw) then
  begin
    AdPerCounter.Calculate;
    AdDraw.ClearSurface(clBlack);
    AdDraw.BeginScene;
    ActTime := ActTime + AdPerCounter.TimeGap;

...

//GUI Menü Updaten
AdGUI.Update(AdPerCounter.TimeGap / 1000);
//GUI Menü Updaten

    AdDraw.EndScene;
    AdDraw.Flip;
  end;
  Done := false;
end;
Wo könnte denn da der Fehler liegen?
  Mit Zitat antworten Zitat