Levelstreaming erklären mhh..
Du lädst nur das was relevant für den Spieler ist, alles andere kann entladen werden, bewegst du dich durch die Welt wird im Hintergrund das geladen was demnächst für den Spieler relevant wird.
Kleines Beispiel:
S = Spieler
0 = geladene Welt
1 = wird geladen
2 = irrelevant
|
Quellcode
|
1
2
3
4
5
6
7
|
2222222
2111112
2100012
210S012
2100012
2111112
2222222
|
So würde sich schonmal ein sehr simples System realisieren lassen, die Welt ist in Raster unterteilt und nur die Elemente 1 Rastereinheit um den Spieler herum wurden geladen, Elemente 2 Rastereinheiten werden geladen und sind evtl schon geladen, alles andere ist erstmal unwichtig.
Eine Rastereinheit kann bei dir zB aus einem Terrain inklusive Levelgeometrie bestehen. Diese Daten wirst du im Hintergrund (Stichwort: Multithreading) laden wollen um den Spieler nicht durch Ladepausen zu unterbrechen.
Gibt sicher noch viel mehr und ausgereiftere Varianten, aber die hier ist mit die am einfachsten zu erklärende.