﻿1
00:00:04,800 --> 00:00:05,880
‫Hallo en welkom.

2
00:00:05,880 --> 00:00:11,430
‫In deze lezing zullen we een oog krijgen om heen en weer te patrouilleren tussen toewijzingen.

3
00:00:11,730 --> 00:00:16,860
‫Dus ik ga naar mijn oorspronkelijke startlocatie, dan ga ik terug naar zijn startlocatie, wacht even

4
00:00:17,130 --> 00:00:18,570
‫en ga dan weer.

5
00:00:18,570 --> 00:00:21,390
‫Dit gaan we bereiken via onze gedragsbomen.

6
00:00:21,630 --> 00:00:23,520
‫Dus laten we erin duiken en kijken hoe het gedaan is.

7
00:00:24,750 --> 00:00:27,690
‫Dus nu hebben we niet veel gebruik gemaakt van onze gedragsboom.

8
00:00:27,700 --> 00:00:28,800
‫Laten we dat oplossen.

9
00:00:28,890 --> 00:00:36,510
‫We gaan een gedrag creëren dat ons in staat stelt om van de plaats waar we beginnen naar de locatie

10
00:00:36,510 --> 00:00:42,330
‫van de speler te gaan en dan terug te gaan naar onze oorspronkelijke startlocatie.

11
00:00:43,020 --> 00:00:46,080
‫De manier waarop we dit gaan doen, is door het volgende te gebruiken.

12
00:00:46,080 --> 00:00:53,130
‫Er is dus een onderscheid in gedragsbomen tussen dingen die taken worden genoemd en dingen die samengestelde knooppunten worden genoemd, of in

13
00:00:53,130 --> 00:00:56,940
‫dit geval is het voorbeeld van het samengestelde knooppunt een reeks.

14
00:00:57,240 --> 00:01:01,050
‫Dus laten we sequenties en taken begrijpen zoals ze klinken.

15
00:01:01,500 --> 00:01:03,060
‫Een taak is iets wat je doet.

16
00:01:03,420 --> 00:01:08,820
‫Een reeks is een reeks van dergelijke taken en het zal alle taken in volgorde uitvoeren.

17
00:01:09,780 --> 00:01:15,660
‫Dus als we met de rechtermuisknop klikken en de taken hier uitvouwen, kunt u een voorbeeld zien van wat als taak kan worden

18
00:01:15,660 --> 00:01:16,080
‫gebruikt.

19
00:01:16,560 --> 00:01:21,600
‫We kunnen bijvoorbeeld een verhuizing hebben waarnaar een verhuizing naar een locatie ook direct wordt verplaatst.

20
00:01:21,600 --> 00:01:23,670
‫Ik ben niet helemaal zeker van het onderscheid dat we gaan gebruiken.

21
00:01:23,670 --> 00:01:24,150
‫Twee verplaatsen.

22
00:01:24,570 --> 00:01:27,630
‫Je kunt het een animatie laten spelen, zoals een scratch-neus-animatie.

23
00:01:27,630 --> 00:01:30,930
‫Je kunt ze een geluid laten spelen als: Hé jij, dat soort dingen.

24
00:01:30,930 --> 00:01:34,500
‫Je kunt het een ander dierlijk gedrag laten geven als je dat wilt.

25
00:01:35,130 --> 00:01:39,480
‫Er is hier ook een gewicht dat erg handig is om wat pauzes in je gedrag toe te voegen.

26
00:01:40,020 --> 00:01:45,870
‫Wat interessant is aan deze taken, is dat ze voor meerdere frames voor meerdere takes kunnen worden uitgevoerd.

27
00:01:46,200 --> 00:01:53,010
‫Dus Move two zal de hele tijd dat je naar een locatie verhuist lopen en het zal pas eindigen als je

28
00:01:53,340 --> 00:01:54,330
‫daar bent.

29
00:01:54,990 --> 00:02:02,370
‫Dus als we ook een zet hebben gedaan en die hadden we, kunnen we die hier in de reeks plakken door gewoon naar beneden te slepen

30
00:02:02,370 --> 00:02:03,450
‫vanaf de reeksknoop.

31
00:02:04,020 --> 00:02:08,610
‫Wat je dan krijgt, is dat je allereerst gaat proberen om naar de bestemming te gaan.

