﻿1
00:00:04,800 --> 00:00:05,880
‫Cześć i witaj.

2
00:00:05,880 --> 00:00:11,430
‫W tym wykładzie przyjrzymy się patrolowaniu tam iz powrotem między alokacjami.

3
00:00:11,730 --> 00:00:16,860
‫Więc pójdę do mojej pierwotnej lokalizacji początkowej, potem wrócę do jego początkowej lokalizacji, poczekam trochę,

4
00:00:17,130 --> 00:00:18,570
‫a potem pójdę ponownie.

5
00:00:18,570 --> 00:00:21,390
‫Osiągniemy to poprzez nasze drzewa zachowań.

6
00:00:21,630 --> 00:00:23,520
‫Zanurzmy się więc i zobaczmy, jak to się robi.

7
00:00:24,750 --> 00:00:27,690
‫Więc teraz nie wykorzystaliśmy zbyt wiele naszego drzewa zachowań.

8
00:00:27,700 --> 00:00:28,800
‫Naprawmy to.

9
00:00:28,890 --> 00:00:36,510
‫Zamierzamy stworzyć zachowanie, które pozwoli nam przejść z miejsca, w którym zaczynamy, do lokalizacji

10
00:00:36,510 --> 00:00:42,330
‫gracza, a następnie wrócić do naszej pierwotnej lokalizacji początkowej.

11
00:00:43,020 --> 00:00:46,080
‫Teraz, sposób, w jaki zamierzamy to zrobić, opiera się na następującym.

12
00:00:46,080 --> 00:00:53,130
‫Tak więc w drzewach zachowania istnieje rozróżnienie między rzeczami zwanymi zadaniami i rzeczami zwanymi węzłami złożonymi, lub

13
00:00:53,130 --> 00:00:56,940
‫w tym przypadku przykładem węzła złożonego jest sekwencja.

14
00:00:57,240 --> 00:01:01,050
‫Zrozummy więc sekwencje i zadania, ponieważ brzmią.

15
00:01:01,500 --> 00:01:03,060
‫Zadanie to coś, co robisz.

16
00:01:03,420 --> 00:01:08,820
‫Sekwencja to sekwencja takich zadań, która uruchomi wszystkie zadania w kolejności.

17
00:01:09,780 --> 00:01:15,660
‫Jeśli więc klikniemy prawym przyciskiem myszy i rozwiniemy tutaj zadania, zobaczysz przykład tego, co można wykorzystać jako

18
00:01:15,660 --> 00:01:16,080
‫zadanie.

19
00:01:16,560 --> 00:01:21,600
‫Na przykład możemy mieć ruch, do którego ruchy do lokalizacji są również przenoszone bezpośrednio.

20
00:01:21,600 --> 00:01:23,670
‫Nie jestem do końca pewien, jakiego rozróżnienia będziemy używać.

21
00:01:23,670 --> 00:01:24,150
‫Przesuń dwa.

22
00:01:24,570 --> 00:01:27,630
‫Możesz sprawić, by odtwarzał animację, taką jak animacja zarysowania nosa.

23
00:01:27,630 --> 00:01:30,930
‫Możesz zmusić ich do grania takich dźwięków jak „Hej ty, tego typu rzeczy”.

24
00:01:30,930 --> 00:01:34,500
‫Możesz go zmusić do prowadzenia innego zachowania zwierząt, jeśli chcesz.

25
00:01:35,130 --> 00:01:39,480
‫Jest tu również waga, która jest bardzo przydatna, aby dodać pauzy do twojego zachowania.

26
00:01:40,020 --> 00:01:45,870
‫Ciekawe w tych zadaniach jest to, że mogą działać dla wielu klatek dla wielu ujęć.

27
00:01:46,200 --> 00:01:53,010
‫Tak więc ruch drugi będzie działał przez cały czas, w którym przenosisz się do danej lokalizacji, i zakończy się dopiero, gdy

28
00:01:53,340 --> 00:01:54,330
‫tam dotrzesz.

29
00:01:54,990 --> 00:02:02,370
‫Więc jeśli zrobiliśmy też ruch i to zrobiliśmy, możemy umieścić go w sekwencji tutaj, po prostu przeciągając w dół z

30
00:02:02,370 --> 00:02:03,450
‫węzła sekwencji.

31
00:02:04,020 --> 00:02:08,610
‫Wtedy to, co dostaniesz, to przede wszystkim próba przejścia do celu.

