Roblox Studio to potężny silnik, który może tworzyć doświadczenia na szerokiej gamie platform, ale nawet niektóre telefony high-end mogą mieć problem z ładowaniem całej naszej zawartości naraz.Aby to rozwiązać, użyliśmy strumieniowania, aby osiągnąć najwyższy poziom jakości możliwy na szerokim spektrum urządzeń.Streamowanie pozwoliło nam autorować całą naszą zawartość w jednym miejscu i dynamicznie ładować mniejsze części zawartości widoczne dla użytkownika.

Konkretne rozważania techniczne
Podczas włączania transmisji w swoim doświadczeniu należy wziąć pod uwagę kilka rzeczy, aby zapewnić, że twoje doświadczenie będzie prawidłowe i że maksymalizujesz korzyści z funkcjatransmisji:
- Czy istnieją skrypty lub elementy, które polegają na innym fragmencie treści? Jeśli tak, jeden lub więcej twoich zależności może nie zostać załadowane w pewnych czasach.
- Czy istnieją skrypty, które skanują przestrzeń roboczą, gdy rozpoczyna się doświadczenie? Skrypty klienta nie powinny polegać na znalezaniu wszystkich instancji, których potrzebują w momencie rozpoczęcia doświadczenia, a nie jest to praktyka zalecana.
- Czy twoje doświadczenie cierpi wizualnie, jeśli niektóre treści nie są wyświetlane we właściwym czasie? Istnieją różne techniki i sztuczki, aby stworzyć środowisko przyjazne dla strumieniowania i sposoby wykorzystania perspektywy na swoją korzyść.
Podczas tworzenia Tajemnicy Duvall Drive spotkaliśmy się ze wszystkimi trzema tymi problemami i mogliśmy je ominąć za pomocą kombinacji starannego projektowania skryptów i sprytnie zastosowanej stylizacji i układu świata.Pracując z transmisją na własnym doświadczeniu, pamiętaj, że możesz dostosować dystans transmisji min/max do swojego doświadczenia i dostosować różnorodne opcje bardzo dostosowywalne.


Projektowanie poziomu przyjaznego dla strumieniowania
Aby stworzyć wciągające środowisko, gracze muszą być stale otoczeni światem, który dla nich stworzyliśmy.Podczas używania strumieniowania instancji musieliśmy upewnić się, że gracze nie zobaczą nieoczekiwanej zawartości, takiej jak zobaczenie "końca świata", jeśli nie zostaną załadowane żadne wizualne zasoby w ich zakresie strumieniowania instancji.
Ponieważ odległe drzewa za domem i inna blokująca geometria, takie jak wzgórza i góry, będą poza zasięgiem, musieliśmy znaleźć rozwiązanie, aby uniemożliwić graczom widzenie horyzontu i złamanie ich zanurzenia.Aby to rozwiązać, dodaliśmy pobliską geometrię blokowania wzdłuż wszystkich obszarów ścieżki gracza i zaprojektowaliśmy ścieżkę, która będzie wietrzyć, aby skutecznie ukryć brak treści na odległość.Umieściliśmy blokową geometrię w sposób, który zapewnia, że gracz będzie otoczony przepływającymi wizualnymi zasobami w dowolnym momencie na ścieżce.To dobrze pasuje do naszego pierwotnego projektu, aby stworzyć wietrzny podjaz i jest przykładem przemyślanego projektu poziomu, który zawiera estetyczne i techniczne zastosowania.

Graj z perspektywą
Występują pewne przypadki, w których treść, którą gracz mógłby oczekiwać, aby zobaczyć z daleka, jest zbyt daleko od kamery, tak jak nasza burza na niebie.Chcieliśmy, aby gracze zobaczyli to duże zjawisko, ale złamałoby to zanurzenie, jeśli burza nieba nie istniałaby, gdy gracz był zbyt daleko, aby załadować zasób.Byłoby również denerwujące zobaczyć dużą aktywację nagle, gdy gracz zbliżył się do obiektu, który powinien był być dalej widziany.Próbowaliśmy zminimalizować to, grając z perspektywą i upewniając się, że modele na niebie są wystarczająco duże, aby znajdować się w granicach dystansu transmisji gracza.

Innym rozwiązaniem było zwiększenie wysokości pionowej drzew otaczających gracza, gdy nie były wystarczająco blisko burzy.To rozwiązało sytuację, w której gracz jest zbyt daleko, aby załadować zasób, ale nadal oczekuje, że zobaczy go w swojej linii wzroku.Duże drzewa są powszechne w naszym ustawieniu Północno-Zachodniego Pacyfiku i ta korekta pomogła rozwiązać problem z minimalnymi ustępstwami dla naszej estetyki i projektu.
