﻿1
00:00:04,700 --> 00:00:05,510
‫Olá e bem-vindo.

2
00:00:05,510 --> 00:00:10,640
‫Neste Late Show, vamos aprender como conectar nossas animações à nossa jogabilidade e

3
00:00:10,640 --> 00:00:17,240
‫vamos conectar a velocidade do nosso personagem ao espaço de mesclagem para que possamos obter esse efeito.

4
00:00:17,240 --> 00:00:18,890
‫Vamos mergulhar e ver como é feito.

5
00:00:20,690 --> 00:00:21,080
‫OK.

6
00:00:21,080 --> 00:00:26,210
‫Então nós temos um espaço em branco para integrar a este a.

7
00:00:26,240 --> 00:00:27,780
‫BP atira em um personagem.

8
00:00:28,460 --> 00:00:32,690
‫A primeira coisa que vou fazer é excluir essas duas combinações que

9
00:00:32,690 --> 00:00:37,130
‫usamos como exemplo de como o blueprint de animação e o gráfico funcionam.

10
00:00:37,580 --> 00:00:43,670
‫E, em vez disso, vamos trazer do navegador de ativos no canto inferior direito, o espaço de mesclagem

11
00:00:43,670 --> 00:00:46,460
‫que acabamos de criar como locomoção de sublinhado.

12
00:00:46,820 --> 00:00:51,920
‫Se você arrastar isso para o seu gráfico de animação, verá que ele traz este pequeno nó verde aqui.

13
00:00:52,610 --> 00:00:59,810
‫E muito parecido com os outros nós de mesclagem e coisas assim, temos uma imposição que

14
00:00:59,810 --> 00:01:02,240
‫podemos arrastar para nossas saídas.

15
00:01:02,420 --> 00:01:05,870
‫E se eu clicar em compilar, você pode ver que está apenas no nosso espaço padrão.

16
00:01:07,070 --> 00:01:13,190
‫E então você pode ver esta pequena visualização, que é bastante útil do pequeno espaço

17
00:01:13,490 --> 00:01:20,750
‫de mesclagem e podemos ir em frente e alterar os valores aqui estaticamente ou podemos inserir algumas variáveis aqui.

18
00:01:21,920 --> 00:01:26,120
‫Bem, provavelmente vamos querer fazer o último, então vou em frente e excluir as

19
00:01:26,120 --> 00:01:32,900
‫duas variáveis que temos à esquerda e o Fulwood, porque agora sabemos que o que queremos é um ângulo que é vai ser

20
00:01:32,900 --> 00:01:33,620
‫um flutuador.

21
00:01:33,980 --> 00:01:39,680
‫Então vamos mudar isso para float e vamos precisar de uma variável de velocidade também, que também é um

22
00:01:39,680 --> 00:01:40,160
‫float.

23
00:01:40,700 --> 00:01:46,910
‫E podemos corrigir esses dois na variável de velocidade na velocidade e o ângulo no ângulo.

24
00:01:47,180 --> 00:01:53,420
‫E vamos compilar, olhar para um editor de visualização animada e apenas ajustar os valores.

25
00:01:53,420 --> 00:01:56,540
‫Então, em primeiro lugar, a velocidade, vamos aumentar um pouco a velocidade.

26
00:01:57,620 --> 00:02:01,340
‫Vamos aumentar a velocidade para cerca de 30.

27
00:02:01,760 --> 00:02:02,550
‫Veja o que acontece.

28
00:02:02,570 --> 00:02:02,920
‫Eles vão.

29
00:02:02,930 --> 00:02:05,770
‫Ele começa a passar, chega a 70.

30
00:02:05,990 --> 00:02:07,970
‫Ele está cada vez mais perto de correr.

31
00:02:07,970 --> 00:02:09,170
‫Eu trago para 100.

32
00:02:09,680 --> 00:02:09,850
‫Que?

33
00:02:09,860 --> 00:02:10,970
‫Não 1000?

34
00:02:10,970 --> 00:02:13,910
‫Então ele está correndo e então ele pode mudar os ângulos.

35
00:02:13,910 --> 00:02:20,180
‫Então, a 90 graus, ele está indo 90 para a direita, -90, ele está indo para a esquerda.

36
00:02:20,810 --> 00:02:21,860
‫Podemos ir a algum lugar no meio.

