![]() |
[Andorra] Texturen vergrößern sich bei dynamischer Änderung
Hallo,
habe jetzt noch ein Problem. Wenn ich in meinem Spiel dynamisch Texturen vergebe, werden diese nicht an die Größe des jeweiligen Sprites angepasst, sondern sind plötzlich riesig groß. Muss ich da beim Zuweisen irgendwie nochmal Restore oder aufrufen? Die Texturen weise ich ganz normal über eine ImageListe zu. gruß |
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Wenn du so etwas wie
Delphi-Quellcode:
machst, musst du nochmals AdImage2.Restore aufrufen.
AdImage2.Texture := AdImage1.Texture
|
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Naja ich weise halt über Image meinen Sprites eine Textur zu. Könnte man das intern in der Engine nicht über eine Property mit einem Setter machen, der dann von selber Restore aufruft?
gruß |
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Hm...Also irgendwie klappt das nicht so ganz wie ich das will...
Hier mal der Code: Laden der Grafiken:
Delphi-Quellcode:
Und das Zuweisen:
procedure LoadTex;
begin SharedImageList.LoadFromFile('Data/Tex/Textures.ail'); SharedImageList.Restore; [...] end;
Delphi-Quellcode:
procedure TMoneyDisplay.ShowValue;
var tmp : string; i : Integer; begin tmp := IntToStr(FValue); for i := 0 to Length(DisplayObject) - 1 do DisplayObject[i].Image := SharedImageList.Find('0'); //Alle Zahlen null setzen, das klappt auch noch... for i := 0 to Length(tmp) - 1 do //Richtige Werte zuweisen DisplayObject[Length(tmp) - 1 - i].Image := SharedImageList.Find(tmp[i + 1]); //Hier das klappt dann nicht mehr... //Auch wenn ich hier noch Restore irgendwie dahinter schreibe... end; |
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Bei Sprites sollte das schon Funktionieren - ich schätze mal, dass DisplayObjects ein "array of TImageSprite" ist. Was genau geht denn nicht?
Debugge das doch einfach mal durch. |
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Ich weiß was nicht geht... :(
Meine Texturen sind nicht so groß wie die eigentlichen Sprites im Spiel bzw andersherum , sie sind größer. Das führt dazu, dass wenn ich eine neue Textur zuweise die Textur in ihrer vollen Größe dargestellt wird. Der Umstand mit den texturen liegt eigentlich an der Power-of-two Limitierung von OGL. ISt da sbei dir auch noch so? Ich habe da sbei dir bis jetzt nur beim Backgroundsprite gelesen... Kann man auch noch-power-of-two-texturen nehmen? Aber gibt es einen Trick, dass die Sprites ihre Größe nicht verändern? Restore bringt da leider auch nichts... :( |
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Andorra 2D kümmert sich automatisch darum die Texturen neu zu skalieren - daher kommt ja gerade der Bug bei den Backgroundsprites. Die Texturen dürfen nur die Größe 2048x2048 nicht überschreiten - sonst gibt es keinerlei Limitierungen.
|
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Hmm...und warum klappt das dann bei mir nicht?Naja egal muss ich halt die texturen von der Größe Anpassen...
|
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Wodran kann das denn liegen?... :(
Es klappt einfach nicht... Sobald ich nach der Größenzuweisung des Sprites eine Textur ändere fliegt alles auseinander... :( Es gibt keine fehler oder so, aber die Texturen bzw sogar die Sprites vergrößern sich auf die Originalgröße der Texturen... Entweder ich bin zu blöd
Delphi-Quellcode:
zu verstehen oder hier stimmt was nicht...
Restore
Muss man etwas beachten wenn man aus einer Datei (ail) lädt? |
Re: [Andorra] Texturen vergrößern sich bei dynamischer Änder
Zitat:
Versuch doch mal bei einer Probe ob es hier am ail Format liegt oder an noch was anders. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:14 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