32
00:02:09,120 --> 00:02:15,940
‫En dan kunnen we een tweede taakknooppunt toevoegen dat aangeeft dat het moet wachten en dan kunnen we een derde taak toevoegen.

33
00:02:15,990 --> 00:02:20,760
‫Sassanid merkt op dat ik hier uit de reeks trek en loslaat, waardoor ik vrij snel

34
00:02:20,760 --> 00:02:23,160
‫een taak onder die reeksknoop kan toevoegen.

35
00:02:23,400 --> 00:02:26,520
‫En dan kan ik zeggen dat ik naar een andere locatie wil verhuizen en dan kan ik het vertellen.

36
00:02:26,520 --> 00:02:29,850
‫Ik wil weer een bepaalde tijd wachten.

37
00:02:29,850 --> 00:02:35,640
‫Dit is de basis van dat verhuizen naar de speler en dan teruggaan naar waar we begonnen.

38
00:02:35,940 --> 00:02:39,960
‫En je kunt zien hoe het sequentieknooppunt hier nu ook als routeknooppunt werkt.

39
00:02:40,020 --> 00:02:44,250
‫De route kan nu maar één kindknooppunt hebben, dus probeer daar niet meer dingen onder toe te voegen.

40
00:02:44,550 --> 00:02:49,740
‫Dus we hebben hier één sequentieknooppunt als de route en dat wil eigenlijk zeggen dat ik al deze

41
00:02:49,740 --> 00:02:55,680
‫taken in volgorde ga uitvoeren totdat een van hen faalt en als we dan klaar zijn, kunnen we het proces opnieuw

42
00:02:55,680 --> 00:02:56,100
‫starten.

43
00:02:57,180 --> 00:03:01,980
‫Dus het andere om op te merken is dat als je op een van deze knooppunten klikt, de

44
00:03:01,980 --> 00:03:05,310
‫details hier ons enige invloed geven op hoe dat knooppunt werkt.

45
00:03:05,820 --> 00:03:13,380
‫Voor onze overstap naar momenteel is bijvoorbeeld een schoolbordsleutel nodig in het schoolbordgedeelte van het detailvenster van zelfacteur,

46
00:03:13,380 --> 00:03:17,100
‫maar we kunnen dat veranderen naar de afspeellocatie.

47
00:03:17,520 --> 00:03:22,350
‫Dus dat betekent in feite dat deze verhuizing naar Node nu naar onze spelerslocatie zal worden verplaatst.

48
00:03:22,350 --> 00:03:27,420
‫Dan gaan we standaard 5 seconden wachten, maar we kunnen dat weer veranderen om te zeggen dat

49
00:03:27,420 --> 00:03:34,110
‫we misschien 2 seconden willen wachten en dat je misschien een willekeurige afwijking van 1/2 wilt hebben, zodat je in principe ergens

50
00:03:34,110 --> 00:03:36,210
‫tussen wacht 1/2 en 3 seconden.

51
00:03:36,710 --> 00:03:41,580
‫Dan willen we verhuizen naar een andere locatie, en dat is een locatie die we momenteel niet

52
00:03:41,580 --> 00:03:43,080
‫hebben, namelijk onze startlocatie.

53
00:03:43,530 --> 00:03:44,730
‫Dus je kunt doorgaan en dat toevoegen.

54
00:03:44,730 --> 00:03:51,540
‫Laten we naar ons schoolbord gaan, een nieuwe sleutel toevoegen, een vector toevoegen en dat als onze startlocatie hebben.

55
00:03:52,230 --> 00:03:56,280
‫En dan kunnen we teruggaan naar de gedragsboom en die beweging naar Node zien.

56
00:03:56,280 --> 00:04:01,980
‫Als je naar de details gaat, heeft het paneel nu de startlocatie als een optie en dan zouden we kunnen zeggen dat we

57
00:04:01,980 --> 00:04:06,390
‫5 seconden willen wachten en dan zal het proces opnieuw beginnen omdat we onze volgordenota met succes

58
00:04:06,390 --> 00:04:07,110
‫hebben voltooid.

59
00:04:07,470 --> 00:04:08,340
‫Dit is dus hoe het werkt.

60
00:04:08,340 --> 00:04:10,230
‫U stapt naar beneden in de sequensnota.

61
00:04:10,530 --> 00:04:13,520
‫Het sequentieknooppunt zegt dan, oké, wel, waar zijn mijn mieren?

