Hallo,
Anscheinend habe ich meine Frage doch etwas zu komplex gestellt und möchte Sie etwas abändern anhand eines generellen Beispieles.
Angenommen wir beginnen nun ein Spiel zu programmieren. Zu einem Spiel gehören natürlichen sämtliche Texturen. Angenommen unser Spiel benötigt 100 verschiedene Texturen.
Nun wäre es natürlich schwachsinnig jede Textur einzeln wie in einer langen Liste aufzurufen. zB:
|
Quellcode
|
1
|
this.Logo = LoadTexture(...); this.Background = LoadTexture(...); this.Cursor = LoadTexture(...);
|
Hier kommen nun meine Probleme ins Spiel. Wie oben geschrieben den Code zu schreiben ist nicht wirklich schön. Wie würdet Ihr mehrere Texturen in euer Spiel laden?
Derzeit benutze ich hierfür eine XML-Datei jedoch möchte ich weitere Vorschläge.
Als 2. Punkt spreche ich das Skinning-System an, wodurch der User selbst entscheiden kann welche Textur welchen Element haben soll.
Auch hier würden mich eure Ansätze für eine akzeptable Lösung sehr interessieren.
Zu meinen derzeitigen Aufbau: Ich lese anhand einer XML-Datei sämtliche Texturen aus welche das Spiel benötigt. Somit weiß ich nun ok ich brauche einen Cursor und weiß unter welchen Namen ich die Textur finden und anschließend laden kann. Nun sind alle Basis-Texturen geladen nun geht es zu den Skin-Texturen. Hierzu öffne ich eine XML-Datei welche sämtliche Daten zum laden der Skin-Texturen beinhaltet. Man mag sich das laden der Skin-Elemente etwa so vorstellen: Ließt Texture1-Daten aus, Öffnet die ".dy"-Datei und ließt daraus die Textur inkl zusätzliche Daten und speichert diese Anstelle der Basis-Textur welche am Anfang eingelesen wurde.
Und nochmals zum Abschluss: Es ist mir eure Meinung sehr wichtig wie Ihr es machen würdet. Ob es jetzt rein nur um Basis-Texturen oder Skin-Texturen geht ist egal, jeder Hilfe ist gerne gesehen.
Mit freundlichen Grüßen
Markus Ö.