AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Andorra 2D [Ver. 0.4.5.1, 31.12.08]
Thema durchsuchen
Ansicht
Themen-Optionen

Andorra 2D [Ver. 0.4.5.1, 31.12.08]

Ein Thema von igel457 · begonnen am 24. Nov 2006 · letzter Beitrag vom 14. Sep 2011
Antwort Antwort
Seite 58 von 103   « Erste     848565758 596068     Letzte »    
Benutzerbild von igel457
igel457
Registriert seit: 31. Aug 2005
Andorra 2D

Was ist Andorra 2D?
Nein, Andorra 2D hat nichts mit dem kleinen europäischen Staat "Andorra" zu tun. Wie das "2D" im Namen auch schon erraten lässt, handelt es sich um eine 2D Engine. Diese wird für Delphi und Lazarus (Freepascal) entwickelt und zwar um das bekannte und oft verwendete DelphiX abzulösen (was an DelphiX nicht so toll ist lest ihr am besten hier). Andorra 2D hat einen ähnlichen Aufbau wie DelphiX - das Spriteengineinterface ist sogar zu 99% das Gleiche.

Features
Was ist nun das Besondere an Andorra 2D?
- Hardwarebeschleunigung
- Verwendung von Plugins zur Grafikdarstellung wodurch OpenGL, DirectX oder sogar die GDI mit Andorra 2D verwendet werden können
- Integrierte und beschleunigte Spriteengine
- Integrierte Zoomfunktion in der Spriteengine
- Modularer aufbau von den Loadern für Texturformate, es können einfach eigene Hinzugefügt werden
- orthogonale und perspektivische Projektionsmatrix
- Integration von 3D-Modellen (die Loader sind noch nicht geschrieben)
- Schnelle Partikelsysteme
- Ausnutzung von Multi-Core CPUs
- Lichter
- Shadersupport (Cg und HLSL)
- Einfaches Surface-System
- Einfaches Scenenmanagement
- Videowiedergabe mit MPEG2 Support
- Verwendung von mehreren "Windowframeworks", wodurch Unabhängikeit von der VCL/LCL erreicht wird.
- Clipping/Splitscreens
- 2D Physikengine mit Newton
- Integriertes "Hardware Canvas"
- Mächtiges, voll Skinbares GUI-System
- Nicht überladen - man wird nicht zum benutzen bestimmter Features gezwungen (wie zum Beispiel Datenpackages, wie dies in anderen Engines der Fall ist)
- Opensource, entweder unter der CPL oder der GPL verwendbar
- Mächtiges Bundle von Editoren und Tools
- Deutsche Tutorials
- Viele Demos
- Und natürlich die Banalitäten, die man sich von einer 2D-Engine so wünscht: Rotation, Additives Zeichnen, Skalierung, BitBlt, Texturzugriffe et cetera

Da die Plugins nur um die Basisfunktionalitäten der Grafikschnittstellen Wrapen, könnte man die Plugins theoretisch für eine Hybrid 3D-Engine verwenden

Mehr Infos...
...sowie Tutorials und weitere Links...
gibt es auf der Website: http://andorra.sourceforge.net/
Dort findet ihr auch Demos, Tutorials und Screenshots...

Wenn ihr Fragen, Kritik oder Anregungen habt, dann könnt ihr diese entweder hier oder bei SourceForge posten.

Downloads:
Momentan gibt es die Version 0.4.5. Einen Überblick über alle Downloads gibt es hier.

Das Package mit allen Demos, Prerequisiten und Binaries gibt es in der neusten Version hier:
Andorra 2D All-In-One-Package 23MB