62
00:04:13,530 --> 00:04:15,330
‫Ik wil bij het begin beginnen.

63
00:04:15,690 --> 00:04:19,680
‫En je kunt zien dat deze nummering hier ons de uitvoeringsopdracht vertelt.

64
00:04:19,680 --> 00:04:25,800
‫We beginnen bij nul, wat het sequentieknooppunt is waar één naar toe wordt verplaatst, dan is twee wachten,

65
00:04:26,010 --> 00:04:30,720
‫drie wordt verplaatst naar vier, enz. Dus we doorlopen elke taak tot voltooiing of mislukking.

66
00:04:30,720 --> 00:04:33,870
‫Als we falen, zal een sequentieknooppunt als geheel falen.

67
00:04:34,110 --> 00:04:39,960
‫Geen van deze zal echter waarschijnlijk mislukken, dus we zullen het hele ding doornemen en dan zal het

68
00:04:39,960 --> 00:04:42,600
‫sequentieknooppunt voltooien en de route opnieuw beginnen.

69
00:04:42,600 --> 00:04:47,640
‫Dus we gaan in een lus door, naar de speellocatie, wachten, terug naar

70
00:04:47,640 --> 00:04:49,650
‫de startlocatie, nog even wachten.

71
00:04:50,100 --> 00:04:53,970
‫Dat is dus de kracht van gedragsbomen en je kunt deze dieper gaan nestelen.

72
00:04:53,970 --> 00:04:58,320
‫Je kunt hier keuzes maken, je kunt binnenhuisarchitecten hebben, alle dingen die we in de komende lezingen gaan

73
00:04:58,320 --> 00:04:58,770
‫zien.

74
00:04:59,010 --> 00:05:06,090
‫Maar dit is de basis van een reeks instructies die je lucht kan uitvoeren en er kan meer dan één frame

75
00:05:06,090 --> 00:05:07,350
‫voor nodig zijn.

76
00:05:07,560 --> 00:05:13,140
‫Wat we nu willen doen, is deze startlocatie instellen als iets zinvols.

77
00:05:13,710 --> 00:05:16,620
‫Nu zou dat redelijk eenvoudig moeten zijn.

78
00:05:16,620 --> 00:05:22,500
‫Het enige dat ik je waarschijnlijk wil vertellen hoe je dat moet doen, is hoe we de -- waar we controle over hebben, in

79
00:05:22,500 --> 00:05:23,220
‫handen krijgen?

80
00:05:23,550 --> 00:05:24,060
‫Dus gewoon.

81
00:05:24,110 --> 00:05:31,640
‫Een herinnering dat als we hier naar de controller dot h gaan, we kunnen kijken naar de get --.

82
00:05:32,180 --> 00:05:39,740
‫En de get - methode voor zowel spelercontrollers als luchtcontrollers stelt ons in staat om de - die wordt bestuurd te

83
00:05:39,740 --> 00:05:41,180
‫pakken te krijgen.

84
00:05:41,180 --> 00:05:49,100
‫Je kunt dit dus gebruiken om de -- gecontroleerd te krijgen en de locatie te krijgen bij het begin van het spel

85
00:05:49,100 --> 00:05:51,410
‫om onze startlocatie in te stellen.

86
00:05:51,800 --> 00:05:53,180
‫Dus hier is de uitdaging voor jou.

87
00:05:53,180 --> 00:05:59,030
‫Stel een startlocatie in, verkrijg de --'s locatie waar we het net over hebben gehad, stel de

88
00:05:59,030 --> 00:06:04,040
‫juiste schoolbordtoets in, gebruik de spelerspositie die we al als sjabloon hebben gebruikt.

89
00:06:04,700 --> 00:06:09,470
‫Zet de gedragsboom op zoals ik in de lezing heb gedaan en test het uit.

90
00:06:09,800 --> 00:06:17,450
‫Kijk of dat gedrag ervoor zorgt dat het gewenste gedrag van de speler of de vijand naar die van de speler gaat --

91
00:06:17,450 --> 00:06:19,850
‫en dan terug naar de oorspronkelijke startlocatie.

92
00:06:19,850 --> 00:06:21,620
‫Pauzeer de video en probeer het.

93
00:06:22,970 --> 00:06:23,230
‫Oké.

94
00:06:23,240 --> 00:06:23,810
‫Welkom terug.

