Delphi-PRAXiS
Seite 45 von 103   « Erste     35434445 46475595     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Andorra 2D [Ver. 0.4.5.1, 31.12.08] (https://www.delphipraxis.net/81314-andorra-2d-%5Bver-0-4-5-1-31-12-08%5D.html)

Codewalker 2. Jan 2008 16:03

Re: Andorra 2D [Ver. 0.30 BETA, 22.11.07]
 
grml, doch das meine ich. Aber ich würde es case-insensitive machen. Also
Delphi-Quellcode:
function TAdComponent.FindComponent(AName: string): TAdComponent;
var
  i:integer;
begin
  if Name = AName then
  begin
    result := self;
  end
 {...}
in
Delphi-Quellcode:
function TAdComponent.FindComponent(AName: string): TAdComponent;
var
  i:integer;
begin
  if Lowercase(Name) = LowerCase(AName) then
  begin
    result := self;
  end
 {...}
ändern.
Ansonsten kann ich nur sagen :wall: - waren die Finger mal wieder schneller als das Hirn :mrgreen:

igel457 4. Jan 2008 14:29

Re: Andorra 2D [Ver. 0.30 BETA, 22.11.07]
 
Andorra 2D 0.30 STABLE

Download:
Version 0.30 STABLE (ZIP): 9,43MB
Version 0.30 STABLE (BZ2): 8,69MB

Ab heute ist Andorra 2D 0.30 STABLE zum Herunterladen verfügbar. Wichtige Änderungen gegebüber der BETA Version:
  • Removed Bug in TAdCanvasQuad.Generate
  • Rewrote TAdCanvasLine.Generate
  • Removed TAdCanvas.BlendMode property. Use Pen.BlendMode and Brush.BlendMode instead.
  • Implemented "TAdPersistent" - a replacement for TPersistent from "Classes".
  • Removed Bug in TAdFont.Generate
  • added TAdBitmapBlur
  • added possibility of creating blured shadows
  • Removed bug in TAdFont.TextWidth/TAdFont.TextHeight -> Sizes are now calculated correctly.
  • Improved particle editor interface.
  • Removed bug in TAdPNGCompressor.Write

Die nächste Version wird 0.35 sein - dann endlich mit Linuxsupport. Dies wird durch verschiedene "TAdWindowFrameworks" ermöglicht. Ein NonVCL-Win32 Framework habe ich schon geschrieben (damit kann man endlich Spiele mit ~100kb Dateigröße erstellen), sowie eine VCL Anbindung. Gerade sitze ich an der OpenGL GLFW Version. Ein leeres OpenGL-Fenster kann ich damit unter Linux schon einmal erzeugen.

Viel Spaß mir der neuen Version,
Andreas

Codewalker 5. Jan 2008 12:10

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
Moin zusammen.

Nachdem ich jetzt hier ein virtuelles Dateisystem ausgesucht habe, habe ich begonnen, das ganze für Andorra zu nutzen. Dabei ist mir aufgefallen, dass TAdMouseLibrary noch keine LoadFromStream-Methode hat - wäre für die nächte Version wünschenswert :)

Codewalker 5. Jan 2008 13:22

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
@Igel: Ich bekomme neuerdings beim Beenden der Anwendung einen Speicherfehler. Habe das ganze auf folgende Stelle eingrenzen können:

Delphi-Quellcode:
procedure TAdFontMap.Clear;
var
  i,j:integer;
  p:PAdLinkedList;
  c:PAdMapPair;
begin
  p := Data;
  for i := 0 to Capacity - 1 do
  begin
    p^.StartIteration;
    while not p^.ReachedEnd do
    begin
      c := PAdMapPair(p^.GetCurrent);
      c^.Key.Free;
      Dispose(c); // <<<--- Hier kommt der Speicherfehler
      FCount := FCount - 1;
    end;
    for j := 0 to p^.Count - 1 do
    begin
      p^.Delete(0);
    end;
    inc(p);
  end;
