﻿1
00:00:04,700 --> 00:00:05,510
‫Hallo en welkom.

2
00:00:05,510 --> 00:00:10,640
‫In deze Late Show gaan we leren hoe we onze animaties kunnen verbinden met

3
00:00:10,640 --> 00:00:17,240
‫onze gameplay en we gaan de snelheid van ons personage aansluiten op de mengruimte zodat we dit effect kunnen krijgen.

4
00:00:17,240 --> 00:00:18,890
‫Laten we erin duiken en kijken hoe het gedaan is.

5
00:00:20,690 --> 00:00:21,080
‫Oké.

6
00:00:21,080 --> 00:00:26,210
‫We hebben dus een lege ruimte om in te integreren in deze a.

7
00:00:26,240 --> 00:00:27,780
‫BP schiet een personage neer.

8
00:00:28,460 --> 00:00:32,690
‫Het eerste wat ik ga doen, is dat ik deze twee mengsels ga

9
00:00:32,690 --> 00:00:37,130
‫verwijderen die we gebruiken als voorbeeld van hoe de animatieblauwdruk en in de grafiek werken.

10
00:00:37,580 --> 00:00:43,670
‫En in plaats daarvan gaan we vanuit de activabrowser rechtsonder de overvloeiruimte die we

11
00:00:43,670 --> 00:00:46,460
‫zojuist hebben gemaakt, gebruiken als onderstrepingsbeweging.

12
00:00:46,820 --> 00:00:51,920
‫Als je dat naar je animatiegrafiek sleept, zie je dat het dit kleine groene knooppunt hier binnenbrengt.

13
00:00:52,610 --> 00:00:59,810
‫En heel erg zoals de andere blend-knooppunten en dat soort dingen, hebben we onszelf in een opgelegd dat

14
00:00:59,810 --> 00:01:02,240
‫we in onze output kunnen slepen.

15
00:01:02,420 --> 00:01:05,870
‫En als ik op compileren klik, kun je zien dat het gewoon in onze standaardruimte staat.

16
00:01:07,070 --> 00:01:13,190
‫En dan kun je deze kleine visualisatie zien, wat best handig is vanwege de kleine

17
00:01:13,490 --> 00:01:20,750
‫overvloeiruimte en we kunnen doorgaan en de waarden hier statisch veranderen of we kunnen hier wat variabelen invoeren.

18
00:01:21,920 --> 00:01:26,120
‫Welnu, we zullen waarschijnlijk het laatste willen doen, dus ik ga door en

19
00:01:26,120 --> 00:01:32,900
‫verwijder de twee variabelen die we links hebben en de Fulwood, omdat we nu weten dat we een hoek willen die wordt

20
00:01:32,900 --> 00:01:33,620
‫een vlotter.

21
00:01:33,980 --> 00:01:39,680
‫Dus laten we dat veranderen in float en we hebben ook een snelheidsvariabele nodig, wat ook een float

22
00:01:39,680 --> 00:01:40,160
‫is.

23
00:01:40,700 --> 00:01:46,910
‫En we kunnen die twee in de snelheidsvariabele patchen in de snelheid en de hoek in de hoek.

24
00:01:47,180 --> 00:01:53,420
‫En we gaan op compileren, kijken naar een geanimeerde preview-editor en passen gewoon de waarden aan.

25
00:01:53,420 --> 00:01:56,540
‫Dus laten we allereerst de snelheid een beetje opvoeren.

26
00:01:57,620 --> 00:02:01,340
‫Laten we de snelheid op ongeveer 30 brengen.

27
00:02:01,760 --> 00:02:02,550
‫Kijken wat er gebeurt.

28
00:02:02,570 --> 00:02:02,920
‫Zij gaan.

29
00:02:02,930 --> 00:02:05,770
‫Hij begint langs te lopen, brengt het op 70.

30
00:02:05,990 --> 00:02:07,970
‫Hij komt steeds dichter bij het hardlopen.

31
00:02:07,970 --> 00:02:09,170
‫Ik breng het op 100.

32
00:02:09,680 --> 00:02:09,850
‫Wat?

33
00:02:09,860 --> 00:02:10,970
‫Geen 1000?

34
00:02:10,970 --> 00:02:13,910
‫Dan is hij helemaal aan het rennen en dan kan hij de hoeken veranderen.

35
00:02:13,910 --> 00:02:20,180
‫Dus bij 90 graden gaat hij 90 naar rechts, -90, hij gaat naar links.

36
00:02:20,810 --> 00:02:21,860
‫We kunnen ergens tussenin gaan.

