Format SBT: Różnice pomiędzy wersjami

Z MaSzyna
Skocz do: nawigacja, szukaj
Linia 1: Linia 1:
 
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.
  
Plik tworzony jest podczas wczytywania scenerii. 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.  
+
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.
  
'''cytat: tmj, 03.05.2021'''
+
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.
teraz jest dedyk dla kazdego scenariusza bo nie ma sensownego sposobu na rozpoznanie ktore scenariusze korzystaja z takiego samego terenu i otoczenia
 
ale docelowo myslalem ze scenariusz bedzie mial raczej postac plik_eventow + plik_terenu
 
i wtedy jeden sbt spokojnie moze byc wspoldzielony przez dowolna ilosc scenariuszy
 
  
  '''cytat: tmj, 16.05.2021'''
+
Generowanie plików SBT można wyłączyć wpisem w eu07.ini:
sbt jest w pewnym sensie zrobiony pod streaming wlasnie, bo tam juz sa obiekty porozdzielane do komorek ktore mozna wczytywac gdy sa blisko
+
  file.binary.terrain no
  
  

Wersja z 07:52, 31 maj 2022

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


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

Jednostka geometrii (shape node)