Tutorials:
Die Tutorials gibt es nicht nur auf der Website, sondern auch in der DP. Allerding möchte ich betonen, dass die Tutorials auf meiner Website aktueller sind. Ich kann meine eigenen Tutorials hier nämlich nicht mehr bearbeiten (@Daniel: dringend umändern!). Hier ist eine kleine Liste, wobei die Sterne die Schwierigkeit darstellen:
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngTutorial 1 - Installieren und Initialisieren
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngAndorra 2D über CVS aktualisieren
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngTutorial 2 - Das erste Bild
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngTutorial 3 - Die Spriteengine
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngPartikelsysteme
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngDer Canvas
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngDas GUI-System
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pnghttp://andorra.sourceforge.net/img/star2.pngAndorra 2D und Lazarus
http://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star.pnghttp://andorra.sourceforge.net/img/star2.pngÜber Windowframeworks

FAQ:
Eine Sammlung oft gefragter Fragen findet sich hier:
http://andorra.sourceforge.net/index.php?section=FAQ

Wichtig:
Falls ihr ein Programm mit Andorra 2D geschrieben habt/daran schreibt, dann wäre es schön wenn ihr mir Bescheid sagen könnt. Dann bekomme ich nämlich mal einen Überblick, wer die Bibliothek nun überhaupt verwendet und außerdem kann ich auf meiner Website Screenshots von eurem Projekt einfügen und auch auf eine eventuelle Website eures Projektes verlinken.

Über diesen Thread:
Bitte schreibt hier nur Wünsche oder Anregungen herein, die direkt mit der Engine zu tun haben. Wenn ihr eine Frage über die Anwendung in eurer Anwendung habt, dann macht am besten einen eigenen Thread im Multimedia-Teil auf, bei dem ihr "[Andorra 2D]" vor den Titel schreibt.

Danke für euer Interesse,
Andreas
Miniaturansicht angehängter Grafiken
imagelisteditor_692.png   physics2_202.png   extended_spriteengine_868.png   wormhunter_412.png  
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
 
Benutzerbild von igel457
igel457

 
FreePascal / Lazarus
 
#571
  Alt 31. Mär 2008, 15:55
Rufst du AdDraw.Free auch zuletzt auf?
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von STS301
STS301

 
Delphi 7 Personal
 
#572
  Alt 31. Mär 2008, 16:36
es wird im OnDestroy aufgerufen, ist aber im Code zwischen OnCreate und Idle

im OnDestroy wird außer AdDraw.Free nichts aufgerufen
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von STS301
STS301

 
Delphi 7 Personal
 
#573
  Alt 31. Mär 2008, 20:49
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:
{$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;
1.= Error: Incompatible type for arg no. 1: Got "TForm1", expected "TAdWindowFramework"
2.= Identifier not found "GetCursorPos"

was habe ich falsch gemacht???
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

 
FreePascal / Lazarus
 
#574
  Alt 6. Apr 2008, 20:59
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.
Miniaturansicht angehängter Grafiken
particles4_600.png  
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von STS301
STS301

 
Delphi 7 Personal
 
#575
  Alt 7. Apr 2008, 08:03
mit dem Source habe ich es ja auch versucht, schaue aber noch einmal nach
Sebastian
  Mit Zitat antworten Zitat
Tibiasign

 
Delphi 7 Enterprise
 
#576
  Alt 14. Apr 2008, 16:46
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
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

 
FreePascal / Lazarus
 
#577
  Alt 14. Apr 2008, 16:55
Die Anwendungen im "Demos"-Verzeichnis werden automatisch ins Verzeichnis "bin" kompiliert. Dort musst du also die DLL einfügen.
Andreas
  Mit Zitat antworten Zitat
Tibiasign

 
Delphi 7 Enterprise
 
#578
  Alt 14. Apr 2008, 17:11
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."
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

 
FreePascal / Lazarus
 
#579
  Alt 14. Apr 2008, 17:35
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.
Andreas
  Mit Zitat antworten Zitat
Tibiasign

 
Delphi 7 Enterprise
 
#580
  Alt 14. Apr 2008, 17:43
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
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 58 von 103   « Erste     848565758 596068     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz