﻿1
00:00:04,470 --> 00:00:05,730
‫Ciao e benvenuto a questa lezione.

2
00:00:05,730 --> 00:00:12,150
‫Compileremo una macchina a stati di animazione in modo che ci siano più stati qui che ci consentano di

3
00:00:12,150 --> 00:00:16,290
‫avere un'animazione che ci salta in quello stato di salto iniziale.

4
00:00:16,290 --> 00:00:21,780
‫Come puoi vedere, c'è un po' più di primavera nel mio salto e impareremo cose come le transizioni

5
00:00:21,780 --> 00:00:26,790
‫automatiche e come annidare una macchina a stati all'interno di un'altra, che è ciò che faremo

6
00:00:26,790 --> 00:00:28,770
‫per la nostra animazione di morte.

7
00:00:28,770 --> 00:00:31,710
‫Ora tuffiamoci e vediamo come funziona.

8
00:00:32,520 --> 00:00:40,860
‫Quindi, come promesso nell'ultima lezione, collegheremo la nostra variabile aerea al gameplay.

9
00:00:41,160 --> 00:00:48,360
‫Ora il modo in cui lo faremo è ottenere dal pedone o in particolare dal nostro personaggio sparatutto.

10
00:00:48,900 --> 00:00:54,600
‫Vogliamo scoprire essenzialmente se il personaggio è in volo.

11
00:00:55,290 --> 00:01:01,320
‫E trovo che l'unico modo per farlo sia essenzialmente attraverso la componente di movimento del personaggio.

12
00:01:01,770 --> 00:01:02,760
‫Quindi lascia che ti mostri cosa intendo.

13
00:01:02,760 --> 00:01:07,770
‫Se andiamo a un nodo cast che sta trasmettendo al personaggio sparatutto, possiamo trascinarlo via.

14
00:01:07,770 --> 00:01:12,570
‫In effetti, ciò che possiamo fare è un cast più generale in questo caso particolare perché

15
00:01:12,570 --> 00:01:15,810
‫non abbiamo bisogno delle informazioni specifiche associate a è morto.

16
00:01:16,470 --> 00:01:26,040
‫Quindi quello che farò qui è prendere questa spilla dal proprietario del pedone e in questo caso faremo un cast di due personaggi perché tutto

17
00:01:26,040 --> 00:01:30,300
‫ciò che dobbiamo sapere è che questa è un'istanza del personaggio.

18
00:01:30,330 --> 00:01:36,360
‫Quindi aggiungeremo un nuovo pin di esecuzione sul nodo della sequenza, lo trascineremo fino al nostro personaggio cast e

19
00:01:36,360 --> 00:01:39,690
‫poi dal personaggio si trascinerà dal suo pin del personaggio.

20
00:01:39,690 --> 00:01:46,110
‫E cercheremo fondamentalmente qualcosa lungo la linea del nulla che possa essere un salto sembra

21
00:01:46,110 --> 00:01:53,790
‫essere più interessante sta dicendo che il salto fornisce la forza può saltare saltare tutto quel genere di cose.

22
00:01:53,790 --> 00:01:56,340
‫Abbiamo qualcosa lì, ma non è proprio così.

23
00:01:56,340 --> 00:01:58,350
‫Che ne dici se cerchiamo la caduta?

24
00:01:58,380 --> 00:01:59,010
‫Ecco qua.

25
00:01:59,040 --> 00:02:00,690
‫Abbiamo un sta cadendo.

26
00:02:00,690 --> 00:02:06,870
‫E se fai clic su quello, puoi vedere che prende automaticamente il componente di movimento del personaggio

27
00:02:06,870 --> 00:02:10,560
‫da quel personaggio per vedere se stiamo cadendo o meno.

28
00:02:11,340 --> 00:02:18,090
‫Quindi quello che possiamo fare è passarlo per impostare il valore di è in volo e ovviamente lo imposteremo

29
00:02:18,090 --> 00:02:22,200
‫solo se il nostro personaggio del cast di due ha successo.

30
00:02:22,200 --> 00:02:27,390
‫Quindi agganciamo quel pin di esecuzione proprio lì e andiamo avanti e compilalo.

31
00:02:27,390 --> 00:02:31,440
‫Ovviamente, non cambierà l'anteprima, quindi dobbiamo provare a riprodurlo.