32
00:02:09,120 --> 00:02:15,940
‫A potem moglibyśmy dodać drugi węzeł zadania, który każe mu czekać, a następnie możemy dodać trzecie zadanie.

33
00:02:15,990 --> 00:02:20,760
‫Sassanid zauważa, że wyciągam tutaj sekwencję i zwalniam, co pozwala mi dość szybko

34
00:02:20,760 --> 00:02:23,160
‫dodać zadanie pod tym węzłem sekwencji.

35
00:02:23,400 --> 00:02:26,520
‫I wtedy mogę powiedzieć, że chcę się przenieść w inne miejsce i wtedy mogę to powiedzieć.

36
00:02:26,520 --> 00:02:29,850
‫Chcę znowu poczekać przez pewien czas.

37
00:02:29,850 --> 00:02:35,640
‫To jest podstawa przejścia do gracza, a następnie powrót do miejsca, od którego zaczęliśmy.

38
00:02:35,940 --> 00:02:39,960
‫I możesz zobaczyć, jak węzeł sekwencji działa tutaj również jako węzeł trasy.

39
00:02:40,020 --> 00:02:44,250
‫Trasa może teraz mieć tylko jeden węzeł podrzędny, więc nie próbuj dodawać kolejnych elementów pod nią.

40
00:02:44,550 --> 00:02:49,740
‫Więc mamy jeden węzeł sekwencji jako trasę tutaj i zasadniczo oznacza to, że zamierzam uruchomić wszystkie

41
00:02:49,740 --> 00:02:55,680
‫te zadania w kolejności, aż jedno z nich się nie powiedzie, a kiedy skończymy, możemy rozpocząć proces od

42
00:02:55,680 --> 00:02:56,100
‫nowa.

43
00:02:57,180 --> 00:03:01,980
‫Inną rzeczą, na którą należy zwrócić uwagę, jest to, że jeśli klikniesz jeden z tych węzłów,

44
00:03:01,980 --> 00:03:05,310
‫szczegóły tutaj dają nam pewien wpływ na działanie tego węzła.

45
00:03:05,820 --> 00:03:13,380
‫Na przykład, nasze przejście do aktualnie pobiera klawisz tablicy w sekcji tablicy w okienku szczegółów własnego aktora,

46
00:03:13,380 --> 00:03:17,100
‫ale możemy to zmienić na lokalizację gry.

47
00:03:17,520 --> 00:03:22,350
‫Oznacza to, że ten ruch do węzła zostanie teraz przeniesiony do lokalizacji naszego gracza.

48
00:03:22,350 --> 00:03:27,420
‫Następnie domyślnie będziemy czekać 5 sekund, ale możemy to zmienić ponownie, aby powiedzieć, że

49
00:03:27,420 --> 00:03:34,110
‫możemy chcieć poczekać 2 sekundy i możesz chcieć mieć losowe odchylenie o 1/2, więc w zasadzie będziesz czekać gdzieś

50
00:03:34,110 --> 00:03:36,210
‫pomiędzy 1/2 i 3 sekundy.

51
00:03:36,710 --> 00:03:41,580
‫Następnie chcemy przenieść się do innej lokalizacji, a jest to lokalizacja, której obecnie nie mamy,

52
00:03:41,580 --> 00:03:43,080
‫czyli nasza lokalizacja początkowa.

53
00:03:43,530 --> 00:03:44,730
‫Możesz więc śmiało to dodać.

54
00:03:44,730 --> 00:03:51,540
‫Przejdźmy do naszej tablicy, dodajmy nowy klucz, dodajmy wektor i ustawmy to jako lokalizację początkową.

55
00:03:52,230 --> 00:03:56,280
‫A potem możemy wrócić do drzewa zachowań i zobaczyć, jak przenosi się do węzła.

56
00:03:56,280 --> 00:04:01,980
‫Jeśli przejdziesz do szczegółów, panel ma teraz opcję lokalizacji początkowej, a następnie możemy powiedzieć, że chcemy poczekać 5

57
00:04:01,980 --> 00:04:06,390
‫sekund, a następnie proces rozpocznie się od nowa, ponieważ pomyślnie zakończymy naszą notatkę

58
00:04:06,390 --> 00:04:07,110
‫o sekwencji.

59
00:04:07,470 --> 00:04:08,340
‫Więc tak to działa.

60
00:04:08,340 --> 00:04:10,230
‫Wchodzisz w nutę sekwencji.

61
00:04:10,530 --> 00:04:13,520
‫Węzeł sekwencji mówi wtedy, ok, dobrze, gdzie są moje mrówki?