37
00:02:21,860 --> 00:02:23,090
‫Então ele pode dizer 45 graus.

38
00:02:23,090 --> 00:02:28,700
‫Você pode ver as corridas em um ângulo de 45 graus e pode ver o espaço de mesclagem onde ele está tentando

39
00:02:28,700 --> 00:02:30,740
‫escolher o espaço de mesclagem e as animações.

40
00:02:30,740 --> 00:02:36,320
‫É uma espécie de mistura entre a mistura entre aquela animação avançada e aquela animação direita de

41
00:02:36,320 --> 00:02:37,100
‫90 graus.

42
00:02:37,790 --> 00:02:39,140
‫Então isso é legal.

43
00:02:39,140 --> 00:02:40,520
‫Nós temos isso acontecendo.

44
00:02:40,520 --> 00:02:47,210
‫Mas, como sabemos, isso precisa ser impulsionado pela nossa jogabilidade real e por que fazemos isso de qualquer maneira?

45
00:02:47,210 --> 00:02:54,050
‫Por que não temos apenas as animações impulsionando a jogabilidade dizendo, você sabe, precisamos avançar em tal

46
00:02:54,050 --> 00:02:55,580
‫e tal ritmo?

47
00:02:56,240 --> 00:03:02,360
‫Bem, a razão para não fazer isso, a razão para não usar a animação para conduzir a jogabilidade é que muitas

48
00:03:02,360 --> 00:03:07,670
‫vezes você quer que seu designer seja capaz de ajustar todos os tipos de variáveis sobre sua jogabilidade.

49
00:03:07,670 --> 00:03:13,010
‫Você quer que eles sejam capazes de dizer: Ok, bem, não parece certo que esse personagem esteja concorrendo a isso.

50
00:03:13,010 --> 00:03:17,780
‫Speedy precisa estar correndo nessa velocidade e caminhar deve ser mais nessa velocidade.

51
00:03:18,380 --> 00:03:22,880
‫Então você não quer que suas animações restrinjam o design e a sensação do jogo.

52
00:03:23,480 --> 00:03:27,890
‫Você quer que as animações saiam da parte de trás do seu jogo e façam com que pareça bom.

53
00:03:28,340 --> 00:03:33,020
‫Então, durante um processo de design, você pode perceber que realmente precisamos de uma animação

54
00:03:33,020 --> 00:03:39,830
‫de execução mais rápida e tudo bem, mas você quer poder mudar o jogo primeiro para chegar lá, em vez de tentar

55
00:03:39,920 --> 00:03:46,190
‫gravar uma animação de execução diferente ou encontrar uma animação de corrida diferente e então perceber que, na verdade, isso

56
00:03:46,190 --> 00:03:48,230
‫não melhorou a sensação do jogo.

57
00:03:48,230 --> 00:03:51,110
‫É por isso que quero manter essas duas coisas o mais separadas possível.

58
00:03:51,440 --> 00:03:57,200
‫Há momentos em que as coisas realmente devem se alinhar com as animações, mas essa não é uma delas.

59
00:03:57,350 --> 00:03:59,840
‫Portanto, há exceções para todas as regras.

60
00:04:00,050 --> 00:04:04,010
‫Portanto, não tome isso como uma regra completamente imutável.

61
00:04:04,010 --> 00:04:09,770
‫Você definitivamente verá instâncias de jogos que direcionam alguns recursos da animação, mas de um

62
00:04:09,770 --> 00:04:12,140
‫modo geral, queremos fazer o contrário.

63
00:04:12,140 --> 00:04:15,800
‫Queremos dizer, qual é a velocidade do personagem no jogo?

64
00:04:16,070 --> 00:04:21,170
‫Deixe-me atualizar a velocidade da animação em vez de dizer: Qual é a velocidade da animação?

65
00:04:21,170 --> 00:04:23,000
‫Deixe-me atualizar a velocidade do personagem no jogo.

66
00:04:23,270 --> 00:04:23,450
‫OK.

67
00:04:23,450 --> 00:04:25,850
‫Com isso dito, como fazemos isso?

68
00:04:26,090 --> 00:04:32,330
‫Basicamente, a mecânica disso é que esse blueprint, esse blueprint de animação, tem um gráfico de

69
00:04:32,330 --> 00:04:38,180
‫eventos como outros blueprints, o que significa que pode ter coisas como um evento TIC.