32
00:02:31,620 --> 00:02:38,850
‫Quindi giochiamo a saltare e puoi vedere che questa variabile decrescente è immediatamente vera e in realtà

33
00:02:38,850 --> 00:02:40,320
‫funziona abbastanza bene.

34
00:02:40,320 --> 00:02:46,140
‫Siamo in grado di saltare e atterrare e saltare e atterrare e uccidere i nostri nemici, ovviamente.

35
00:02:47,280 --> 00:02:51,840
‫Quindi ora vorrei aggiungere un po' più di complicazione al grafico anim.

36
00:02:51,960 --> 00:02:57,390
‫Quindi nella macchina a stati di locomozione al momento, abbiamo due stati qui, ma quello che

37
00:02:57,390 --> 00:03:04,410
‫mi piacerebbe davvero fare è riprodurre un'animazione di salto, poi un'animazione in cui siamo in volo e poi un'animazione di atterraggio quando

38
00:03:04,410 --> 00:03:05,490
‫colpiamo il terreno.

39
00:03:06,180 --> 00:03:09,270
‫Per farlo, abbiamo bisogno di altri stati nella nostra macchina a stati.

40
00:03:09,720 --> 00:03:10,620
‫Quindi andiamo avanti.

41
00:03:10,620 --> 00:03:13,800
‫Farò uno degli insiemi di stati e tu puoi fare l'ultimo.

42
00:03:14,550 --> 00:03:17,160
‫Quindi il primo sarà aggiungere lo stato di salto.

43
00:03:18,590 --> 00:03:23,210
‫E questo riprodurrà un'animazione che ci farà decollare, ha detto che andrà agli

44
00:03:23,210 --> 00:03:26,630
‫stati di salto e al post dell'animazione di output.

45
00:03:26,630 --> 00:03:29,230
‫Collegheremo una nuova animazione con essa per il salto.

46
00:03:29,240 --> 00:03:31,940
‫Stiamo cercando quelli suffisso con combattimento.

47
00:03:32,600 --> 00:03:35,390
‫Quindi cercheremo il combattimento con avvio rapido.

48
00:03:35,390 --> 00:03:35,960
‫Ecco qua.

49
00:03:36,350 --> 00:03:37,460
‫Ed è quello che vogliamo.

50
00:03:37,470 --> 00:03:43,020
‫Quindi torneremo alla nostra macchina a stati di locomozione e vogliamo collegare alcune transizioni.

51
00:03:43,040 --> 00:03:45,350
‫Quindi passeremo da terra a salto.

52
00:03:45,860 --> 00:03:48,460
‫Succederà se saremo in volo.

53
00:03:48,470 --> 00:03:55,010
‫Quindi messo in aria è in volo lì dentro, sfortunatamente, non c'è modo che io possa vedere di cambiare la

54
00:03:55,010 --> 00:03:55,610
‫transizione.

55
00:03:55,610 --> 00:04:01,280
‫Quindi dovremo semplicemente eliminare le vecchie transizioni qui in entrambi i casi, quindi dovremo passare dal salto

56
00:04:01,280 --> 00:04:06,170
‫a è in volo, ma non abbiamo una variabile o uno stato per quello.

57
00:04:06,500 --> 00:04:09,770
‫Quindi, quando passeremo dal salto al volo?

58
00:04:09,770 --> 00:04:13,070
‫Bene, vogliamo farlo quando l'animazione di salto è terminata.

59
00:04:13,070 --> 00:04:17,510
‫Quando abbiamo finito di saltare, se vai a dare un'occhiata all'animazione del salto, puoi vedere che lo

60
00:04:17,510 --> 00:04:19,990
‫coinvolge sollevando i piedi da terra in questo modo.

61
00:04:20,390 --> 00:04:26,630
‫E quindi vogliamo sostanzialmente passare alla nostra animazione apicale quando è finita.

62
00:04:26,990 --> 00:04:29,510
‫Fortunatamente, c'è un'opzione per questo nelle transizioni.

63
00:04:29,510 --> 00:04:33,860
‫Se selezioni la transizione invece di entrarci, puoi guardare il suo riquadro dei dettagli.

64
00:04:34,520 --> 00:04:35,780
‫E c'è un'opzione qui.

