‫Cześć i witaj.
‫Na tym wykładzie nauczymy się czegoś, co nazywa się obiektem świata, bardzo ważnym obiektem
‫w Unreal.
‫Zobaczymy, jak możemy z tego obiektu dostać się do aktualnego czasu w naszej grze i wydrukować
‫go na konsoli pod koniec tego wykładu.
‫Zanurzmy się więc i zobaczmy, jak to działa.
‫Tak więc, aby móc tworzyć ślady linii lub przemiatania, musimy zrozumieć inną koncepcję, inny
‫rodzaj obiektu, który istnieje w nierzeczywistej krainie, a tym obiektem jest świat.
‫Więc dużo zajmowaliśmy się poziomami.
‫Więc jeśli przejdziemy do naszego losowania zawartości, zajmowaliśmy się również mapami.
‫Więc mapa i poziom, o którym mówiliśmy, są synonimami.
‫Jednak świat jest taki na początku.
‫Na początku był nowy świat, a nowy świat jest typem, jest klasą dla środowiska, które
‫widzimy, gdy gramy w grę.
‫Ale to niekoniecznie tylko jeden poziom.
‫Możesz załadować poziom, który w C++ nazywa się poziomem ty, który jest po prostu zbiorem aktorów, których powinniśmy
‫wprowadzić do nowego świata.
‫Możesz więc załadować poziom do swojego nowego świata, ale niekoniecznie tylko jeden poziom.
‫Możesz załadować wiele poziomów do jednego świata.
‫A to dlatego, że często mamy te poziomy strumieniowania, mamy bardzo duże poziomy, w których nie
‫chcemy ładować wszystkiego, każdy aktor do poziomu za jednym razem ze względu na wydajność.
‫Więc podzieliliśmy to na wiele poziomów, co pozwala nam wprowadzić tylko wymagane części
‫sceny.
‫Więc jeśli spojrzymy na stronę dokumentacji na New World, myślę, że opisuje ona
‫raczej zwięźle, że świat jest obiektem najwyższego poziomu reprezentującym mapę lub piaskownicę, w której aktorzy i komponenty będą
‫istnieć i być renderowane.
‫A jeśli spojrzysz trochę dalej, to mówi, że świat może być pojedynczym trwałym
‫poziomem, co oznacza poziom, który będzie tam stale, lub z potencjalnie opcjonalną listą poziomów przesyłania strumieniowego i zasadniczo dziwnych
‫poziomów, które mogą być ładowane za każdym razem, gdy chcieć.
‫Dlaczego to wszystko jest interesujące?
‫To ciekawe, ponieważ pozwala nam na śledzenie linii.
‫Jeśli przeszukamy dokumentację tutaj pod kątem śledzenia linii, zobaczysz, że jest tu mnóstwo
‫funkcji, szczególnie ta, która jest dla nas najbardziej interesująca, to śledzenie linii pojedynczo po kanale lub
‫śledzenie linii wiele po kanale, które zasadniczo pozwalają nam odpowiednio aby przejąć pierwszy trafiony obiekt lub
‫wszystkie obiekty trafione przez linię.
‫I widać, że listy argumentów, zwłaszcza jeśli patrzę na pojedynczy ślad
‫linii, lista argumentów ma początek ma koniec, ma kanał śledzenia, dla którego należy wykonać śledzenie.
‫I faktycznie daje nam wynik na liście parametrów, co jest trochę dziwne i
‫wkrótce to omówimy.
‫Ale tak czy inaczej, to jest ślad linii.
‫Mamy również możliwość zamiatania.
‫Więc jeśli szukamy przemiatania, widać, że istnieje przemiatanie wielokanałowe.
‫Istnieje również przemiatanie pojedynczego kanału.
‫I tutaj, oprócz początku i końca, masz również typ kształtu kolizji f kolizji, przez który możesz
‫przejść.
‫Zasadniczo, jeśli klikniemy tę kolizję F, kształt, który możesz śledzić w dokumentacji w
‫czasie rzeczywistym, przeczytaj więcej na ten temat i zobaczysz, że kształt kolizji zasadniczo obsługuje bycie
‫kulą, pudełkiem kapsuł lub linią.
‫Tak więc użyjemy sfery w naszym przypadku i zobaczymy, jak to skonstruować później.
‫Ale możesz zobaczyć, dlaczego chcemy zdobyć ten świat, dlaczego jest to dla nas ważne.
‫Ale pytanie brzmi, jak zdobędziemy nowy świat?
‫A kiedy już go zdobędziemy, jak go wykorzystamy?
‫Cóż, chodźmy i przyjrzyjmy się kodowi Visual Studio.
‫Na każdym komponencie i na każdym aktorze znajduje się funkcja o nazwie Get World.
‫A jeśli wpiszesz get world, a następnie umieścisz w nawiasach, to zwróci obiekt typu you world, w
‫rzeczywistości wskaźnik do obiektu typu U world.
‫Więc zachowajmy to.
‫Mamy nowy wskaźnik na świat, który będziemy nazywać po prostu światem, prawda?
‫A to równa się zdobywaniu światów.
‫A na końcu możemy umieścić średnik.
‫Teraz, aby rzeczywiście zdobyć cokolwiek z tego świata, użyjemy operatora strzałki.
‫Więc zrobimy World Arrow, a wtedy będziemy mogli przyjrzeć się niektórym szczegółom tego
‫świata.
‫Ale zanim to zrobimy, musimy dołączyć jego plik nagłówkowy, ponieważ w przeciwnym razie ten plik C++, kiedy
‫kompilator do niego dotrze, nie będzie wiedział, co jest zawarte w a, które wpiszesz.
‫Nie zawiera żadnych informacji o waszym świecie.
‫Aby to naprawić, musimy zajrzeć do naszej dokumentacji, ponieważ przewiniesz do góry i poszukamy tego miejsca,
‫w którym jest.
‫Mówi include i to daje nam to, czego potrzebujemy, możesz powiedzieć, że zawiera silnik cytatów.
‫Cóż, to jest to, czego potrzebujemy, więc napiszemy to po tym, jak złapię mu kropkę.
‫A teraz, jeśli kontrolujemy przestrzeń, powinniśmy otrzymać listę rzeczy, które możemy zrobić z tym konkretnym światem.
‫A mamy ich wielu.
‫Oczywiście możemy znaleźć nasz przebieg linii, możemy znaleźć nasze przeciągnięcie według wielu lub pojedynczych witryn, wezwać Cię
‫do wydrukowania upływu czasu.
‫Jest to właściwość dostępna w nowym obiekcie świata.
‫Znajdziesz właściwość time seconds przeczytaną o tym w dokumentacji, która jest połączona
‫z tym wykładem i zapiszesz ją w zmiennej odpowiedniego typu.
‫Ponownie, zapoznanie się z dokumentacją powie ci, jaki powinien być typ, a następnie ponownie zarejestruj go
‫w konsoli, używając odpowiedniego formatu.
‫Określ wstrzymanie wideo i spróbuj.
‫Dobra.
‫Witamy spowrotem.
‫Więc użyjemy tego, a jeśli poszukam czasu w dokumentacji, zobaczysz, że jest
‫to liczba zmiennoprzecinkowa o nazwie czas w sekundach.
‫To jest ten, którego chcę.
‫W tym przypadku jest to czas gry.
‫Więc jeśli spowolnisz czas przyspieszania, to również zostanie spowolnione lub przyspieszone.
‫Ale są takie, na które nie ma to wpływu.
‫Masz tam różne.
‫Czas, sekundy, sekundy czasu przerwy.
‫Są też sekundy czasu rzeczywistego, które nie są w żaden sposób wstrzymywane ani zmieniane.
‫Więc interesuje mnie czas w sekundach.
‫Tak naprawdę nie ma znaczenia, którego użyjemy, ponieważ i tak wszystkie są pływakami.
‫Więc mam zamiar stworzyć pływak o nazwie Czas i przechowywać Czas Strzałki Światowej.
‫Krótko mówiąc, nie musimy umieszczać świata w jego własnej zmiennej.
‫Jest na tyle krótki, że można to nazwać światem zdobywania.
‫Więc to jest to, co zwykle robimy.
‫Dostanie świat, a potem czas strzałek w sekundach.
‫Więc teraz możemy zrobić dziennik, który powiemy, że jest bieżący czas, a potem zrobimy procent F, ponieważ wypisujemy tutaj liczbę
‫zmiennoprzecinkową, a następnie możemy podać jej czas jako dane wejściowe do
‫dziennika.
‫Teraz przejdźmy kontrolką alt f 11 do kodu na żywo, a następnie otworzymy i zadokujemy dziennik wyjściowy.
‫I włącz odtwarzanie.
‫I tam widać, że mamy aktualny czas, który w grze takiej jak ta odliczany jest
‫w sekundach.
‫A jeśli faktycznie naciśniemy przycisk pauzy, zauważysz, że czas przestaje płynąć, a jeśli naciśniemy odtwarzanie, po prostu wznawia
‫się od miejsca, w którym byliśmy.
‫On chce.
‫Możesz poeksperymentować z wykorzystaniem sekund czasu rzeczywistego i zobaczyć, czy ten efekt się pojawi.
‫Ale nie idę tutaj.
‫Pokazaliśmy, że możemy uzyskać dostęp do obiektów tego nowego świata, obiektów tego świata, w których obecnie się
‫znajdujemy, i że możemy uzyskać z nich właściwości za pomocą naszego operatora strzałki.
‫Poklep się po plecach i do zobaczenia na następnym wykładzie.