70
00:04:38,330 --> 00:04:44,780
‫Se eu for até o gráfico de eventos e der uma olhada, temos alguns nós de eventos aqui que podemos

71
00:04:44,780 --> 00:04:46,010
‫usar para começar.

72
00:04:46,040 --> 00:04:48,710
‫Temos essa animação de atualização do projeto.

73
00:04:48,710 --> 00:04:56,300
‫Se sairmos disso toda vez que ele quiser atualizar a animação, ele nos dará a nota de execução e nos

74
00:04:56,300 --> 00:04:59,810
‫permitirá seguir em frente e pegar algum estado.

75
00:04:59,810 --> 00:05:04,940
‫Então, o que vamos fazer é toda vez que isso é chamado, vamos e pegamos algum estado

76
00:05:04,940 --> 00:05:10,880
‫e notamos aqui que tem esse get -- proprietário que está dizendo vá em frente e pegue o -- objeto.

77
00:05:10,880 --> 00:05:16,190
‫Então, vamos nos lembrar, o -- neste caso é um personagem, personagem sendo uma subclasse de --,

78
00:05:16,550 --> 00:05:19,070
‫e seria esse personagem de atirador da BP.

79
00:05:19,100 --> 00:05:20,750
‫Por que seria o personagem BP atira?

80
00:05:20,750 --> 00:05:21,290
‫Bem vamos ver.

81
00:05:22,670 --> 00:05:29,660
‫Porque esse personagem, se selecionarmos o esboço MASH da viewport, ele está executando apenas uma

82
00:05:29,660 --> 00:05:30,770
‫animação simples.

83
00:05:30,770 --> 00:05:36,620
‫Mas o que queremos fazer é mudar o modo de animação para usar esquemas de animação e queremos

84
00:05:36,620 --> 00:05:39,140
‫usar esse personagem de atirador de aplicativos.

85
00:05:39,530 --> 00:05:44,780
‫Então é por isso que este é o -- proprietário está usando esse projeto de animação.

86
00:05:44,780 --> 00:05:47,630
‫Portanto, o projeto agora tem um -- proprietário.

87
00:05:48,350 --> 00:05:54,560
‫E então o que queremos fazer nesta função de atualização, apenas para resumir, é que queremos pegar as

88
00:05:54,860 --> 00:05:56,990
‫informações do -- sobre seu movimento.

89
00:05:56,990 --> 00:05:58,820
‫Queremos dizer, qual é a sua velocidade?

90
00:05:59,120 --> 00:06:01,400
‫Qual é o ângulo do seu movimento?

91
00:06:02,000 --> 00:06:03,860
‫É isso que vamos calcular nesta palestra.

92
00:06:03,860 --> 00:06:06,500
‫Vamos apenas fazer a velocidade porque é o mais simples de fazer.

93
00:06:06,800 --> 00:06:11,870
‫O ângulo vai exigir um pouco de manipulação com transformações, que veremos

94
00:06:11,870 --> 00:06:13,280
‫na próxima aula.

95
00:06:13,520 --> 00:06:21,950
‫Então o nó que vamos querer aqui é obter a velocidade do nosso -- dono que nos dá este vetor

96
00:06:21,950 --> 00:06:22,730
‫aqui.

97
00:06:23,480 --> 00:06:29,780
‫E então, na parte de trás desse vetor, queremos encontrar sua magnitude ou seu comprimento para que possamos

98
00:06:29,780 --> 00:06:33,050
‫arrastar essa pesquisa de vetor para a magnitude.

99
00:06:33,260 --> 00:06:37,730
‫E isso foi inteligente aqui, e procurei por magnitude, mas me deu a função chamada

100
00:06:37,730 --> 00:06:38,390
‫comprimento vetorial.

101
00:06:38,400 --> 00:06:42,430
‫Tão claramente a magnitude que eles cronometraram que é sinônimo de comprimento vetorial.

102
00:06:42,440 --> 00:06:45,200
‫Por que queremos obter o comprimento do vetor em vez do próprio vetor?

103
00:06:45,200 --> 00:06:50,720
‫Porque estamos procurando por um flutuador, que é os vetores de velocidade incluem a direção, bem como a

104
00:06:50,720 --> 00:06:53,300
‫velocidade, que vamos precisar para calcular o ângulo.