65
00:04:36,720 --> 00:04:42,360
‫Che espandi, dice la regola automatica basata sul giocatore di sequenza nello stato.

66
00:04:42,930 --> 00:04:48,210
‫Se lo controlli, in pratica ciò che farà è quando avremo quasi finito di saltare, inizierà

67
00:04:48,210 --> 00:04:53,430
‫la transizione all'animazione successiva e potrai effettivamente controllare quando è la transizione e quanto tempo

68
00:04:53,430 --> 00:04:54,840
‫è la dissolvenza incrociata.

69
00:04:54,840 --> 00:05:01,260
‫Qui nelle impostazioni di fusione, puoi vedere che la durata della fusione è di circa 0. 2, ma visto che questi due stanno passando l'uno

70
00:05:01,260 --> 00:05:06,270
‫nell'altro particolarmente bene, lo farò 0. 01.

71
00:05:06,270 --> 00:05:08,340
‫Quindi farò quella transizione davvero breve.

72
00:05:08,910 --> 00:05:10,530
‫Quindi vediamo come appare.

73
00:05:10,530 --> 00:05:12,090
‫Quindi andremo in è in volo.

74
00:05:12,090 --> 00:05:16,530
‫Riproduce quell'animazione di salto e poi va direttamente nello stato in volo.

75
00:05:16,770 --> 00:05:18,090
‫Una volta terminata l'animazione.

76
00:05:18,090 --> 00:05:19,200
‫Proviamolo ancora una volta.

77
00:05:19,620 --> 00:05:21,000
‫Non possiamo provare un'altra volta.

78
00:05:21,000 --> 00:05:27,180
‫Questo è il problema perché non abbiamo alcuna transizione dallo stato di volo per tornare a terra e questa

79
00:05:27,180 --> 00:05:28,860
‫sarà davvero la tua sfida.

80
00:05:29,130 --> 00:05:33,390
‫Quindi quello che hai intenzione di fare è aggiungere uno stato di atterraggio che riprodurrà un'animazione di atterraggio.

81
00:05:33,390 --> 00:05:37,800
‫Quindi nel nuovo stato, nell'animazione, che secondo te è più appropriato per l'atterraggio, potresti voler cercare

82
00:05:37,800 --> 00:05:41,160
‫cose con il prefisso del salto e il suffisso del combattimento.

83
00:05:41,670 --> 00:05:46,020
‫Quindi passerai dall'aereo su un booleano a questo stato di atterraggio.

84
00:05:46,530 --> 00:05:51,750
‫E poi da quello stato di atterraggio, passerai a terra quando l'animazione di atterraggio

85
00:05:51,750 --> 00:05:52,680
‫è terminata.

86
00:05:53,690 --> 00:05:55,880
‫Gioca, gioca, guarda come ci si sente.

87
00:05:55,910 --> 00:05:56,780
‫Si sente bene?

88
00:05:56,810 --> 00:05:57,800
‫Sembra giusto?

89
00:05:58,310 --> 00:06:04,250
‫E potresti voler guardare a modificare quei tempi di transizione per vedere se questo fa sentire le cose meglio.

90
00:06:04,640 --> 00:06:08,210
‫Metti in pausa il video e prova a giocare con la macchina per acetato.

91
00:06:10,500 --> 00:06:10,860
‫Bene.

92
00:06:10,860 --> 00:06:11,490
‫Ben tornato.

93
00:06:11,520 --> 00:06:12,740
‫Quindi proviamoci.

94
00:06:12,750 --> 00:06:14,520
‫Aggiungeremo un nuovo stato qui.

95
00:06:14,760 --> 00:06:16,230
‫Si chiamerà atterraggio.

96
00:06:17,410 --> 00:06:21,370
‫E in questo stato di atterraggio, se entriamo, abbiamo bisogno di un'animazione per questo.

97
00:06:21,380 --> 00:06:22,720
‫Cercherò il salto.

98
00:06:23,200 --> 00:06:30,700
‫E quello che vogliamo è saltare il combattimento terrestre in modo da poter tornare alla nostra macchina a stati di locomozione.

99
00:06:30,700 --> 00:06:34,900
‫Dobbiamo passare dall'aereo all'atterraggio facendo doppio clic su quello.

100
00:06:35,260 --> 00:06:45,550
‫E questo deve essere il nodo dentro e non in volo fondamentalmente, quindi non il nodo che è in volo è passato in

