Mittwoch, 18. März 2009

Setup-Projekt


Da früher oder später sowieso ein Setup-Projekt erforderlich ist, wurde dieses jetzt erstellt.
Mit Hilfe eines Klicks wird automatisch ein Setup-File erstellt, wobei auch alle
notwendigen Abhängigkeiten der diversen Projekte berücksichtigt werden. In diesem Zusammenhang wurde auch gleich die Projektorganisation neu eingeteilt und ist jetzt wie in der Abbildung gestaltet. CopyFonts (benutzerdefinierte SETUP-Aktion) dient zum Kopieren der SkyTactiX-Fonts (TTF) in den Windows-Ordner, wobei interessanterweise das Löschen nicht so einfach möglich ist. Eigentlich braucht auch das Font-File nicht wirklich mehr heraus gelöscht werden, ich kenne viele Programme die das nicht tun. Das SkyTactiX-Setup kennt folgende Abhängigkeiten:

  • SkyTactiX (exe)
  • Irrlicht (dll)
  • Irrklang (extra über "Content" angegeben)
  • Newton (-"-)
  • SkyFontTool (dynamisches Generieren der bmp-Fonts zur Laufzeit)
  • SktxHashLib++ (basiert auf HashLib++, kleine Änderungen; Überprüfen, ob Levels unterlaubterweise manipuliert wurden)
  • SktxServer (standalone-Server)
Die Squirrel-Language und die IrrAI-API wird statisch gelinkt, da dies anscheinend von den Entwicklern so vorgesehen ist und ein Umschreiben wahrscheinlich ziemlich aufwendig wäre (einzelne Funktionen über Interfaces bereitstellen, da sonst Probleme mit Speicher => dll-Speicher nicht direkt eigener Speicher!).

LEIDER muss der data-Ordner vor dem Build manuell in den Explorer "hineingezogen" werden, man müsste eventuell die Config-Files editieren (wenn nicht proprietär! Python-Skript?), um einen vollautomatischen Build hinzubekommen. Es gäbe eine Möglichkeit Dateien als "Content" zu markieren, jedoch müsste man da jede einzelne Datei markieren => Aufwand? Visual Studio ist manchmal echt ziemlich dumm, was die Frage aufwirft wieso dieses komische Programm so viel kostet.

Zur Vorbearbeitung des data-Ordners (Löschen von "CVS"-Ordner (inklusive Inhalt), ".cvsignore", "*.wings", "*.xcf", etc.) wurde ein Python-Skript implementiert, das diese Aktionen mit einer Rekursionsstufe von bis zu 10 und mit Hilfe von Listen von regulären Ausdrücken durchführt.

Folgendes muss also durchgeführt werden, um einen Build hinzubekommen:
  • Ausführen von cvsremove.bat (Löschen der unnötigen Dateien + Ordner)
  • Hineinziehen des data-Ordners
  • Build ausführen
  • NICHT speichern, da der Data-Ordner nicht mehr wegzubekommen ist: VStudio meldet: Ordner nicht leer => Jede Datei einzeln löschen (Bilder, Models, Sounds, etc.)





Keine Kommentare:

Kommentar veröffentlichen