end;
Vielleicht kommst du ja hier weiter - mehr habe ich nicht hinbekommen

igel457 6. Jan 2008 17:22

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

eigentlich kann der Speicherfehler nur auftreten, wenn ein ungültiges Element in der Fontmap vorhanden ist. Das bedeutet vermutlich, dass du irgendwo ein mit TAdFontFactory.GenerateFont generiertes Fontobjekt selbst freigibst. Sollte dies nicht der Fall sein, so brauche ich mehr Informationen.

Im Anhang befindet sich noch ein Vorgeschmack auf die nächste Version...

Codewalker 6. Jan 2008 17:38

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
hm, das Problem ist, dass ich AdFont und AdFontFactory gar nicht genutzt habe. Habe nur über den Canvas mit Textout was ausgegeben. Mit Fonts habe ich bisher nie gezielt gearbeitet.

igel457 6. Jan 2008 18:48

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
Das ist wirklich seltsam. Kommt der Fehler noch, wenn du den Textausgabeteil auskommentierst? Gibst du auch wirklich nirgends ein Fontobjekt frei? TAdCanvas.Font wird schließlich auch über TAdDraw.Fonts.GenerateFont erzeugt. Vielleicht gelingt es dir, den Fehler ein bisschen genauer einzugrenzen.

Codewalker 6. Jan 2008 19:00

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
Also, der Fehler kommt leider auch, wenn ich die Textausgabe auskommentiere. Habe den gesamten Code nochmal abgesucht und ich erzeuge nichts manuell was mit Fonts zu tun hat. In den Demos kommt der Fehler nicht vor - muss also an irgendetwas von mir liegen. Source ist leider viel zu viel zum Anhängen. Ich werde morgen mal weiterforschen...

igel457 7. Jan 2008 16:15

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
Liste der Anhänge anzeigen (Anzahl: 1)
Im Anhang mal noch ein Bild zum Thema "Andorra 2D auf Linux". Ich habe jetzt nämlich (nach langem herumsuchen) Lazarus endlich dazu gebracht auch Bilder zu laden.

Edit: Läuft mit 700FPS

wicht 8. Jan 2008 18:35

Re: Andorra 2D [Ver. 0.30 STABLE, 04.01.08]
 
Moin,

erstmal will ich sagen, dass es mich total freut, dass die Linux-Geschichte so gut voran geht, das wollte ich nämlich dann auch mal testen.
Aber eigentlich habe ich nur eine dumme Frage.. folgendes:

Delphi-Quellcode:
constructor TGUIManager.Create(AdDraw: TAdDraw);
begin
  FAdGUI := TAdGUI.Create(AdDraw);
  FAdGUI.Skin.LoadFromFile('Z:\sunna.axs');
end;
Das mache ich in meinem TGameManager wie man sieht und soweit funktioniert das auch. FAdGUI.Free wird auch aufgerufen, allerdings wird irgendwie nicht alles freigegeben (Alles nach Tutorial gebaut). Angeblich wurden 19 mal TMemoryStream nicht freigegeben. Lasse ich das .LoadFromFile weg, bekomme ich diesen Fehler nicht. Habe auch ein bisschen durch-debuggt, aber meiner Meinung nach wird das alles wieder freigegeben.
Benutze die 0.30 STABLE, Fehler war auch mit in der 0.30 BETA, die sunna.axs ist die mitgelieferte.

Kann das irgendjemand irgendwie nachvollziehen oder so? Ich komme da irgendwie nicht weiter so, habe das ReportMemoryLeaksOnShutdown erstmal abgestellt.

Fiel mir gerade noch ein: Nach dem Update auf 0.30 STABLE hat er sich in der AdApps.pas übrigens beschwert, dass TAdPerformanceCounter unbekannt ist. Habe AdPerformanceCounter dann selbst zu den uses geschrieben, dann ging das alles.

Danke für Antworten :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:43 Uhr.
Seite 45 von 103   « Erste     35434445 46475595     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz