![]() |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Rufst du AdDraw.Free auch zuletzt auf?
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
es wird im OnDestroy aufgerufen, ist aber im Code zwischen OnCreate und Idle
im OnDestroy wird außer AdDraw.Free nichts aufgerufen |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
hier kannst du dir ein besseres Beispiel machen können (falls alles passt)
ich habe versucht das Gui Tutrial mit Lazarus zu machen, nur er sagt mir bei dem Code folgende Fehler
Delphi-Quellcode:
1.= Error: Incompatible type for arg no. 1: Got "TForm1", expected "TAdWindowFramework"
{$MODE DELPHI}
interface uses Classes, SysUtils, LResources, Forms, Graphics, Dialogs, ButtonPanel, AdDraws, AdGui, AdComponents, AdClasses, AdGUIConnector, AdPerformanceCounter, StdCtrls, ComCtrls; type { TForm1 } TForm1 = class(TForm) procedure FormClick(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure FormCreate(Sender: TObject); private procedure OpenClick(Sender:TObject); { private declarations } public AdDraw : TAdDraw; AdGui : TAdGui; AdConnector : TAdGuiConnector; AdPerCounter : TAdPerformanceCounter; procedure Idle(Sender:TObject;var Done:boolean); { public declarations } end; var Form1: TForm1; implementation { TForm1 } procedure TForm1.OpenClick(Sender:TObject); begin TAdButton(AdGUI.FindComponent('AdButton1')).Caption := 'Du hast mich geklickt!'; end; procedure TForm1.FormCreate(Sender: TObject); begin AdDraw := TAdDraw.Create(self); AdConnector := TAdGUIConnector.Create(AdGUI); AdGUI := TAdGUI.Create(AdDraw); //Erzeugen der Klasse AdDraw.DllName := 'C:\Documents and Settings\Blockbuster\Desktop\QuickDesktop\Andorra\ad2d_35_ALL\ad2d_35\bin\AndorraOGLLaz.dll'; AdGUI.Skin.LoadFromFile('sunna.axs'); //Laden des Skins AdGUI.Cursors.LoadFromFile('cursors.xml'); //Laden der Cursor AdGUI.LoadFromFile('gui.axg'); //Laden der GUI TAdButton(AdGUI.FindComponent('AdButton1')).Caption := 'Hallo!'; AdConnector.ConnectEventHandlers(self); <-- 1. Fehler Application.OnIdle := Idle; AdDraw.Initialize; AdGUI.FindComponent('btn_open').OnClick := OpenClick; end; procedure TForm1.FormClick(Sender: TObject); var p:TPoint; begin GetCursorPos(p); //Aktuelle Mauszeigerkoordinaten auslesen <-- 2. Fehler p := ScreenToClient(p); //In Koordinaten relativ zum Formular umrechnen if not AdGUI.Click(p.X, p.Y) then //Ereignisbehandlung ausführen begin //Es wurde auf das Spielfeld geklickt end; end; procedure TForm1.FormDestroy(Sender: TObject); begin end; procedure TForm1.Idle(Sender: TObject; var Done:boolean); begin AdDraw.ClearSurface(0); AdDraw.BeginScene; AdDraw.EndScene; AdDraw.Flip; end; 2.= Identifier not found "GetCursorPos" was habe ich falsch gemacht??? |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
aktuell arbeite ich an der Überarbeitung des Partikelsystems. Hier sind die Veränderungen daran, die euch erwarten, aufgelistet: Partikelsystem [+] Neue Einstellungsmöglichkeiten (Variation bei jedem Parameter einstellbar) [+] Multithreading (Auf Mehrprozessorsystemen theoretisch zwei mal schneller)[*] Neustrukturierung (Setzt jetzt direkt auf der Grafikschnittstellenabstraktionsebene auf, zwei bis fünf mal schneller) [+] Verwendung von Pointsprites (nur wenn gewünscht, da Skalierung und Rotation nicht möglich, ca. fünf mal schneller) [+] Speichern der Einstellungen in XML [+] Verwendung der RTTI [+] Verschiedene Partikelklassen können nun ohne Umwege verwendet werden. [-] Alte Partikel-Binärdateien können nicht geladen werden (außer es gibt deswegen großen Protest) Nach dem Studieren des VLC-Sourcecodes habe ich heute das OpenGL-Plugin weiter optimiert, (PAL-)Videos können damit jetzt mit bis zu 80FPS wiedergegeben werden. Somit ist das Plugin in dieser Hinsicht jetzt schneller als das DirectX-Plugin. Außerdem kann jetzt der Bildinhalt von Zeichenflächen (FBOs/RTTs) in den Hauptspeicher geladen werden und dort manipuliert werden. So kann man (zum Beispiel) Blur und Bloom Effekte erzeugen. Als nächstes schreibe ich den Partikeleditor entsprechend um. Ich denke, dass ich dort (vorerst) auch einen TJvInspector verwende, um die Partikelparameter einzustellen. Kommentare sind (wie immer) erwünscht, Andreas Achso, @STS301, schau dir mal den Sourcecode der "VideoPlayer" Demo an, dieser kompiliert auch unter Lazarus. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
mit dem Source habe ich es ja auch versucht, schaue aber noch einmal nach
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Hallo!
Ich hab folgendes Problem: Ich verwende Delphi 7 Enterprise.. ich hab heute die Komponente runtergeladen und die Installationsanweisung befolgt und habe zu Anfang die AndorraDX93D.dll kompiliert und sie in das Verzeichnis /demos/SpriteEngine/WormHunter/ kopiert. dann habe ich die WormHunter.dpr kompiliert und gestartet.. es kommt erstmal ne Zugriffsverletzung und dann sagt er mir dass er die images.ail nicht finden kann (Sie ist jedoch im dort in der Fehlermeldung angegebenen Pfad vorhanden) und danach kommen nen Haufen Zugriffsverletzungen und das Programm stürzt ab.. Bin echt am verzweifeln :( Könnt ihr mir helfen? Gruß, Tibiasign |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Die Anwendungen im "Demos"-Verzeichnis werden automatisch ins Verzeichnis "bin" kompiliert. Dort musst du also die DLL einfügen.
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Danke erstmal!! So hab die Konstante path zu .\ gemacht und nun startet das Spiel auch im eigenen Verzeichnis! Leider kommt an Anfang wenn man auf "OK" zum Starten klickt eine Fehlermeldung:
"Access Violation at address 00BCA0EF in module "AndorraDX93D.dll". Read of address 00000000." |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Kopiere mal noch die Datei "d3dx9_31.dll" aus dem bin-Verzeichnis dazu. Der Sinn von diesem "bin"-Verzeichnis ist ja eigentlich, dass sich alle immer wieder benötigten Programmteile dort befinden und nicht andauernd herumkopiert werden müssen.
Edit: Da fällt mir ein, dass die Einstellungen, wohin die einzelnen Dateien kompiliert werden sollen unter Delphi7 vermutlich nicht geladen werden, da du die ".bdsproj"-Datei nicht öffnen kannst... Also musst du die Dateien doch per Hand kopieren. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Hallo igel!
Erstmal ein Lob an Andorra2D! Echt gut geworden von dem was ich bisher gesehen hab! Die d3dx9_31.dll hab ich bereits in mein WormHunter Verzeichnis kopiert. Dies ändert leider nichts.. Gruß, Tibiasign |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:47 Uhr. |
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