105
00:06:53,720 --> 00:06:56,900
‫Mas não é disso que precisamos para calcular a velocidade.

106
00:06:57,140 --> 00:06:58,970
‫Tantos desafio para você aqui.

107
00:06:59,090 --> 00:06:59,710
‫Vá em frente.

108
00:06:59,720 --> 00:07:02,330
‫Não há nenhum outro desafio nesta palestra.

109
00:07:02,660 --> 00:07:06,860
‫Vá em frente e defina a velocidade usando este comprimento vetorial.

110
00:07:06,860 --> 00:07:08,960
‫E lembre-se se precisar de algum pino de execução.

111
00:07:08,960 --> 00:07:11,690
‫Estamos tentando fazer isso na animação de atualização do blueprint.

112
00:07:11,690 --> 00:07:12,770
‫Então pause o vídeo e experimente.

113
00:07:12,770 --> 00:07:13,460
‫Ok, bem-vindo de volta.

114
00:07:13,460 --> 00:07:16,130
‫Então a velocidade é o que queremos definir.

115
00:07:16,130 --> 00:07:21,710
‫Então, se eu arrastar isso para o projeto e acertar a velocidade definida, você pode ver que temos um pino de execução de que

116
00:07:21,710 --> 00:07:22,070
‫precisamos.

117
00:07:22,070 --> 00:07:24,980
‫Nós vamos obter isso da animação de atualização do blueprint.

118
00:07:25,490 --> 00:07:31,010
‫E precisamos do pino de dados, que será a velocidade que vem do nosso comprimento vetorial para obter

119
00:07:31,010 --> 00:07:31,820
‫nossa velocidade.

120
00:07:32,330 --> 00:07:35,030
‫Então, devemos ser capazes de ir em frente e salvar e compilar isso.

121
00:07:35,030 --> 00:07:40,100
‫Você pode ver que redefiniu a velocidade para zero porque agora está tentando defini-la de um dono de peão

122
00:07:40,250 --> 00:07:41,840
‫que não está realmente lá.

123
00:07:42,890 --> 00:07:48,830
‫Então o que vamos querer fazer é ir em frente e jogar no mundo e ver o que temos.

124
00:07:49,370 --> 00:07:50,360
‫Ok, isso é muito melhor.

125
00:07:50,360 --> 00:07:56,000
‫Nós temos um -- que fica estático no chão, exceto quando eu me movo, momento em que

126
00:07:56,000 --> 00:07:58,430
‫isso está me dando alguma velocidade.

127
00:07:59,330 --> 00:08:05,660
‫E se você usar uma entrada analógica como um controlador, você pode ver que, alterando as entradas

128
00:08:06,110 --> 00:08:12,350
‫analógicas que alteram a velocidade, podemos alterar a rapidez com que esse cara está se movendo.

129
00:08:14,610 --> 00:08:16,400
‫Agora, obviamente, há dois problemas aqui.

130
00:08:16,410 --> 00:08:20,970
‫A primeira é que se eu sair de um ângulo, estou usando apenas a velocidade absoluta.

131
00:08:21,060 --> 00:08:23,940
‫Portanto, não está ajustando o ângulo em nosso espaço de mesclagem.

132
00:08:23,940 --> 00:08:25,590
‫E assim a animação parece errada.

133
00:08:26,280 --> 00:08:31,590
‫O outro problema é que definitivamente estamos tendo alguns pés escorregando aqui porque a velocidade de nossa animação não

134
00:08:31,590 --> 00:08:34,440
‫está combinando com a velocidade do personagem em nosso jogo.

135
00:08:34,770 --> 00:08:38,880
‫Isso é algo que veremos como corrigir em uma palestra a seguir.

136
00:08:39,390 --> 00:08:39,990
‫Coisas boas.

137
00:08:40,020 --> 00:08:47,280
‫Espero que agora você entenda como as animações devem se conectar à jogabilidade usando o plano de animação e você

138
00:08:47,610 --> 00:08:51,750
‫deve ser capaz de aplicar isso ao seu próprio jogo.

139
00:08:52,020 --> 00:08:57,930
‫Vejo você na próxima palestra, onde estaremos conectando esses ângulos para que esse movimento pareça um pouco

140
00:08:57,930 --> 00:08:58,680
‫mais natural.