101
00:06:45,550 --> 00:06:46,060
‫quello.

102
00:06:46,660 --> 00:06:48,550
‫Quindi questa è la nostra condizione di transizione.

103
00:06:48,550 --> 00:06:54,610
‫Quindi, quando siamo all'apice, una volta che il nodo è in volo è deselezionato, allora entriamo in quello stato di atterraggio.

104
00:06:55,150 --> 00:06:59,080
‫Quindi dal nostro stato di atterraggio, vogliamo passare a terra una volta terminato.

105
00:06:59,080 --> 00:07:05,080
‫Quindi, se facciamo clic sulla transizione e selezioniamo la casella di controllo della regola automatica, lo farà al

106
00:07:05,080 --> 00:07:05,710
‫termine.

107
00:07:05,770 --> 00:07:06,670
‫Quindi proviamolo.

108
00:07:07,060 --> 00:07:08,320
‫Andremo nel suo volo.

109
00:07:08,320 --> 00:07:12,190
‫Gioca saltando va in aria e poi deselezionalo.

110
00:07:12,190 --> 00:07:14,320
‫Va all'atterraggio e torna indietro.

111
00:07:14,740 --> 00:07:15,520
‫Facciamolo di nuovo.

112
00:07:16,460 --> 00:07:17,420
‫Sembra abbastanza buono.

113
00:07:17,570 --> 00:07:19,910
‫Ok, quindi quello che faremo ora è.

114
00:07:20,030 --> 00:07:20,960
‫Prova a giocarci.

115
00:07:22,220 --> 00:07:24,200
‫Saltando e atterrando.

116
00:07:24,230 --> 00:07:24,640
‫Bene.

117
00:07:24,650 --> 00:07:25,820
‫Questo si sente abbastanza bene.

118
00:07:26,120 --> 00:07:32,550
‫C'è un po' di ritardo quando sto atterrando tra il mio atterraggio e l'animazione in esecuzione in riproduzione.

119
00:07:32,570 --> 00:07:39,200
‫Quindi farò clic sulla transizione dall'atterraggio a Grounded e darò un'occhiata alle nostre impostazioni di fusione.

120
00:07:39,920 --> 00:07:47,660
‫Ora abbiamo questa durata del punto uno, ed è quanto tempo ci occorre per fare la transizione e cosa sta

121
00:07:47,840 --> 00:07:48,620
‫succedendo.

122
00:07:48,630 --> 00:07:54,320
‫Quindi, nella nostra animazione di combattimento di atterraggio, quanto dura l'animazione di combattimento di atterraggio?

123
00:07:54,680 --> 00:07:57,020
‫Se lo metto in pausa, scorri qui.

124
00:07:57,470 --> 00:08:00,680
‫Puoi vedere che è circa 0. 2.

125
00:08:00,740 --> 00:08:09,080
‫Quindi in realtà ci vuole tutto quel tempo e la transizione durante quel tempo nella nostra locomozione a

126
00:08:09,080 --> 00:08:09,890
‫terra.

127
00:08:10,010 --> 00:08:15,470
‫Quindi è un po' quello che vogliamo, perché non appena siamo atterrati a terra, non appena il gameplay

128
00:08:15,470 --> 00:08:21,170
‫ci dice che siamo atterrati a terra, vogliamo iniziare a mostrare un po' di movimento del piede perché altrimenti

129
00:08:21,170 --> 00:08:22,580
‫sembrerà un po' strano.

130
00:08:23,120 --> 00:08:29,570
‫Quindi vogliamo che la transizione cominci effettivamente ad accadere il prima possibile, motivo per cui stiamo riproducendo molto poco

131
00:08:29,570 --> 00:08:34,880
‫dell'animazione di atterraggio e stiamo passando a quella a terra il più rapidamente possibile.

132
00:08:35,270 --> 00:08:42,650
‫L'unica cosa che possiamo davvero modificare qui è la modalità di transizione, che determina la forma di

133
00:08:42,650 --> 00:08:48,650
‫quella curva, la forma di quanto atterraggio rispetto a terra abbiamo nel tempo.

134
00:08:48,980 --> 00:08:52,820
‫E puoi testare varie di queste opzioni, vedere quali si sentono meglio per te.

