Úpravy terénu

Vytvořil sasule, publikováno 21.01.2019 21:01

Každá mapa má svůj popis terénu. Ten jen uložen v bin souborech ve složce Terrain dané mapy.

Problém nastavává, když je nutné nebo vhodné zvednout, či snížit terén na celém čtverci (např. po vygenerování terénu pomocí importu DEM/SRTM).

Po rozbalení .bin souboru nástrojem serz.exe je vidět, že v souboru jsou terénní body zapsány do sloupců. V každém sloupci je 16 znaků (0-F). Jinými slovy jeden tento znak reprezentuje 4 bity z čísla, které značí nadmořskou výšku. 16tice ale vlastně značí 2 čísla, každé tedy má 8 pozic/znaků, což dává 32bitové číslo.

Toto 32 bitové číslo je uloženo (pravděpodobně) v kódobán big endian a jedná se zcela jistě o číslo v plovoucí řádové čárce (zjištěno experimentálně).

Mějme tedy třeba terénní bod ve výšce 1m. Potom lze zjistit, že toto číslo má být v 16kové soustavě zapsáno takto: 3F80. Při prohlédnutí terénního souboru hry, ale nalezneme osmici: 0000803F

Výše uvedené poznatky budou snad v brzké době využity pro tvorbu programu, který bude umět zvyšovat či snižovat terénní body.

Kategorie