62
00:04:13,530 --> 00:04:15,330
‫Chcę zacząć od początku.

63
00:04:15,690 --> 00:04:19,680
‫I widzicie, że ta numeracja tutaj mówi nam o kolejności wykonania.

64
00:04:19,680 --> 00:04:25,800
‫Zaczynamy od zera, który jest węzłem sekwencji, jeden to ruch do, następnie dwa to

65
00:04:26,010 --> 00:04:30,720
‫czekanie, trzy to cztery, itd. Przechodzimy więc przez wykonanie każdego zadania, aż do zakończenia lub niepowodzenia.

66
00:04:30,720 --> 00:04:33,870
‫Jeśli nam się nie uda, to węzeł sekwencji zawiedzie jako całość.

67
00:04:34,110 --> 00:04:39,960
‫Żadna z tych opcji nie zawiedzie jednak, więc przejdziemy przez całość, a następnie węzeł sekwencji zakończy

68
00:04:39,960 --> 00:04:42,600
‫się, a trasa rozpocznie się od nowa.

69
00:04:42,600 --> 00:04:47,640
‫Więc przejdziemy przez pętlę, idąc do miejsca gry, czekając, wracając do miejsca

70
00:04:47,640 --> 00:04:49,650
‫początkowego, czekając trochę dłużej.

71
00:04:50,100 --> 00:04:53,970
‫Więc to jest siła drzew zachowania i możesz zacząć je zagnieżdżać głębiej.

72
00:04:53,970 --> 00:04:58,320
‫Możesz mieć tutaj wybór, możesz mieć dekoratorów, wszystko, co zobaczymy w nadchodzących

73
00:04:58,320 --> 00:04:58,770
‫wykładach.

74
00:04:59,010 --> 00:05:06,090
‫Ale to jest podstawa serii instrukcji, które możesz uruchomić w powietrzu i które mogą zająć więcej niż

75
00:05:06,090 --> 00:05:07,350
‫jedną klatkę.

76
00:05:07,560 --> 00:05:13,140
‫Teraz chcemy ustawić tę lokalizację początkową jako coś znaczącego.

77
00:05:13,710 --> 00:05:16,620
‫Teraz powinno to być dość proste.

78
00:05:16,620 --> 00:05:22,500
‫Jedyne, co prawdopodobnie chcę ci powiedzieć, jak zrobić, to jak zdobyć -- nad którym mamy

79
00:05:22,500 --> 00:05:23,220
‫kontrolę?

80
00:05:23,550 --> 00:05:24,060
‫Więc tylko.

81
00:05:24,110 --> 00:05:31,640
‫Przypomnienie, że jeśli przejdziemy do kontrolera, kropka tutaj, to możemy poszukać...

82
00:05:32,180 --> 00:05:39,740
‫A metoda get — zarówno dla kontrolerów gracza, jak i kontrolerów powietrza, pozwala nam na opanowanie tego,

83
00:05:39,740 --> 00:05:41,180
‫co jest kontrolowane.

84
00:05:41,180 --> 00:05:49,100
‫Możesz więc użyć tego, aby uzyskać kontrolę nad -- i uzyskać jego lokalizację na początku gry, aby

85
00:05:49,100 --> 00:05:51,410
‫ustawić naszą lokalizację początkową.

86
00:05:51,800 --> 00:05:53,180
‫Oto wyzwanie dla Ciebie.

87
00:05:53,180 --> 00:05:59,030
‫Ustaw lokalizację początkową, zdobądź lokalizację --, o której właśnie rozmawialiśmy, ustaw właściwy

88
00:05:59,030 --> 00:06:04,040
‫klawisz tablicy, użyj pozycji gracza, której już użyliśmy jako szablonu.

89
00:06:04,700 --> 00:06:09,470
‫Skonfiguruj drzewo zachowań tak, jak na wykładzie i przetestuj je.

90
00:06:09,800 --> 00:06:17,450
‫Sprawdź, czy to zachowanie powoduje, że gracz lub wróg porusza się w kierunku gracza — a następnie wraca

91
00:06:17,450 --> 00:06:19,850
‫do swojej pierwotnej lokalizacji początkowej.

92
00:06:19,850 --> 00:06:21,620
‫Wstrzymaj wideo i spróbuj.

93
00:06:22,970 --> 00:06:23,230
‫Dobra.

94
00:06:23,240 --> 00:06:23,810
‫Witamy spowrotem.