37
00:02:21,860 --> 00:02:23,090
‫Dus hij kan zeggen 45 graden.

38
00:02:23,090 --> 00:02:28,700
‫Je kunt runs zien in een hoek van 45 graden en je kunt de overvloeiruimte zien waar hij probeert te

39
00:02:28,700 --> 00:02:30,740
‫kiezen in de overvloeiruimte en animaties.

40
00:02:30,740 --> 00:02:36,320
‫Het is een soort vermenging tussen die voorwaartse animatie en die 90 graden rechtse

41
00:02:36,320 --> 00:02:37,100
‫animatie.

42
00:02:37,790 --> 00:02:39,140
‫Dus dat is gaaf.

43
00:02:39,140 --> 00:02:40,520
‫We hebben dat aan de hand.

44
00:02:40,520 --> 00:02:47,210
‫Maar zoals we weten, moet dit worden aangedreven door onze daadwerkelijke gameplay en waarom doen we dat eigenlijk?

45
00:02:47,210 --> 00:02:54,050
‫Waarom hebben we niet gewoon de animaties die de gameplay aansturen en zeggen, weet je, we moeten vooruit in

46
00:02:54,050 --> 00:02:55,580
‫dat en dat tempo?

47
00:02:56,240 --> 00:03:02,360
‫Welnu, de reden om dat niet te doen, de reden om de animatie niet te gebruiken om de gameplay te

48
00:03:02,360 --> 00:03:07,670
‫stimuleren, is dat je vaak wilt dat je ontwerper allerlei variabelen aan je gameplay kan aanpassen.

49
00:03:07,670 --> 00:03:13,010
‫Je wilt dat ze kunnen zeggen: Oké, het voelt niet goed dat dit personage hiermee bezig is.

50
00:03:13,010 --> 00:03:17,780
‫Speedy moet in plaats daarvan met deze snelheid rennen en lopen zou meer met deze snelheid moeten zijn.

51
00:03:18,380 --> 00:03:22,880
‫U wilt dus niet dat uw animaties het ontwerp en het spelgevoel beperken.

52
00:03:23,480 --> 00:03:27,890
‫Je wilt dat de animaties van de achterkant van je game aanvoelen en er goed uitzien.

53
00:03:28,340 --> 00:03:33,020
‫Dus tijdens een ontwerpproces realiseer je je misschien dat we een sneller lopende animatie nodig hebben

54
00:03:33,020 --> 00:03:39,830
‫en dat is oké, maar je wilt eerst het spel kunnen veranderen om daar te komen, in plaats van te gaan proberen en

55
00:03:39,920 --> 00:03:46,190
‫een andere lopende animatie op te nemen of zoek een andere lopende animatie en realiseer je dan dat dat eigenlijk niet

56
00:03:46,190 --> 00:03:48,230
‫het gevoel van het spel verbeterde.

57
00:03:48,230 --> 00:03:51,110
‫Daarom wil ik deze twee zaken zo goed mogelijk gescheiden houden.

58
00:03:51,440 --> 00:03:57,200
‫Er zijn momenten waarop dingen echt in lijn moeten zijn met de animaties, maar dit is er niet een van.

59
00:03:57,350 --> 00:03:59,840
‫Er zijn dus uitzonderingen op elke regel.

60
00:04:00,050 --> 00:04:04,010
‫Dus neem dit niet als een volledig in steen gebeitelde regel.

61
00:04:04,010 --> 00:04:09,770
‫Je zult zeker gevallen zien van games die bepaalde functies uit de animatie halen, maar over het

62
00:04:09,770 --> 00:04:12,140
‫algemeen willen we het andersom doen.

63
00:04:12,140 --> 00:04:15,800
‫We willen zeggen, wat is de snelheid van het personage in het spel?

64
00:04:16,070 --> 00:04:21,170
‫Laat me de snelheid van de animatie updaten in plaats van te zeggen: Wat is de snelheid van de animatie?

65
00:04:21,170 --> 00:04:23,000
‫Laat me de snelheid van het personage in het spel bijwerken.

66
00:04:23,270 --> 00:04:23,450
‫Oké.

67
00:04:23,450 --> 00:04:25,850
‫Dat gezegd hebbende, hoe doen we dit?

68
00:04:26,090 --> 00:04:32,330
‫De mechanica ervan is dat deze blauwdruk, deze animatieblauwdruk, een gebeurtenisgrafiek heeft zoals

69
00:04:32,330 --> 00:04:38,180
‫andere blauwdrukken, wat betekent dat het dingen als een TIC-gebeurtenis kan hebben.

