Seite 3 von 3

Re: Texture variation

Verfasst: So 19. Feb 2017, 16:04
von SkyNet
cech12 hat geschrieben:...die Funktion check_inventory_list in irgendeiner Weise nach dem Auspacken aufgerufen wird. :D
Das wird das Problem sein. Ich weiß gerade nicht wie ich diese aufrufen kann. Texturen sind alle da. Die Schatztonne selbst wird nicht ausgepackt. Da hab ich mir eine neue Klasse geschrieben, die ich herstellen und platzieren kann, und die durch set item [new Schatztonne] die eigentliche Tonne erstellt.

Bild

Re: Texture variation

Verfasst: Mo 20. Feb 2017, 12:28
von cech12
Ich weiß gerade nicht wie ich diese aufrufen kann.
Ich habe mal ein wenig im Code herumgesucht und bin in der Data/Scripts/classes/zwerg/z_work_common.tcl auf ein paar Stellen gestoßen, die dir helfen könnten.

Es gib ca. in Zeile 413 eine Funktion prod_buildup in der eine If-Abfrage schaut, ob Items mit oder ohne Aufbauanimation aufgebaut werden sollen.

Code: Alles auswählen

if {[lsearch {Abfluss Leiter Leiter_Kristall Leiter_Metall Plattmachfalle SteinfalleMedusa} $pclass]!=-1} {
	...
}
In der Liste sind alle Items, die keine Aufbauanimation haben. Da könntest du deine Schatztonne hinzufügen. ;)

Um Items aufzubauen, wird die Item-Methode unpackfrombox aufgerufen. Diese befindet sich in Data/Scripts/misc/genericprod.tcl ca. in Zeile 194. Dort wird ziemlich am Ende geprüft, ob das Item eine init-Methode besitzt und falls ja, wird diese aufgerufen.

Code: Alles auswählen

if {[check_method [get_objclass this] init] == 1} {
	call_method this init
} else {
	log "WARNING: no init method for class [get_objclass this]"
}
Somit müsstest du theoretisch nur in deiner neu erstellten Klasse eine init-Methode definieren, die deine Funktion aufruft. Ungefähr so:

Code: Alles auswählen

method init {} {
	check_inventory_list
}
Oder wenn du deine check_inventory_list in eine Methode umwandelst (anstatt proc einfach method davorschreibst):

Code: Alles auswählen

method init {} {
	call_method this check_inventory_list
}

Viel Erfolg ;)

Re: Texture variation

Verfasst: Mi 1. Mär 2017, 20:41
von SkyNet
Also das mit der inventory liste funktioniert jetzt. War gerade dabei drei neue Textur Variationen für die Tonne in Photoshop zu erstellen, was eigenlich überhaupt kein Problem sein sollte, da ich bereits die Vorgehensweise kenne und ein dutzend anderer Texturen erstellt hab die auch wirklich im Spiel funktionieren. Jetzt auf einmal macht Wiggles solche Faxen:
Bild

Die Textur sollte nicht so aussehen. Weiche Übergänge werden vom Spiel hart dargestellt. Ich komm einfach nicht dahinter.

PS: Stimmt da was mit der Farbpalette nicht?

Re: Texture variation

Verfasst: So 5. Mär 2017, 14:09
von cech12
Hallöchen,

das blaue Fass sieht ja sehr interessant aus. :D
Leider weiß ich nicht, wie das Fass eigentlich aussehen soll und kann deine Frage nicht wirklich beantworten. Wenn du dich aber an das ursprüngliche Seitenverhältnis und das Dateiformat gehalten hast, sollte das nicht das Problem sein.

Wenn man sich das echte Fass ansieht, dann gibt es dort ja auch relativ weiche Übergänge.

Vielleicht zeigst du uns mal ein Bild von deiner Textur, vielleicht hilft das ja weiter. :)

Viele Grüße
Chris

Re: Texture variation

Verfasst: So 5. Mär 2017, 14:49
von SkyNet
Die originale sind Holz_Standard_a_256.tga und Holz_Standard_b_256.tga.

Bild
Bild

Re: Texture variation

Verfasst: So 5. Mär 2017, 15:24
von cech12
Hey SkyNet,

ich habe das bei mir auch gerade mal getestet und bei mir bildet ein Farbverlauf auch solche Streifen. Ich vermute mal, dass die Engine die Texturen einer Komprimierung / Tontrennung unterzieht, um Graka-Ram zu sparen. Eine Tontrennung bei Fabrverläufen führt zu solchen Abstufungen.

Ich denke mal, da kann man nur schwer etwas tun außer keine Grafiken zu verwenden, die ungünstig auf Tontrennung reagieren. :cry:

Hier ist mal testweise ein Farbverlauf mit Bildrauschen, um die Tontrennung zu umgehen. Da sieht es schon besser aus.
Bild

Viele Grüße
Chris

Re: Texture variation

Verfasst: Mi 8. Mär 2017, 18:47
von SkyNet
Egal was ich auch versuche, in Photoshop oder auch in Corel PHOTO-PAINT, es funktioniert nicht. Was für ein Grafikprogramm benutzt du für deine Texturen?

Re: Texture variation

Verfasst: Mi 8. Mär 2017, 18:56
von cech12
Hey SkyNet,

wie ich schon sagte, hat das nichts mit den Texturen selbst zu tun sondern mit der Wiggles-Engine, die anscheinend ein paar Textur-"Optimierungen" tätigt...

Das geht auf die Kosten der Texturqualität und verunstaltet vor allem Farbverläufe. Daher benutz am besten keine Farbverläufe in deinen Texturen. :)

Ich nutze Gimp und Paint.NET.
Das Bildrauschen ist ein Effekt von Paint.NET gewesen.

Viele Grüße
Chris