Format SBT: Różnice pomiędzy wersjami
Linia 1: | Linia 1: | ||
+ | == Informacje ogólne == | ||
Plik SBT (Scenery Binary Terrain) jest plikiem binarnym zawierającym dane terenu. Dane te są podzielone na sekcje, co w zamyśle ma umożliwić szybsze wczytywanie scenerii i jej dynamiczne ładowanie bez potrzeby wczytywania całej scenerii do pamięci, jak to ma miejsce w przypadku plików tekstowych. | Plik SBT (Scenery Binary Terrain) jest plikiem binarnym zawierającym dane terenu. Dane te są podzielone na sekcje, co w zamyśle ma umożliwić szybsze wczytywanie scenerii i jej dynamiczne ładowanie bez potrzeby wczytywania całej scenerii do pamięci, jak to ma miejsce w przypadku plików tekstowych. | ||
Linia 5: | Linia 6: | ||
Ponieważ nie istnieje sposób na rozpoznanie, które scenariusze korzystają z takiego samego terenu i otoczenia, plik SBT tworzony jest osobno dla każdego scenariusza. | Ponieważ nie istnieje sposób na rozpoznanie, które scenariusze korzystają z takiego samego terenu i otoczenia, plik SBT tworzony jest osobno dla każdego scenariusza. | ||
− | Generowanie plików SBT można wyłączyć | + | Generowanie plików SBT można wyłączyć wpisem w eu07.ini |
file.binary.terrain no | file.binary.terrain no | ||
− | + | == Format pliku == | |
Na początku pliku znajduje się nagłówek EU07SBTx, gdzie x jest numerem wersji formatu. | Na początku pliku znajduje się nagłówek EU07SBTx, gdzie x jest numerem wersji formatu. | ||
Zaraz za nagłówkiem znajduje się 4 bajtowa liczba określająca ilość sekcji zapisanych w pliku. | Zaraz za nagłówkiem znajduje się 4 bajtowa liczba określająca ilość sekcji zapisanych w pliku. | ||
− | == Sekcja (section) == | + | === Sekcja (section) === |
Sekcje zapisane są jedna za drugą, a każda z nich zaczyna się od: | Sekcje zapisane są jedna za drugą, a każda z nich zaczyna się od: | ||
Linia 26: | Linia 27: | ||
− | == Komórka (cell) == | + | === Komórka (cell) === |
Komórki zapisane są jedna za drugą, a każda z nich zaczyna się od: | Komórki zapisane są jedna za drugą, a każda z nich zaczyna się od: | ||
Linia 46: | Linia 47: | ||
Tutaj zapisane są dane shape'ów | Tutaj zapisane są dane shape'ów | ||
− | == Jednostka geometrii (shape node) == | + | === Jednostka geometrii (shape node) === |
Wersja z 06:56, 31 maj 2022
Spis treści
Informacje ogólne
Plik SBT (Scenery Binary Terrain) jest plikiem binarnym zawierającym dane terenu. Dane te są podzielone na sekcje, co w zamyśle ma umożliwić szybsze wczytywanie scenerii i jej dynamiczne ładowanie bez potrzeby wczytywania całej scenerii do pamięci, jak to ma miejsce w przypadku plików tekstowych.
Plik tworzony jest podczas wczytywania scenariusza. Wszystkie trójkąty terenu oraz linie z plików tekstowych (SCN, SCM, INC) są w ramach sekcji łączone w większe grupy siatek i w tej formie zapisywane do pliku SBT. Późniejsze ładowanie tego samego scenariusza będzie już używało danych z pliku SBT.
Ponieważ nie istnieje sposób na rozpoznanie, które scenariusze korzystają z takiego samego terenu i otoczenia, plik SBT tworzony jest osobno dla każdego scenariusza.
Generowanie plików SBT można wyłączyć wpisem w eu07.ini
file.binary.terrain no
Format pliku
Na początku pliku znajduje się nagłówek EU07SBTx, gdzie x jest numerem wersji formatu. Zaraz za nagłówkiem znajduje się 4 bajtowa liczba określająca ilość sekcji zapisanych w pliku.
Sekcja (section)
Sekcje zapisane są jedna za drugą, a każda z nich zaczyna się od:
1. Indeksu sekcji (unsigned int, 4 bajty)
2. Rozmiaru sekcji (unsigned int, 4 bajty)
3. Ilości shape'ów w sekcji (unsigned int, 4 bajty)
Po tych danych zapisane są dane shape'ów. Za shape'ami zapisane są dane komórek.
Komórka (cell)
Komórki zapisane są jedna za drugą, a każda z nich zaczyna się od:
1. Centrum bounding boxa (3 liczby double)
2. Promienia bounding boxa (float, 4 bajty)
3. Ilości nieprzezroczystych shape'ów w komórce (unsigned int, 4 bajty)
Tutaj zapisane są dane shape'ów.
4. Ilości przezroczystych shape'ów w komórce (unsigned int, 4 bajty)
Tutaj zapisane są dane shape'ów.
5. Ilości lines w komórce (unsigned int, 4 bajty)
Tutaj zapisane są dane shape'ów