70
00:04:38,330 --> 00:04:44,780
‫Als ik naar de gebeurtenisgrafiek ga en een kijkje neem, hebben we hier een aantal gebeurtenisknooppunten die we kunnen gebruiken

71
00:04:44,780 --> 00:04:46,010
‫om te beginnen.

72
00:04:46,040 --> 00:04:48,710
‫We hebben deze blauwdruk-update-animatie.

73
00:04:48,710 --> 00:04:56,300
‫Als we hier vanaf komen elke keer dat het de animatie wil bijwerken, geeft het ons de uitvoeringsnota

74
00:04:56,300 --> 00:04:59,810
‫en kunnen we doorgaan en een staat pakken.

75
00:04:59,810 --> 00:05:04,940
‫Dus wat we gaan doen, is elke keer dat dit wordt genoemd, we gaan een staat

76
00:05:04,940 --> 00:05:10,880
‫pakken en merken dat hier een krijg -- eigenaar die zegt, ga je gang en pak het -- object.

77
00:05:10,880 --> 00:05:16,190
‫Dus laten we onszelf eraan herinneren dat het -- in dit geval een personage is, een personage een subklasse

78
00:05:16,550 --> 00:05:19,070
‫is van -- en het zou dit BP-schietpersonage zijn.

79
00:05:19,100 --> 00:05:20,750
‫Waarom zou het het personage van BP Shoots zijn?

80
00:05:20,750 --> 00:05:21,290
‫Goed, laten we even kijken.

81
00:05:22,670 --> 00:05:29,660
‫Omdat dit personage, als we de MASH-schets van de viewport selecteren, momenteel slechts een eenvoudige

82
00:05:29,660 --> 00:05:30,770
‫animatie uitvoert.

83
00:05:30,770 --> 00:05:36,620
‫Maar wat we willen doen, is de animatiemodus veranderen om animatieblauwdrukken te gebruiken en

84
00:05:36,620 --> 00:05:39,140
‫we willen dat app-shooter-personage gebruiken.

85
00:05:39,530 --> 00:05:44,780
‫Dus daarom is dit de -- eigenaar gebruikt die animatieblauwdruk.

86
00:05:44,780 --> 00:05:47,630
‫Dus de blauwdruk heeft nu een -- eigenaar.

87
00:05:48,350 --> 00:05:54,560
‫Dus wat we willen doen in deze update-functie, om samen te vatten, is dat we de informatie uit de

88
00:05:54,860 --> 00:05:56,990
‫-- over zijn beweging willen halen.

89
00:05:56,990 --> 00:05:58,820
‫We willen zeggen, wat is uw snelheid?

90
00:05:59,120 --> 00:06:01,400
‫Wat is de hoek van je beweging?

91
00:06:02,000 --> 00:06:03,860
‫Dat gaan we in deze lezing berekenen.

92
00:06:03,860 --> 00:06:06,500
‫We gaan gewoon de snelheid doen, want dat is het eenvoudigst om te doen.

93
00:06:06,800 --> 00:06:11,870
‫De hoek vereist wat manipulatie met transformaties, waar we in de volgende lezing

94
00:06:11,870 --> 00:06:13,280
‫naar zullen kijken.

95
00:06:13,520 --> 00:06:21,950
‫Dus het knooppunt dat we hier willen hebben, is om de snelheid van onze -- eigenaar te krijgen die ons deze vector

96
00:06:21,950 --> 00:06:22,730
‫hier geeft.

97
00:06:23,480 --> 00:06:29,780
‫En dan van de achterkant van die vector, willen we de grootte of de lengte ervan vinden, zodat

98
00:06:29,780 --> 00:06:33,050
‫we van die vector kunnen zoeken naar de grootte.

99
00:06:33,260 --> 00:06:37,730
‫En dat is hier slim geweest, en ik heb gezocht naar grootte, maar het gaf me de functie

100
00:06:37,730 --> 00:06:38,390
‫genaamd vectorlengte.

101
00:06:38,400 --> 00:06:42,430
‫Zo duidelijk een omvang die ze hebben geklokt dat het een synoniem is voor vectorlengte.

102
00:06:42,440 --> 00:06:45,200
‫Waarom willen we de vectorlengte krijgen in plaats van de vector zelf?

103
00:06:45,200 --> 00:06:50,720
‫Omdat we op zoek zijn naar een vlotter, de snelheidsvectoren omvatten zowel de richting als de snelheid, die

104
00:06:50,720 --> 00:06:53,300
‫we nodig hebben om de hoek te berekenen.