95
00:06:23,840 --> 00:06:25,250
‫Dus hopelijk is dat voor jou gelukt.

96
00:06:25,280 --> 00:06:26,870
‫Laten we het eens proberen.

97
00:06:27,170 --> 00:06:30,920
‫Dus ik ga de regel kopiëren voor onze spelerslocatie.

98
00:06:31,370 --> 00:06:36,050
‫En in plaats van de speellocatie in te stellen om naar ons schoolbord te gaan, kijk eens naar onze startlocatie.

99
00:06:36,410 --> 00:06:39,530
‫We gaan die sleutelwaarde hier kopiëren.

100
00:06:40,190 --> 00:06:45,440
‫En in plaats van de werkelijke locatie van het spel een pion te krijgen, krijgen

101
00:06:45,440 --> 00:06:51,770
‫we een pion en vervolgens een acteurslocatie, die naar de pion gaat die we momenteel controleren en zijn locatie

102
00:06:51,800 --> 00:06:53,300
‫in de wereld krijgt.

103
00:06:53,750 --> 00:06:58,310
‫Dus we kunnen doorgaan en teruggaan naar de editor en dit compileren.

104
00:06:58,370 --> 00:07:03,140
‫En als dat klaar is, druk je op play en kijk je naar onze pion.

105
00:07:03,140 --> 00:07:09,500
‫Hij komt naar ons toe, komt naar ons toe en wacht 3 seconden of 2 seconden of 1/2, gaat dan

106
00:07:09,500 --> 00:07:16,220
‫terug naar zijn oorspronkelijke startlocatie, en dan wacht hij 5 seconden, en dan komt hij terug naar die oorspronkelijke locatie van de

107
00:07:16,220 --> 00:07:16,850
‫speelpion.

108
00:07:16,850 --> 00:07:19,010
‫Dus hij werkt dat niet elk frame bij, en dat is oké.

109
00:07:19,010 --> 00:07:20,750
‫Zo hebben we het op dit moment ontworpen.

110
00:07:21,050 --> 00:07:23,320
‫Maar je ziet het gedrag aan de gang.

111
00:07:23,330 --> 00:07:25,280
‫Hij patrouilleert heen en weer.

112
00:07:25,640 --> 00:07:29,210
‫Dus laten we eens kijken naar dit alles in actie.

113
00:07:29,220 --> 00:07:30,470
‫Bekijk onze gedragsboom.

114
00:07:30,950 --> 00:07:34,910
‫Als we naar onze gedragsboom gaan en de betreffende boom selecteren, kun je zien waar hij is.

115
00:07:34,910 --> 00:07:39,410
‫Hij gaat naar hij wacht zoveel seconden dat hij naar zijn startlocatie gaat.

116
00:07:39,410 --> 00:07:40,430
‫Hij wacht weer.

117
00:07:40,790 --> 00:07:45,860
‫Dus we kunnen dit loskoppelen en beide dingen tegelijkertijd zien gebeuren.

118
00:07:46,100 --> 00:07:48,980
‫In ons spel kun je zien dat hij naar die locatie gaat.

119
00:07:48,980 --> 00:07:49,670
‫Hij wacht.

120
00:07:49,670 --> 00:07:52,850
‫Nu is hij terug om het naar zijn startlocatie te verplaatsen.

121
00:07:52,850 --> 00:07:58,940
‫Dit is dus erg handig voor ons om te kunnen debuggen, vooral wanneer dit gedrag een beetje

122
00:07:58,940 --> 00:07:59,660
‫ingewikkelder wordt.

123
00:07:59,660 --> 00:08:06,260
‫En het geeft je ook een idee van hoe onwerkelijk de gedragsboom berekent en hoe

124
00:08:06,260 --> 00:08:09,260
‫die uitvoeringsstroom werkt binnen onze gedragsboom.

125
00:08:09,740 --> 00:08:10,280
‫Goed spul.

126
00:08:10,280 --> 00:08:15,170
‫In de volgende show gaan we dit gedrag nog ingewikkelder maken en een bepaald element van beslissing toevoegen

127
00:08:15,170 --> 00:08:21,380
‫aan de vraag of we ervoor kiezen om een speler te volgen of dat we ervoor kiezen om te blijven waar we zijn.

128
00:08:21,740 --> 00:08:23,110
‫Ik zie je in die lezing.

