====== GTA2 ====== ===== .gmp Dateiformat / Mapgeometrie ===== In den .gmp-Files ist bei GTA2 die Map-Geometrie gespeichert. In der unkomprimierten Variante sind sind die Dateien recht simpel aufgebaut: {{:projekte:gta2_gmp_example_cube_hex.jpg|Einfache .gmp im Hex-Editor}} Im Editor: {{:projekte:gta2_gmp_example_cube.jpg|Beispiel im Editor}} Die ersten 14 Bytes bilden den Header. //GBMP// identifiziert die Datei als GBMP. //f4 01// könnte die Dateiversion sein (?). //UMAP// bedeutet **u**ncompressed map. Genauso gibt es auch noch CMAP, also **c**ompressed map (diese werden wohl einen Mechanismus wie "x Würfel leer" etc. besitzen). Was //00 00 60 00// bedeutet ist mir nicht klar. Nach dem Header folgen die einzelnen "Pixel". Eine Map besteht nur aus diesen Pixeln/Würfeln - eben wie bei einem normalen BMP/Bitmap. Die ersten 10 Byte bestehen aus 2-Byte-Blöcken die jeweils die Texturen der Würfelseiten definieren. //a0 03// ist eigentlich Textur //03a0//, also in dezimal Textur 928: {{:projekte:gta2_gmp_example_cube_texture.jpg|Texturbrowser mit Textur 928}} Eine Textur-Id von //00 00// bedeutet keine Textur / transparent. Die letzten 2 Byte definieren eigenschaften des Würfels: ^ 0-7 ^ 8-12 ^ 13-15 ^ | ? | Form | ? | Weitere Würfel lassen sich - wie bei einem Bitmap - im Hex-Format einfach an die bestehenden Würfel anhängen. So erzeugt ein 3 Megabyte großer Klumpen einen Bildschirm voller Mist =): Hex-Auszug: {{:projekte:gta2_gmp_example_cube_123_hex.jpg|Ordentlich copypasta}} Resultat im Editor: {{:projekte:gta2_gmp_example_cube_123.jpg|Ansicht im Eitor}} Würde man nur zwei Würfel in die Datei schreiben gäbe es zwei Würfel entlang Achse 1. Ist diese Dimension "voll" gehts in der zweiten Reihe weiter, das Spielfeld wächst in richtig Achse 2. Ist eine Ebene voll gehts bei Achse 3 weiter - nicht mehr oder weniger als ein 3D-Bitmap mit festen Dimensionen. ===== Mehr zu GTA2 ===== * [[http://gtamp.com/gta2/]] * [[http://brain.wireos.com/?tag=opengta2|OpenGTA2]]