135
00:08:53,120 --> 00:08:59,540
‫Per me, è l'uscita esponenziale che sembra migliore perché mostra quanto più radicato possibile il prima

136
00:08:59,540 --> 00:09:02,210
‫possibile, ma senza che sembri stridente.

137
00:09:02,630 --> 00:09:08,630
‫Quindi, se ora lo facciamo in volo e poi torniamo a terra, puoi vedere che sembra che stia andando

138
00:09:08,630 --> 00:09:11,900
‫a terra abbastanza rapidamente, ed è quello che vogliamo.

139
00:09:12,380 --> 00:09:16,280
‫Quindi vado avanti e premo play e vedrò se va meglio.

140
00:09:17,240 --> 00:09:21,050
‫Sì, mi sembra un po' più reattivo quando tocchi il terreno, che è esattamente quello che voglio.

141
00:09:21,560 --> 00:09:27,110
‫Ora, in pratica, se avessi più animazioni qui con cui lavorare, quello che potresti voler fare con lo

142
00:09:27,110 --> 00:09:31,520
‫stato terrestre è avere uno spazio di fusione lì e avere un'animazione di ripristino.

143
00:09:31,520 --> 00:09:36,530
‫Quindi, a seconda della forza con cui colpisci il suolo, potresti riprodurre un'animazione di recupero, che è mista

144
00:09:36,530 --> 00:09:39,120
‫a seconda della direzione in cui ti stai muovendo.

145
00:09:39,500 --> 00:09:44,360
‫Quindi sarebbe atterrato con un forte tonfo, ma in qualche modo barcollando a sinistra, per esempio.

146
00:09:44,750 --> 00:09:48,740
‫Ora, non è qualcosa che tratteremo qui solo perché non abbiamo le animazioni.

147
00:09:48,740 --> 00:09:50,870
‫Ma in teoria, è quello che potresti fare.

148
00:09:51,110 --> 00:09:57,860
‫Quindi ora un ultimo tipo di mini sfida per te è che al momento abbiamo questa miscela di pose in piscina

149
00:09:58,250 --> 00:10:00,440
‫per la nostra animazione di morte.

150
00:10:00,890 --> 00:10:04,580
‫Questo potrebbe essere fatto con una nuova macchina statale per la morte.

151
00:10:05,090 --> 00:10:12,200
‫Vedi se puoi provare a rifattorizzare questo grafico anim in modo che funzioni con una macchina a stati per la morte invece di questa

152
00:10:12,200 --> 00:10:13,910
‫miscela di pose di bool.

153
00:10:14,030 --> 00:10:16,580
‫Ok, quindi spero che tu mi abbia accolto in quella sfida.

154
00:10:16,940 --> 00:10:23,270
‫Quello che faremo è fare clic con il pulsante destro del mouse su una nuova macchina a stati completamente nuova.

155
00:10:23,810 --> 00:10:29,630
‫Rinomineremo a morte questa macchina a stati o qualcosa di simile, quindi entrerò in quella

156
00:10:29,630 --> 00:10:32,870
‫macchina a stati e aggiungeremo due stati.

157
00:10:32,900 --> 00:10:38,810
‫Uno sarà lo stato vivo e l'altro sarà morto.

158
00:10:39,560 --> 00:10:39,850
‫Bene.

159
00:10:40,280 --> 00:10:42,110
‫E poi aggiungeremo alcune transizioni.

160
00:10:42,110 --> 00:10:45,380
‫Quindi il passaggio da una vita alla morte, questo accadrà.

161
00:10:45,380 --> 00:10:50,600
‫Se facciamo doppio clic, accadrà quando è morto è vero così.

162
00:10:51,500 --> 00:10:58,910
‫E poi vogliamo che forse vogliamo una transizione di nuovo in vita e possiamo solo averlo a scopo di

163
00:10:58,910 --> 00:11:05,270
‫test almeno che avrà un non booleano e avrà è morto, quindi fondamentalmente non è morto.

164
00:11:05,660 --> 00:11:07,280
‫Torneremo dall'altra parte.

165
00:11:08,210 --> 00:11:10,390
‫Per impostazione predefinita, vogliamo essere nello stato vivo.

166
00:11:10,400 --> 00:11:11,180
‫Questo ha senso.

167
00:11:11,180 --> 00:11:12,740
‫E poi abbiamo bisogno di alcune animazioni per giocare.

