![]() |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Bei OpenGL liegt der Usprung links unten.
Und du musst Idle als Methode des Formulars noch implementieren und AdDraw als Feld vom Typ TAdDraw. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
habe das mit AdDraw schon vorher gemacht, habe jetzt idle implentiert und er spuckt die meldung bei "@idle" aus
Andorracompile_zu.pas(37,30) Error: Variable identifier expected wenn ich das @ weglasse funktioniert es zwar, er spuckt danach aber eine Fehlermeldung aus @3_of_8 es ist aber DirectX (habe jedenfalls die AndorraDX93D.dll eingebunden) |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Wenn du Delphi und nicht Objectpascal benutzt muss das @ weg.
(In Lazarus siehst du das an dem CompilerSchalter, da hast du {$MODE DELPHI} gesetzt. Deshalb muss das @ weg. steh im Lazarus-Tutorial auch falsch drinne) |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Bei DirectX müsste es genauso sein.
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
wie gesagt es funktioniert ja auch, nur halt mit fehlermeldung.
er spuckt beim Beenden dann die Fehlermeldung aus. Project raised exception class 'External: SIGSEGV'. Ausführung angehalten Adresse: $00000000 Prozedur: ?? Datei: (TODO: Assembler-Ansicht an der Stelle Die Datei "objpas.inc" wurde nicht gefunden. Wollen sie selbst nach ihr suchen? (es gibt aber keine datei auf meinem Rechner die so heißt) habe die 0.9.25 Version @3_of_8: tut es aber nicht :?:?? |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
keiner eine Idee?
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Hallo,
setze in deine Finalisierungsroutine einen Haltepunkt und gehe das Schritt für Schritt durch - sag' mir dann ganz genau wo der Fehler auftritt. Im Notfall kannst du einfach einen externen Debugger wie GDB verwenden. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
wie mache ich das in Lazarus mit dem Haltepunkt??
wenn ich den Source compiliere und als .exe ausführe, funktioniert alles tadellos |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Zitat:
Wenn du spezifische Fragen zu Lazarus hast, dann wende dich am besten direkt an die Entwickler: ![]() |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
AdDraw.Free stört ihn, wenn ich es lösche ist alles ok
|
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 |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Kannst du mal einen Haltepunkt in der OnCreate-Ereignissmethode setzten und den Code Schritt für Schritt durchgehen und schauen wo genau der Fehler auftritt?
Danke für das Lob, Andreas |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Hi Andreas!
Der Fehler tritt auf wenn der Code
Delphi-Quellcode:
ausgeführt wird.
AdDraw.Initialize
Edit: Vielleicht sollte ich dazu noch sagen, dass das Spiel einwandfrei läuft. Es kommt halt diese eine AV und nach dem wegklicken startet das Spiel wunderbar. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
seit heute läuft bei mir auch endlich unter Linux OpenGL da wollte ich natürlich sofort Andorra ausprobieren.
Leider finde ich bei mir diese Datei nicht: AndorraOGLLaz.lpi in deinem Tutorial: Andorra 2D and Lazarus schreibst du rein das ich diese Datei öffnen sollte. Aber ich finde sie nicht mal mit find im haupt Verzeichnis. Ich habe die Version runtergeladen die auf deiner Download Seite die neuste. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Die Datei findest du unter /src/dll/opengl
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Aber da ist sie leider nicht. Dort habe ich ja geschaut. Dort ist nur eine LPR Datei. und die bringt mich nicht weiter.
Habe ich mir die Falsche Version runtergeladen ? Ich habe bei mir noch kein SVN installiert. Liegt es daran ? |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
\\edit: sry FF hat bei mir ein wenig gesponnen, daher das Doppelposting
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Liste der Anhänge anzeigen (Anzahl: 1)
An der Version kann es nicht liegen, bei mir funktioniert es mit 0.9.25 beta und 0.9.24 einwandfrei.
Die Datei ist unter dem von pierre genannten Verzeichnis. Hier ist einmal die Datei von mir |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Dann muss ich wohl was falsch verstanden habe. Im Tutorial steht aufjedenfall drin das ich diese Öffnen sollte um die Pfade zu ändern. Aber das klappt ja nicht mit einer LPR sondern nur mit eine LPI Datei. Naja dann werde ich mal die SVN Version als nächste Probieren.
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
da 0.9.25 noch beta ist würde ich sie als IDE nicht benutzen.
Versuche es einfach mit der LPI Datei, wird schon richtig sein ;) |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Zitat:
(Die SVN Version habe ich noch nicht versucht !) |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Du kannst auch mit Lazarus einfach die LPR Datei als Basis für ein neues Projekt auswählen.
Projekt -> Neues Projekt aus Datei -> Auswählen -> Library |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Ich wollte erstmal testen ob die Beispiel sich Kompilieren lassen.
Aber leider finde ich auch keine SVN Version. Dabei meine ich gestern ein Link gefunden zu haben. Naja dann halt nicht. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Zitat:
Schade ! Wirklich. Hätte ich gerne mal ausprobiert. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
öfnne wie Tumm gesagt hat, eine neue "DLL" Bibliothek, dann öffnedie Datei, welche ich hineingestellt hat, und dann mach weiter
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
tatsächlich befindet sich die LPI-Datei nicht im Archiv - Mein Fehler. Allerdings steht da wirklich nicht viel drin. Jeder der sich ein bisschen mit Lazarus (oder Delphi) auskennt, sollte auf die Idee kommen, ein eigenes, neues Projekt (in unserem Fall eine Bibliothek) zu erstellen und die Hauptprogrammdatei (*.lpr) zum Projekt hinzuzufügen. Für alle die (verständlicherweise) etwas zu Faul dazu sind, gibt es im Anhang die besagte Datei. (Im CVS ist die momentan aber auch noch nicht, also wundert es mich, wo die anderen die her haben...) ;-) Bitte beachtet aber: Der Lazarus und vor allem der Linux Support ist etwas für fortgeschrittene Nutzer - dabei kann man immer wieder die seltsamsten Probleme stoßen, bei denen ich euch jedoch vermutlich nicht helfen kann, da sich die Vorgehensweise je nach Distribution unterscheidet. Deshalb bitte keine Fragen dazu an mich, sondern an die Hersteller der jeweiligen Komponenten. Und noch etwas: Falls ihr eine neue Version aus dem CVS-Repository auscheckt, besorgt euch bitte den Branch Andorra_0_3_5 und ladet euch nicht den Trunk herunter - da sind nämlich meine aktuellen Entwicklungsdaten drin, die noch etwas experimentell sind - wer jedoch schon einmal einen Vorgeschmack auf die kommende Version haben möchte, der kann sich das Ganze natürlich anschauen. ;-) Falls es noch Probleme geben sollte, meldet euch einfach. Andreas |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
welchen Branch?? nur den Source (auf deiner HP) oder was?
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
![]() Ups, demnach habe ich es gerade falsch herum gemacht... :gruebel: |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Danke ! Ich wollte auch schon eine neue LPI(LPK)Datei erstellen, aber ich wusste nicht genau welche Dateien drin sind, vermutlich nur die aus dem OpenGL Verzeichnis.
Ich wollte es erstmal nur zum laufen bringen und ausprobieren. Evlt. Passe ich noch die Beispiel die dabei sind an. Oder hast du schon welche für Lazarus und für Linux ? Wenn ich die Engine zum laufen bekomme mache ich das ! Da ich ein neuen Rechner habe sehe ich das auch nicht mehr so eng mit der CPU last wobei ich zwei davon habe(cpu's)*G*. |
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Prima. Läuft. Das test Projekt aus dem Tutorial läuft schonmal.
|
Re: Andorra 2D [Ver. 0.35, 04.03.08]
Also ich hatte vor ein paar Tagen auch mal Andorra mit Linux compiliert und hab dann n einfaches Projekt gebaut, allerdings kamen dabei doch recht instabile Frameration von durchschnittlich sagenhaften 0,5 FPS heraus. Ein Timer statt der Idle-Methode hilft da wirklich weiter, vielleicht könnte man das irgendwo noch schreiben.
Aber sont funktioniert Andorra unter Linux genauso schön wie unter Windows. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:52 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