95
00:06:23,840 --> 00:06:25,250
‫Miejmy nadzieję, że ci się udało.

96
00:06:25,280 --> 00:06:26,870
‫Spróbujmy.

97
00:06:27,170 --> 00:06:30,920
‫Więc zamierzam skopiować linię do lokalizacji naszego gracza.

98
00:06:31,370 --> 00:06:36,050
‫Zamiast ustawiać lokalizację gry, aby przejść do naszej tablicy, spójrz na naszą lokalizację początkową.

99
00:06:36,410 --> 00:06:39,530
‫Skopiujemy tutaj tę wartość klucza.

100
00:06:40,190 --> 00:06:45,440
‫A potem, zamiast ustalić aktualną lokalizację pionka, dostaniemy pionka, a następnie

101
00:06:45,440 --> 00:06:51,770
‫lokalizację aktora, która dotrze do pionka, którego aktualnie kontrolujemy i określi jego lokalizację

102
00:06:51,800 --> 00:06:53,300
‫na świecie.

103
00:06:53,750 --> 00:06:58,310
‫Możemy więc iść dalej i wrócić do edytora i skompilować to.

104
00:06:58,370 --> 00:07:03,140
‫A kiedy już to zrobisz, naciśnij play i spójrz na naszego pionka.

105
00:07:03,140 --> 00:07:09,500
‫Podchodzi, zbliża się do nas i czeka 3 sekundy lub 2 sekundy lub 1/2, potem

106
00:07:09,500 --> 00:07:16,220
‫wraca do swojej pierwotnej lokalizacji początkowej, a następnie czeka 5 sekund, a następnie wraca do pierwotnej lokalizacji

107
00:07:16,220 --> 00:07:16,850
‫pionka.

108
00:07:16,850 --> 00:07:19,010
‫Więc nie aktualizuje tego w każdej klatce i to jest w porządku.

109
00:07:19,010 --> 00:07:20,750
‫Tak to zaprojektowaliśmy w tej chwili.

110
00:07:21,050 --> 00:07:23,320
‫Ale możesz zobaczyć, jak to się dzieje.

111
00:07:23,330 --> 00:07:25,280
‫Patroluje tam iz powrotem.

112
00:07:25,640 --> 00:07:29,210
‫Przyjrzyjmy się więc temu wszystkiemu w akcji.

113
00:07:29,220 --> 00:07:30,470
‫Spójrz na nasze drzewo zachowań.

114
00:07:30,950 --> 00:07:34,910
‫Jeśli przejdziemy do naszego drzewa zachowań i wybierzemy danego, możesz zobaczyć, gdzie się znajduje.

115
00:07:34,910 --> 00:07:39,410
‫Przenosi się do, czeka tak wiele sekund, że przenosi się do swojej lokalizacji początkowej.

116
00:07:39,410 --> 00:07:40,430
‫Znowu czeka.

117
00:07:40,790 --> 00:07:45,860
‫Możemy więc oddokować to i zobaczyć, jak obie te rzeczy dzieją się w tym samym czasie.

118
00:07:46,100 --> 00:07:48,980
‫W naszej grze możesz zobaczyć, że przenosi się do tego miejsca.

119
00:07:48,980 --> 00:07:49,670
‫On czeka.

120
00:07:49,670 --> 00:07:52,850
‫Teraz wraca do przenoszenia go do swojej początkowej lokalizacji.

121
00:07:52,850 --> 00:07:58,940
‫Jest to więc dla nas bardzo przydatne, aby móc debugować, zwłaszcza gdy te zachowania stają się nieco

122
00:07:58,940 --> 00:07:59,660
‫bardziej skomplikowane.

123
00:07:59,660 --> 00:08:06,260
‫Daje również poczucie, jak nierealne jest obliczanie drzewa zachowań i jak ten przepływ wykonywania

124
00:08:06,260 --> 00:08:09,260
‫działa w naszym drzewie zachowań.

125
00:08:09,740 --> 00:08:10,280
‫Świetna sprawa.

126
00:08:10,280 --> 00:08:15,170
‫W następnym programie uczynimy te zachowania jeszcze bardziej skomplikowanymi i dodamy

127
00:08:15,170 --> 00:08:21,380
‫jakiś element decyzji, czy zdecydujemy się podążać za graczem, czy też pozostaniemy tam, gdzie jesteśmy.

128
00:08:21,740 --> 00:08:23,110
‫Do zobaczenia na tym wykładzie.

