Delphi-PRAXiS
Seite 62 von 103   « Erste     1252606162 636472     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 25. Apr 2008 15:06

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Vielen Danke für diese überaus positive Rückmeldung :thumb:

Wenn du einen Bugreport auf Sourceforge einstellen möchtest, dann schreibe das am besten auf Englisch. Die gemeldeten Bugs sollten vor allem Reproduzierbar sein - es wäre also ganz gut, ein kleines Beispielprogramm oder einen Codeauszug zu sehen, bei dem der Fehler auf jeden Fall auftritt.

Jetzt wo du das mit Windows 2000 sagst, mache ich mir wirklich Gedanken - meine Programme sind mit DirectX auch noch nie auf Win2000 gelaufen. Ich habe das aber immer auf fehlende 3D-Hardware geschoben.

An der Dokumentation arbeite ich gerade - die gibt es dann mit der nächsten Version.

Mit den Pfaden werde ich mir etwas überlegen.

Über die Rechtslage von Spenden für OpenSource/Freeware-Projekte in Deutschland bin ich mir leider nicht im klaren. Soweit ich weiß, wird das Projekt dann (wenn man Pech hat) als kommerziell angesehen. Daher sind Spenden zurzeit leider nicht möglich ;-)

Progman 26. Apr 2008 07:47

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Win2000 ist kein Fehler, man muss nur auch unter Win2000 das DirectX auf nem neuen Stand haben, dann läuft das auch ;)

lou_cyfer 2. Mai 2008 09:19

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
hello again! (schon wieder eine noob-Frage...)

suche gerade Docu zu TAdImageList (alle Methods, Properties,..)

unter http://andorra.sourceforge.net/docs/ + SEARCH gibt's leider nichts :(
BTW: der AdBlur-link auf der "docs"-Seite zeigt auf einen nicht vorhandenen Forum-link.

in den demos/tutorials fand ich natürlich einiges... (tutorial)

hat TAdImageList noch mehr (methods,..) zu bieten??

Im speziellen suche ich gerade nach einer Möglichkeit, bei einer (starken) Image-Verkleinerung (Ziel-rect ist kleiner als Quell-Image),
einen (schnellen) "(Gaussian-)Blur" oder etwas ähnliches auszuführen. Damit das (verkleinerte) Image optisch nicht so "pixelig/franzig" aussieht.

any hints appreciated :stupid: ,
lou

igel457 2. Mai 2008 10:12

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Die Dokumentation ist ziemlich inaktuell. Mit der nächsten Version wird sich das allerdings ändern. Mit folgendem Code kannst du ein Bild aus der Bilderliste "bluren":
Delphi-Quellcode:
uses
  AdBitmap, AdBitmapEffects;
var
  adbmp: TAdBitmap;
  adblur: TAdBitmapBlur;
begin
  adbmp := TAdBitmap.Create;
  adbmp.ReserveMemory(AdImageList[0].Width, AdImageList[0].Height);
  AdImageList[0].Texture.SaveToGraphic(adbmp);
 
  adblur := TAdBitmapBlur.Create;
  adblur.Radius := 5;//Stärke des Effekts
 
  adblur.AssignEffect(adbmp);

  adblur.Free;
   
  AdImageList[0].Texture.LoadFromGraphic(adbmp);
  adbmp.Free;
end;
Ist ungetestet, sollte aber funktionieren...

PS: Achja, ich glaube das, was du wirklich suchst ist:
Delphi-Quellcode:
AdDraw.Options := AdDraw.Options + [doMipmaps];

lou_cyfer 2. Mai 2008 11:32

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
boah.., danke für den superschnellen Support :-D Herr Igel

Hab vergessen zu sagen, daß ich das dynamisch machen möchte. (die Zielgröße der Images variiert dynamisch).
Also grob: Ziel Rect ist "groß" => no blur, "klein" => blur.

Denke, Dein 2. Ansatz ist global. Scheidet höchstwahrscheinlich für mich aus. (was bewirkt [doMipmaps]?)

1. sollte irgendwie funktionieren.
Da der "assignEffect" das Image physikalisch verändert (?!), werde ich wohl meine Einzelimages aufdoppeln müssen (blur/no blur).

Einen blur o.Ä. der effektiv wie ein "alpha" (= als property) einsetzbar ist, wird es nicht geben, denke ich, oder?

noch eine blöde Frage (wenn Du nicht gleich antwortest, bin ich nicht böse :oops: )

Zeichnet man ein Image via ImageList.Draw(rect..) und rect ist kleiner das Quellimage, was macht die Engine in diesem Fall?
"Nearest Neighbor"? Oder etwas komplexeres? (was ich dann garantiert nicht verstehe...)



gleich mal testen...

thanks again,
lou

igel457 2. Mai 2008 12:19

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
"DoMipmaps" ist der beste Weg:
Ist dieses Flag gesetzt, so werden beim laden der Textur mehrere, so genannte "Mipmaps" für die Textur berechnet. Bei "Mipmaps" handelt es sich um verkleinerte Versionen der Textur, die mit hoher Qualität gerendert wurden. Somit gibt es beim verkleinerten Zeichnen der Texturen keine "kantigen" Übergänge.
Zusätzlich solltest du noch "AdDraw.TextureFilter" von "atPoint" auf "atLinear" setzten.

Setzte "doMipMaps" und den Texturfilter, bevor du die Texturen/Bilder bei denen der Effekt auftritt lädst.