105
00:06:53,720 --> 00:06:56,900
‫Maar het is niet wat we nodig hebben om de snelheid te berekenen.

106
00:06:57,140 --> 00:06:58,970
‫Zoveel uitdaging voor jou hier.

107
00:06:59,090 --> 00:06:59,710
‫Doe Maar.

108
00:06:59,720 --> 00:07:02,330
‫Er is geen andere uitdaging in deze lezing.

109
00:07:02,660 --> 00:07:06,860
‫Ga je gang en stel de snelheid in met behulp van deze vectorlengte.

110
00:07:06,860 --> 00:07:08,960
‫En onthoud of u een uitvoeringspin nodig heeft.

111
00:07:08,960 --> 00:07:11,690
‫We proberen dit te doen in de animatie van de blauwdrukupdate.

112
00:07:11,690 --> 00:07:12,770
‫Dus pauzeer de video en probeer het.

113
00:07:12,770 --> 00:07:13,460
‫Oké, welkom terug.

114
00:07:13,460 --> 00:07:16,130
‫Dus de snelheid is wat we willen instellen.

115
00:07:16,130 --> 00:07:21,710
‫Dus als ik dat naar de blauwdruk sleepte en de ingestelde snelheid aanraakte, kun je zien dat we een executiespeld hebben die we nodig

116
00:07:21,710 --> 00:07:22,070
‫hebben.

117
00:07:22,070 --> 00:07:24,980
‫Dat halen we uit de animatie van de blauwdrukupdate.

118
00:07:25,490 --> 00:07:31,010
‫En we hebben de datapin nodig, die de snelheid zal zijn die voortkomt uit onze vectorlengte om onze snelheid

119
00:07:31,010 --> 00:07:31,820
‫te krijgen.

120
00:07:32,330 --> 00:07:35,030
‫Dus we zouden in staat moeten zijn om dat op te slaan en te compileren.

121
00:07:35,030 --> 00:07:40,100
‫Je kunt zien dat de snelheid op nul is gezet, omdat het nu probeert het in te stellen van een

122
00:07:40,250 --> 00:07:41,840
‫pioneigenaar die er niet echt is.

123
00:07:42,890 --> 00:07:48,830
‫Dus wat we willen doen, is doorgaan en in de wereld spelen en kijken wat we hebben.

124
00:07:49,370 --> 00:07:50,360
‫Oké, dit is veel beter.

125
00:07:50,360 --> 00:07:56,000
‫We hebben een -- die statisch op de grond blijft, behalve wanneer ik beweeg, op welk

126
00:07:56,000 --> 00:07:58,430
‫punt het me wat snelheid geeft.

127
00:07:59,330 --> 00:08:05,660
‫En als je een analoge ingang gebruikt, zoals een controller, kun je zien dat door de analoge

128
00:08:06,110 --> 00:08:12,350
‫ingangen te veranderen die de snelheid veranderen, we kunnen veranderen hoe snel deze man beweegt.

129
00:08:14,610 --> 00:08:16,400
‫Nu zijn er hier duidelijk twee problemen.

130
00:08:16,410 --> 00:08:20,970
‫De eerste is dat als ik uit een hoek beweeg, het gewoon de absolute snelheid gebruikt.

131
00:08:21,060 --> 00:08:23,940
‫Het is dus niet het aanpassen van de hoek in onze overvloeiruimte.

132
00:08:23,940 --> 00:08:25,590
‫En dus ziet de animatie er verkeerd uit.

133
00:08:26,280 --> 00:08:31,590
‫Het andere probleem is dat we hier zeker een voetverschuiving krijgen omdat de snelheid van onze animatie niet overeenkomt

134
00:08:31,590 --> 00:08:34,440
‫met de snelheid van het personage in ons spel.

135
00:08:34,770 --> 00:08:38,880
‫Dat is iets waar we in een volgende lezing ook naar zullen kijken.

136
00:08:39,390 --> 00:08:39,990
‫Goed spul.

137
00:08:40,020 --> 00:08:47,280
‫Hopelijk begrijp je nu hoe animaties moeten aansluiten op gameplay met behulp van de animatieblauwdruk en zou

138
00:08:47,610 --> 00:08:51,750
‫je dat moeten kunnen toepassen op je eigen game.

139
00:08:52,020 --> 00:08:57,930
‫Tot ziens in de volgende lezing waar we die hoeken gaan aansluiten zodat deze beweging er wat

140
00:08:57,930 --> 00:08:58,680
‫natuurlijker uitziet.