168
00:11:13,340 --> 00:11:15,590
‫Quindi per Dead, abbiamo già quell'animazione della morte.

169
00:11:15,590 --> 00:11:19,280
‫Quindi tornerò al grafico anim per ritagliarlo.

170
00:11:19,310 --> 00:11:24,500
‫Torna allo stato morto e incolla l'animazione della morte qui.

171
00:11:25,870 --> 00:11:27,160
‫Poi nel nostro stato vivo.

172
00:11:27,160 --> 00:11:28,330
‫Cosa vogliamo suonare lì?

173
00:11:28,450 --> 00:11:30,600
‫Bene, in realtà, vogliamo suonare tutto il resto.

174
00:11:30,610 --> 00:11:32,260
‫Vogliamo giocare l'obiettivo del sesso.

175
00:11:32,260 --> 00:11:33,700
‫Vogliamo fare la locomozione.

176
00:11:34,030 --> 00:11:35,500
‫Quindi taglierò tutto questo.

177
00:11:36,040 --> 00:11:37,550
‫Ed è qui che diventa interessante.

178
00:11:37,570 --> 00:11:42,040
‫Ora abbiamo una macchina a stati in esecuzione all'interno di una macchina a stati, il che è del tutto possibile.

179
00:11:42,190 --> 00:11:50,170
‫Quindi possiamo quindi raggiungere questo obiettivo, compensare la nostra uscita per lo stato vivo e tornare completamente ad Adam

180
00:11:50,170 --> 00:11:51,010
‫Graf.

181
00:11:51,010 --> 00:11:56,440
‫Rimuovi tutti i nodi qui e aggiungi semplicemente quella macchina a stati nel nostro output.

182
00:11:56,950 --> 00:12:00,310
‫E questo funziona perché abbiamo gli stati di livello più alto.

183
00:12:00,310 --> 00:12:02,350
‫Fondamentalmente, stiamo dicendo che sono vivi o morti.

184
00:12:03,010 --> 00:12:03,390
‫Sei morto.

185
00:12:03,400 --> 00:12:04,780
‫Devi solo riprodurre un'animazione di morte.

186
00:12:05,140 --> 00:12:10,000
‫Se sei vivo, tuttavia, fai questo offset di mira e fai la tua macchina a stati di locomozione,

187
00:12:10,000 --> 00:12:12,790
‫che a sua volta ha il suo insieme di stati.

188
00:12:13,120 --> 00:12:15,280
‫Quindi sta sovrapponendo la macchina a stati sopra la macchina a stati.

189
00:12:15,280 --> 00:12:17,410
‫Speriamo di vedere come questo può essere davvero potente.

190
00:12:18,010 --> 00:12:21,970
‫Quindi possiamo fare ora è morto, il che prevale su tutto il resto in esecuzione.

191
00:12:21,970 --> 00:12:25,540
‫Non esegue più la macchina a stati di locomozione perché stiamo solo riproducendo quell'animazione di morte.

192
00:12:25,930 --> 00:12:33,070
‫Se capisco, torniamo a gestire l'animazione per un live, ma possiamo ripetere la nostra morte in modo cruciale, cosa che in precedenza

193
00:12:33,070 --> 00:12:34,390
‫non potevamo fare.

194
00:12:34,690 --> 00:12:41,620
‫E questo perché quando lasci uno stato in una macchina a stati di animazione, reimposta l'animazione al suo interno,

195
00:12:41,620 --> 00:12:43,000
‫la ripristina all'inizio.

196
00:12:43,010 --> 00:12:45,670
‫Quindi questa è una caratteristica davvero utile qui per la morte.

197
00:12:45,670 --> 00:12:49,970
‫Quindi, per ricapitolare, ciò che abbiamo imparato in questa lezione è come creare macchine a stati più complesse e

198
00:12:49,970 --> 00:12:51,640
‫annidare macchine a stati l'una nell'altra.

199
00:12:52,060 --> 00:12:57,820
‫E abbiamo visto le transizioni automatiche e come possono aiutarci a far sì che una sequenza di transizioni avvenga

200
00:12:57,820 --> 00:12:58,570
‫più facilmente.

201
00:12:58,720 --> 00:12:59,860
‫E ci vediamo alla prossima lezione.

