Delphi-PRAXiS
Seite 10 von 26   « Erste     8910 111220     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)

igel457 20. Nov 2007 13:43

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo,

ich habe mal mit meinem neuen Schriftartensystem eine neue Demo gebastelt, die einen Text darstellt, der ähnlich wie im Vorspan der "Krieg der Sterne" Filme nach hinten scrollt.

Relevanter Code:
Delphi-Quellcode:
//Init
AdFontFactory := TAdFontFactory.Create(AdDraw1.AdAppl);
AdFont := AdFontFactory.GenerateFont('Arial', 40, []);
AdFontFactory.Free;

AdDraw1.AdAppl.Setup3DScene(
  ClientWidth, ClientHeight, AdVector3(ClientWidth div 2, ClientHeight div 2, -1000),
  AdVector3(ClientWidth div 2, ClientHeight, 0), AdVector3(0,-1,0));

StrList := TStringList.Create;
StrList.LoadFromFile(dir+'engine-wars.txt');
s := strlist.GetText;
StrList.Free;

//Rendering
with TAdSimpleTypeSetter(AdFont.TypeSetter) do
begin
  DrawMode := [dtWordWrap, dtTop, dtCenter, dtDoLineFeeds];
end;

c := c + AdPerCounter.TimeGap * 0.05;

mat1 := AdMatrix_Translate(0, ClientHeight, c);
mat2 := AdMatrix_RotationX(-Pi/2);
mat1 := AdMatrix_Multiply(mat2,mat1);
AdFont.Color := Ad_ARGB(255,230,200,0);
AdFont.TransformationMatrix := mat1;
AdFont.TextOut(AdRect(ClientWidth div 2 - 400, 0, ClientWidth div 2 + 400, ClientHeight), s);

Progman 20. Nov 2007 14:00

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
cool !! ;)

Progman 20. Nov 2007 18:55

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
....aaaber.... wo (in welcher Unit) ist TAdFontFactory?
Ich hab das nirgends gefunden :shock:
*auch so Text machen will* :)

igel457 20. Nov 2007 19:11

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Liste der Anhänge anzeigen (Anzahl: 1)
Öhm...

Das ist nur so ein Preview auf die neue Version... Ich will es noch nicht ins CVS hochladen, weil dadurch einiges kaputtgeht. Ich hänge die Units des Fontsystems mal an...

PS: Du darfst auf keinen Fall vergessen, AdStandardFontGenerator unter uses einzubinden.

Progman 20. Nov 2007 19:18

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
achso, na dann Danke!
Werd ich mal bissel rumexperimentieren ;)

STS301 22. Nov 2007 17:03

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Hallo

wollte für mein Problem jetzt keinen eigenen Thread aufmachen, deshalb frage ich hier.

ich bin gerade beím Andorra 2D Tutorial 1 und hänge beim initialisieren, er zeigt mir dauernd an, dass auf den Prozess nicht zugegriffen werden kann, obwohl ich den "scr" Ordner in den "lib" Ordner kopiert habe (arbeite übrigens mit 2005 Personal).
habe dann noch ein bischen weiter gelesen und der hat gesagt, dass ich die Biblithek neu compilieren soll, doch wo soll ich die Bibliothek neu compiliern.

Danke im Voraus

igel457 22. Nov 2007 18:24

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Hallo,

kannst du gerade nochmal genauer beschreiben, wo steht, dass auf den "Prozess nicht zugegriffen werden kann" (du kannst ja auch einen Screenshot machen).
Bei den Bibliotheken handelt es sich um die Programme "AndorraOGL.bdsproj" und "AndorraDX93D.bdsproj" im Ordner "src\dll\". Um diese zu kompilieren, musst du jedoch auch die Headerdateien, die sich in den Prerequisiten befinden zu dem Ordner "lib" hinzufügen. Ich denke jedoch nicht, das das Problem an den Bibliotheken liegt.

STS301 22. Nov 2007 18:28

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Liste der Anhänge anzeigen (Anzahl: 1)
hier hast du das Bild