Siehe auch:
http://de.wikipedia.org/wiki/Mip_Mapping
http://wiki.delphigl.com/index.php/Mipmaps

lou_cyfer 2. Mai 2008 14:49

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Liste der Anhänge anzeigen (Anzahl: 2)
Vielen Dank, Meiser Igel :)

AdDraw.TextureFilter=doLinear hat schon mal sehr viel gebracht - siehe snapshot / Vergleich doLinear/doPoint.

DoMipmaps scheint keine (zusätzlichen) Auswirkungen zu haben.
Wahrscheinlich, da ich die Images dynamisch über einem Bitmap erzeuge (Texture.LoadFromGraphic(img.Picture.Bitmap)).

Auf jeden Fall, bin ich mit dem Ergebnis zufrieden :)

happy we,
lou

Codewalker 5. Jun 2008 13:47

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Sehr ruhig geworden hier ... wie ist denn der letzte Stand bei Andorra2D - ist die 0.4 in Sicht?

Looper 5. Jun 2008 14:09

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Würde mich auch interessieren... :hi:

mfg Looper

igel457 5. Jun 2008 17:18

Re: Andorra 2D [Ver. 0.35, 04.03.08]
 
Hallo,

den aktuellen Entwicklungsstand könnt ihr natürlich (wie immer) im CVS Archiv verfolgen (auch wenn ich für die dortige Versoin keinerlei Support übernehme) - dort sieht man, dass der letzte Commit von gestern ist.

Bis ich Version 0.4 herausgebe, werden mindestens noch zwei, drei Wochen vergehen - ich muss da noch einiges Testen (besonders auch noch Lazarus und Linux) und endlich meine TODO-Liste mit den Support-Requests abarbeiten. Das OpenGL-Plugin muss ich zudem noch auf den stand des DirectX-Plugins bringen. Sonst bin ich eigentlich schon fast fertig.

Hier der aktuelle Stand aus der meiner Roadmap:
Code:
[b]Version 0.4[/b]
[i]Plugin side[/i]
- Add Point sprites [DONE]
- Textures as rendertarget [DONE]
- Stencil Buffer [DONE]
- Pixel counting [DONE]
- Add propery system [DONE]
- Rewrite light system [DONE]
- Add shader system [DONE]
- Cg-Shader [50%, DirectX only/ OpenGL missing]
- HLSL-Shader [0%]
- GLSL-Shader [0%]
- Make sure, Plugins run on older hardware
[i]Application side:[/i]
- Rewrite particle systems [DONE]
- Surface System [DONE]
- Stencil Buffer [DONE]
- Hardware collision detection [DONE]
- Add shader object [DONE]
- Make DisplayRect/SurfaceRect work properly [DONE]
- Rewrite log system [50%]
- Rewrite Setup Dialog [DONE]
- Add a few new GUI-Objects [DONE]
Jetzt ist man also in der Lage mit Andorra 2D Shader Programme zu verwenden (auch wenn das vermutlich keiner (außer ich selbst) braucht). Die benötigten Bibliotheken werden erst mit der ersten Verwendung geladen, wodurch keine zusätzlichen Abhängigkeiten entstehen.
Zudem hat man nun die Möglichkeit Objekte in eine eigene Textur als Surface zu Rendern, wodurch der letzte Nachteil gegenüber DelphiX aus dem Weg ist.
TAdSetupDlg läuft nun sowohl mit Lazarus als auch Delphi und parst dynamisch die Parameter des ausgewählten Plugins.
Die Szeneneinstellungen werden nun über ein eigenes "Scene" Objekt jedes einzelnen Surfaces gemacht.
Das Lichtsystem wurde aktualisiert, Meshs besitzen nun eine "Material" Eigenschaft, in der Materialeinstellungen getroffen werden können. TAdVCLComponentWindow Framework sollte nun auch ohne Problem unter Lazarus laufen.

Die Renderingsystem-Pluginschnittstelle habe ich aufgeräumt.

Zudem wird jetzt auch SDL als Windowframework unterstützt.

3_of_8 hat Erweiterungen für Andorra 2D geschrieben, mit denen direkt TGA-Dateien geladen werden können. Zudem hat er eine erweiterte TFileStream Klasse geschrieben, die Dateien direkt aus komprimierten (zur Zeit .tar.gz) Dateien laden kann.

Eine andere Geschichte ist die Dokumentation, die ich mit Version 0.4 endlich mal auf den Stand der Dinge bringen möchte, plus mindestens 11% Kommentaranteil im Code. Vorher wird es keine neue, offizielle Version geben.

Alles in allem wird sich für den Otto-Normal Andorra 2D Benutzer nicht viel ändern, weshalb auch die kleine Wartezeit noch zu verkraften sein wird.

Danach werde ich endlich mal mein 2D-Spiel (eine Art Worms, nur in Echtzeit) Crashpoint neu programmieren. Schließlich habe ich Andorra 2D nur dafür geschrieben. Das ist dann die Bewährungsprobe für meine Engine, alle Änderungen werden in die nächste Version 0.5 einfließen. Diese wird dann die erste Beta Version von Andorra 2D darstellen, was bedeutet, dass es keine elementaren Änderungen an der Bibliotheksschnittstelle mehr geben wird.

Andreas


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:46 Uhr.
Seite 62 von 103   « Erste     1252606162 636472     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