‫Cześć i witaj.
‫Na tym wykładzie nauczymy się ustawiać funkcje wywoływania lokalizacji w C++, tak abyśmy mogli
‫przenieść kostkę w nowe miejsce, gdy zaczniemy grać.
‫Jak widać tutaj, ta kostka pojawiła się nagle, gdy zaczęliśmy grać.
‫Zanurzmy się i zobaczmy, jak działają funkcje w C++.
‫Przyjrzyjmy się więc, jak funkcje przekładają się z Blueprint na C++, szczególnie używając funkcji na tym
‫etapie.
‫W dalszej części tej sekcji przyjrzymy się, jak tworzyć własne.
‫Aby odświeżyć pamięć, tak wygląda funkcja w Blueprint.
‫Widać, że mamy węzeł, mamy piny wejściowe po lewej stronie, piny wyjściowe po prawej
‫i możemy podłączyć takie rzeczy jak zmienna do pinu wejściowego, aby zrobić to samo w C++.
‫Wygląda na to, że ponownie używasz nazw funkcji, w których nie ma spacji.
‫Więc zamiast mieć ustawiony węzeł lokalizacji aktora jako oddzielne słowa, mamy to wszystko uruchomione razem za
‫pomocą przypadku wielbłąda, a następnie mamy nasze nawiasy.
‫A w nawiasach mamy listę danych wejściowych, a tych danych wejściowych może być więcej niż jeden.
‫Możesz je oddzielić przecinkami, ale w pierwszym przypadku będziemy mieć tylko jeden.
‫A te dane wejściowe są w rzeczywistości nazywane argumentami.
‫Nie pytaj, dlaczego nie chcę się o to kłócić.
‫Więc będziemy musieli umieścić te zmienne, ale nie musisz przekazywać zmiennych.
‫Zmienne to tylko jeden ze sposobów na zrobienie tego.
‫Możesz również przekazywać wartości.
‫Więc gdybyśmy mieli taką sytuację, w której chcielibyśmy ustawić lokalizację na
‫1 do 3, możemy to zrobić również w C++, używając konstruktora Vector bezpośrednio w nawiasach dla funkcji.
‫Oznacza to, że ustawiamy ją na konkretną wartość, a nie wartość zawartą w zmiennej.
‫Więc spróbujmy.
‫Przechodzimy do kodu programu Visual Studio i rzucimy okiem na grę Rozpocznij zaraz po
‫zaktualizowaniu My Vector.
‫Dodamy kilka nowych linijek i zacznę wpisywać set actor location, upewnij się,
‫że wpisałeś to poprawnie, ponieważ nazwy muszą się zgadzać dokładnie w C++,
‫potem otwierasz nawiasy i zaczynamy skonstruuj nową wartość wektora F.
‫Więc znowu wpisze wektor F open nawiasy.
‫I tutaj faktycznie przekazujemy argumenty do konstruktora dla F Vector.
‫To bardzo przypomina wywołanie funkcji, a następnie przekazanie wartości tej funkcji do innej
‫funkcji.
‫Ale o takich rzeczach porozmawiamy później.
‫Możemy tutaj wpisać jeden, przecinek dwa, przecinek trzy, co oznacza, że wektor f jeden, dwa,
‫trzy zostanie przekazany do ustawionej lokalizacji aktora, a następnie możemy wstawić średnik na
‫końcu ukończona linia.
‫Więc przejdźmy do nierealności.
‫Przejdźmy dalej i skompilujmy kod.
‫Abyśmy mogli zobaczyć efekt tego, musimy udać się do ruchomej platformy, aktora i jednostek.
‫Właściwie nie są one komponentami tego aktora, co oznacza, że nie może on mieć pozycji, ponieważ tylko
‫komponenty mogą dać mu pozycję.
‫Więc możemy iść dalej i dodać coś w rodzaju sześcianu do tego aktora z ruchomej platformy, przejść
‫do reklamy w okienku szczegółów i przejść do sześcianu, a to da nam sześcian i możemy iść dalej, nacisnąć przycisk odtwarzania i zobaczyć, czy
‫w stanie ustawić lokalizację tego aktora.
‫Możemy kliknąć na ruchomą platformę, a następnie wysunąć za pomocą przycisku wysuwania na pasku narzędzi, a następnie dwukrotnie
‫kliknąć na ruchomą platformę.
‫I widać, że prowadzi nas do lokalizacji platformy ruchomej.
‫Mając to wybrane w zarysie lub w widoku sceny, możemy spojrzeć na panel szczegółów i możemy to
‫zobaczyć.
‫Rzeczywiście, transformata mówi, że jej lokalizacja to jeden, dwa, trzy.
‫Ustawiliśmy to poprawnie w kodzie C++.
‫Teraz, w następnej części, będzie po prostu zagmatwane, jeśli ustawimy wartość Y mojego wektora na podstawie
‫mojej zmiennej x.
‫Więc usuńmy tę linię i zacznijmy grać dla mnie.
‫To jest linia 19 i zrobię to kilka dodatkowych pustych linii, tak że mamy tylko jedną pomiędzy super
‫początkiem gry i ustawieniem lokalizacji aktora.
‫Następnie chciałbym zachęcić cię do użycia zmiennej zamiast konstruowania wektora w miejscu.
‫Więc zastąpmy konstruktor wektora F, którego używamy.
‫Zaktualizuj mój wektor, aby miał inną lokalizację.
‫Czy możesz go podnieść tak, aby był bliżej gracza?
‫Kiedy zaczynamy grać, kostka jest tak naprawdę umieszczona w miejscu, gdzie gracz może ją zobaczyć.
‫Wstrzymaj wideo i spróbuj.
‫Witam ponownie.
‫Więc sposób, w jaki to robimy, polega na usunięciu tego czynnika, nawiasów i argumentów, i tak się
‫nazywają, pamiętasz?
‫A następnie jako argument określający położenie aktora wpiszemy mój wektor.
‫Więc użyje wartości wewnątrz zmiennej my vector, aby ustawić lokalizację aktora na początku gry, kiedy
‫zaczynamy grać.
‫Przejdźmy więc na razie do jednego prawdziwego stop play.
‫Rzućmy okiem na lokalizację naszej postaci z trzeciej osoby i widzimy, że jest to lokalizacja
‫tutaj.
‫Co właściwie mogę zrobić, możesz skopiować każdy z nich ręcznie.
‫Możesz właściwie kliknąć prawym przyciskiem myszy na lokalizację, kliknąć kopiuj, przejść do ruchomej platformy.
‫A tam, gdzie mamy mój wektor, możemy kliknąć prawym przyciskiem myszy i nacisnąć wklej, a on wklei cały wektor
‫właśnie tam.
‫Więc teraz wiemy, że przenoszę kostki platformy tutaj na 000, ale jeśli wcisnę play, cóż, właściwie niewiele
‫się dzieje, ponieważ zapomniałem skompilować.
‫To jest rzecz, o której zawsze należy pamiętać, że musimy skompilować wszelkie zmiany w C++.
‫Musimy więc nacisnąć ten przycisk kompilacji i dopiero po zakończeniu zobaczymy zmiany, które wprowadziliśmy.
‫Więc chodźmy dalej i włączmy odtwarzanie.
‫I proszę bardzo.
‫Mamy kostkę stojącą tuż przed naszym graczem.
‫Więc pomyślnie przenieśliśmy go na początek gry za pomocą kodu C++.
‫Świetna sprawa.
‫Do zobaczenia na następnym wykładzie.