igel457 22. Nov 2007 19:04

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Funktionieren denn die Demos (z.B. die Demo "Simple") bei dir, bzw. Funktionieren diese, wenn du sie Versucht selbst zu kompilieren? Wenn nicht, dann musst die DLLs vermutlich doch selbst kompilieren (wie oben beschrieben). Wie sieht dein aktueller SourceCode aus? Hast du auch nicht vergessen die DLLs in das Verzeichnis deines Programmes zu kopieren?

STS301 23. Nov 2007 07:04

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Delphi-Quellcode:
unit xy;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, AdDraws, AdClasses;

type
  TForm1 = class(TForm)
    procedure FormDestroy(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    AdDraw1:TAdDraw;{ Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
AdDraw1 := TAdDraw.Create(self);
AdDraw1.DllName := 'AndorraDX93D.dll';

if AdDraw1.Initialize then
begin
  // Hier gehts gleich weiter
end
else
begin
  ShowMessage('Error while initializing Andorra 2D. Try to use another display'+
              'mode or use another video adapter.');
  halt; //<-- Schließt die komplette Anwendung
end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
AdDraw1.Free;
end;

end.
so sieht der Source code aus

die demos funktionieren tadellos

Progman 23. Nov 2007 07:28

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
moin, da bleibt eigentlich nur die Schlussfolgerung, dass die DLLs nicht gefunden werden. Sie muss im gleichen Verzeichnis wie die Exe sein. Die DirectX-Variante benötigt noch die d3dx9_xx.dll.

STS301 23. Nov 2007 07:52

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
wo bekomme ich diese Datei her, im Andorra Ordner den ich mir downgeloaded habe, ist keine so genannte Datei vorhanden

Progman 23. Nov 2007 07:59

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Die findet man unter Prereq in DirectX, ansonsten ist die im MS-DirectX-SDK, nur das extra deswegen downzuladen, wäre übertrieben :)

STS301 23. Nov 2007 08:06

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
ich habe aber nur eine d3dx9_31.dll Datei, wenn das die ist, was soll ich mit der machen?

Progman 23. Nov 2007 08:08

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
das ist die richtige, ich hatte nur "xx" geschrieben, weil es auch manchmal schon die "33" gibt.
Die muss zusammen mit der Andorra-DLL in das Verzeichnis deiner exe-Datei.

STS301 23. Nov 2007 08:23

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
??? ich stehe auf der Leitung

ich habe jetzt die Datei in den Order gegeben wo auch die "AndorraDX93D" Datei ist, es funktioniert aber immer noch nicht :(

Progman 23. Nov 2007 08:28

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
und ist in dem Ordner auch deine Exe? Wenn ja, dann weiß ich auch nicht weiter....erstmal.

STS301 23. Nov 2007 08:30

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
welche exe, soll ich die AndorraDX93D compilieren

Progman 23. Nov 2007 08:31

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
die exe von deinem Project, die muss in dem gleichen Verzeichnis sein wie die beiden DLLs.

STS301 23. Nov 2007 08:53

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
geht zwar immer noch nicht, aber werde mich später damit spielen

danke

OregonGhost 23. Nov 2007 09:52

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Ich hab das zwar schonmal hier irgendwo geschrieben, aber:
Die d3dx9_xx.dlls werden doch vom DirectX Web Installer (dxwebsetup) in der jeweils aktuellsten Version installiert und liegen dann irgendwo im Windows-DLL-Suchpfad und sollten daher von überall aus zugreifbar sein. Einfach einmal ausführen, es werden nur die neuen Dateien heruntergeladen.

Progman 23. Nov 2007 09:57

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Nicht jeder hat den DirectX-Webinstaller, und er ist auch gar nicht norwendig. Er hat doch gar nichts mit der Andorra2D-Engine zu tun. Und diese DLL wird doch mit Andorra mitgeliefert. Warum sein Systemverzeichnis mit allem Möglichen zumüllen?

STS301 23. Nov 2007 12:55

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
najawie dem auch sei, hab es bis jetzt immer noch nicht zusammengebracht.
vielleicht kann mir bitte noch irgendwer einen Tipp geben.

:(:(:(:(:(:(

Progman 23. Nov 2007 16:42

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Liste der Anhänge anzeigen (Anzahl: 1)
Im Anhang ein Project, dass exakt deinen Code enthält und funktioniert. Ich weiß nicht was bei dir schiefläuft.

STS301 23. Nov 2007 17:02

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Hallo

danke, aber er schreit dann bei

Delphi-Quellcode:
Application.MainFormOnTaskbar := True;
"[Fehler] testAndorra.dpr(12): E2003 Undefinierter Bezeichner: 'MainFormOnTaskbar'"

ich werde es einmal an meinem Standrechner probieren, aber danke für deine Bemühung. :gruebel: :gruebel: :pale:

Neutral General 23. Nov 2007 17:05

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Diesen Befehl kennt nur das neue Delphi. Den kannst du einfach löschen.

Progman 23. Nov 2007 17:05

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
ach, das liegt an meinem Delphi 2007, in der dpr-Datei die Zeile einfach löschen, die OntaskBar setzt.

igel457 23. Nov 2007 17:20

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Hallo,

ich habe an mein Font-Interface ist jetzt so weit eigentlich fertig (Nein, ich habe es noch nicht hoch geladen). Um einen Text auszugeben, ist jetzt eigentlich nur folgender Code notwendig:
Delphi-Quellcode:
with AdDraw.Fonts.GenerateFont('Verdana',36,[]) do
begin
  with TypeSetter as TAdSimpleTypeSetter do
  begin
    //Den Text zentriert ausgeben
    DrawMode := [dtCenter, dtMiddle];
  end;
  Color := Ad_ARGB(128,0,0,255);
  TextOut(AdRect(0,0,ClientWidth,ClientHeight),s);
end;
Die Klasse "TAdFontFactory" (hier das "Fonts" Objekt), kümmert sich automatisch darum, das der Font nicht ständig neu generiert wird, sonder ein bestehender Font verwendet wird.
Ich hoffe, das ist so einfach genug :wink:

igel457 23. Nov 2007 21:01

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
In einem Anflug von Kreativität habe ich die Andorra 2D - Website ein bisschen umgebaut. Optimal wäre jetzt noch, wenn es jemandem gefällt.

fishbrain 23. Nov 2007 21:09

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Außer das Doppelpfeile auf den blauen Leisten sind hab ich keinen unterschied gefunden. :shock:

igel457 23. Nov 2007 21:12

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Wie wäre es mit STRG-R? ;-)

Progman 23. Nov 2007 21:17

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Schlicht, aber schick ;)

fishbrain 23. Nov 2007 21:19

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Hm das mit strg+r wusst ich nicht.
Das Design is eindeutig besser.

Bääääär 8. Dez 2007 08:12

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Tach Igel.

Ich hab mal wieder ein Problem. Ich wolte einen Editor für die Intro-Bilder in meinem Spiel basteln. Da soll es eine Combobox geben (bzw. gibt es) und mit deren Hilfe legt man die Texturen fest, die als Intro angezeigt werden sollen. Soweit, sogut. Bisher hat das auch funktioniert. Allerdings ist mit einem Mal die property Count der ImageList immer 0. Ich hab das jetzt schon millionenmal durchdebuggt. Die ImageListe wird problemlos geladen, aber Count ist und bleibt Null. Ich kann mir das nicht mehr erklären. Dass es vorher immer funktioniert hat, zeigt mir, dass der Fehler bei mir liegt, meine debugging-Bemühungen zeigen, dass die Datei in die ImageListe geladen wird, also rein theorethisch alles da sein müsste. Vielleicht hat jemand von Euch noch eine Idee.

Meinen Code hänge ich jetzt mal nicht an, denn dass die Liste wirklich geladen wird, zeigt ja, dass ich sogesehen keinen Fehler gemacht habe. (Lasse mich aber gerne eines Besseren belehren)

ein verzweifelter
Bääääär

igel457 8. Dez 2007 11:02

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Hm...

TAdImageList ist ja von TList abgeleitet - wenn die Bilder also tatsächlich geladen werden und auch zur Liste hinzugefügt werden, dann müsste Count auch steigen. Setze doch mal einen Haltepunkt auf die "Notify"-Methode von TAdImageList. Kommt es wirklich da an, sobald du ein Element hinzufügst?

Bääääär 8. Dez 2007 12:52

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
hm. Beim Laden aus einer Datei (TAdImageList.LoadFromFile) wird ja die Datei in einen Stream geladen. Wenn ich beim Debuggen mit dem Cursor über den Bezeichner dazu fahre (der heißt "ms") dann steht im Hint: "ms = ()". Ist das normal so?

Ich hab nochal nachgeschaut: Es wird wirklich geadded. Ich bin beim Debuggen noch mal durch und hab sämtliche werte überprüft - "Add(temp);" wird auch ausgeführt. Ich kann mir nicht vorstellen, dass der Fehler da irgendwo liegt.

So. Also doch noch etwas Code:

Wenn man im LebeledEdit4 den Text ändert, wird die entsprechende Texturendatei geladen:
Delphi-Quellcode:
  if FileExists(LabeledEdit4.Text) then
    begin
      GP.IntroEngine.TextureFile := LabeledEdit4.Text; // Hier wird SetTextureFile aufgerufen.
      for i:=0 to GP.ImageList.Count-1 do // Hier wird abgebrochen, denn Count ist Null
          begin
            Combobox1.Items.Add(GP.ImageList.Items[i].Name);
          end;
    end;
SetTextureFile:
Delphi-Quellcode:
procedure TIntroEngine.SetTextureFile(const aFile:String);
begin
 if FileExists(aFile) then FTextureList.LoadFromFile(aFile); //Laden der Texturen
 FTextureFile := aFile; // Speichern des Dateinamens der TextureListe
end;
Da kann doch eigentlich gar nichts falsch sein...

Ich überlege grade ernsthaft, diese Diskussion in eine extra Thema zu verlagern. Ich dachte nur, hier ist es vielleicht richtig, weil es evtl. die Engine selbst betreffen könnte...

Danke für die schnelle Hilfe,
Bääääär

// Edit: OK, Fehler gefunden. Die IntroEngine selbst hat nochmal eine eigene TextureList, ich greife aber in der Abfrage auf eine andere Zurück. Dämlich... Bleibt noch die Frage, warum es vorher geklappt hat... An dem Code habe ich nix verändert, deswegen habe ich dort auch nicht so genau hingeschaut...

Bääääär 8. Dez 2007 16:07

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Nun, da meine Intros funktionieren:

Hast du ein möglichst großformatiges Bild des Andorra Logos? :stupid: so 800 x 600 oder größer? :-D Wär Cool, wenn das einen schwarzen Hintergrund hätte, sieht sonst sicher doof aus, wenn man die Kanten sieht...

:P Bääääär

PaddyL 8. Dez 2007 17:05

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Liste der Anhänge anzeigen (Anzahl: 4)
Ich hab mal ein kleines Redesign des Logos gemacht, vielleicht gefällts ja jemandem (oder jemand hat Vorschläge) :wink:

Bääääär 8. Dez 2007 17:22

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Zitat:

Zitat von PaddyL
(oder jemand hat Vorschläge) :wink:

Ja ^^ auf schwarzem Bakcground und 800 x 600 :-D

PaddyL 8. Dez 2007 18:56

Re: Andorra 2D [Ver. 0.20 ALPHA 2, 05.10.07]
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Bääääär
Zitat:

Zitat von PaddyL
(oder jemand hat Vorschläge) :wink:

Ja ^^ auf schwarzem Bakcground und 800 x 600 :-D

Ich dinde die 300x300 Version dafür voll ausreichend. Du willst doch nicht wohl den ganzen Schirm mit einem Logo vollmachen wollen?!
Schau dir mal an wie bei Spielen das "EAX", "NVidia" etc. dargestellt wird. Einfach irgendwo in der Mitte des Schirms.
Und selbst wenn kannst du einfach die PSD (oder die 1024er Version falls du kein Photoshop hast) und sie entsprechend verkleinern (zum Beispiel in GIMP oder Photoshop). Sollte keine Schwierigkeit darstellen. Dazu ist das Logo auch schon Alphatransparent. Da ist es egal wie du den Hintergrund willst. Es ist an den "korrekten" Stellen automatisch durchsichtig.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:38 Uhr.
Seite 10 von 26   « Erste     8910 111220     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