﻿1
00:00:04,440 --> 00:00:05,700
‫Hola y bienvenidos a esta conferencia.

2
00:00:05,700 --> 00:00:11,100
‫Vamos a jugar con compensaciones AIM que permitirán que nuestra malla mueva sus brazos hacia arriba y hacia abajo.

3
00:00:11,370 --> 00:00:15,120
‫Mientras apuntamos hacia arriba y hacia abajo, sumerjámonos y veamos de qué se trata.

4
00:00:16,200 --> 00:00:20,880
‫Entonces, en este momento, si apuntamos hacia arriba y hacia abajo, puede ver que los brazos de nuestros personajes

5
00:00:20,880 --> 00:00:26,310
‫en realidad no están haciendo nada y que el arma no parece que deba estar apuntando hacia arriba y disparando y golpeando

6
00:00:26,310 --> 00:00:28,230
‫el lugar que realmente estamos golpeando. .

7
00:00:28,800 --> 00:00:30,810
‫Entonces, ¿cómo hacemos para cambiar esto?

8
00:00:30,870 --> 00:00:33,390
‫Bueno, es un cambio en un modelo de animación.

9
00:00:33,390 --> 00:00:38,460
‫Así que avancemos y abramos el modelo de animación como punto de partida y acóplelo a nuestra ventana principal.

10
00:00:39,180 --> 00:00:44,190
‫Y luego quiero presentarles un nuevo tipo de activo de animación que no hemos visto antes.

11
00:00:44,190 --> 00:00:46,440
‫Hemos visto espacios mixtos, hemos visto animaciones.

12
00:00:46,800 --> 00:00:53,070
‫Lo siguiente que quiero mostrarles es algo que se llama compensación de animación y, en particular, compensación de

13
00:00:53,070 --> 00:00:53,670
‫puntería.

14
00:00:53,670 --> 00:01:00,600
‫Entonces, si buscamos la palabra clave A0 en las animaciones, estamos buscando estas con un pequeño subrayado azul

15
00:01:00,600 --> 00:01:01,890
‫llamado compensaciones AIM.

16
00:01:02,250 --> 00:01:03,060
‫Y hay un par de ellos.

17
00:01:03,060 --> 00:01:09,090
‫El que me interesa es el combate AOE, que debería estar por aquí en alguna parte.

18
00:01:09,120 --> 00:01:11,460
‫Eran grises, ociosos aoe combat.

19
00:01:11,950 --> 00:01:16,620
‫Entras, seleccionas eso, luego verás que tenemos algo que se parece mucho a nuestro espacio combinado.

20
00:01:16,800 --> 00:01:22,470
‫Excepto que esta vez si mueves la pequeña protuberancia verde, lo que sucede es que está cambiando la

21
00:01:22,470 --> 00:01:25,620
‫dirección en la que apunta la malla de nuestros personajes.

22
00:01:25,620 --> 00:01:30,660
‫Entonces, si nos acercamos a la izquierda, él apunta su arma a la izquierda, si nos acercamos a la derecha,

23
00:01:30,660 --> 00:01:32,460
‫él apunta su arma a la derecha.

24
00:01:32,790 --> 00:01:36,810
‫Y de manera similar con arriba y abajo, si lanzas hacia arriba, él mira hacia arriba, lanzas

25
00:01:36,810 --> 00:01:39,000
‫hacia abajo, él mira hacia abajo e intenta derribar.

26
00:01:39,600 --> 00:01:46,620
‫Ahora, la diferencia con esta y otras animaciones que hemos visto es que esto se conoce como animación

27
00:01:46,620 --> 00:01:47,280
‫aditiva.

28
00:01:47,280 --> 00:01:51,690
‫Si va al panel de detalles, puede ver que es aditivo porque dice configuraciones aditivas y

29
00:01:51,690 --> 00:01:55,680
‫está esta pose basada en animación en la que se basa todo esto.

30
00:01:56,370 --> 00:02:01,500
‫Básicamente, lo que significa cuando es aditivo es que esta animación se puede agregar encima de sus

31
00:02:01,500 --> 00:02:02,400
‫otras animaciones.

32
00:02:02,400 --> 00:02:06,030
‫Entonces está diciendo, puedo apuntar mientras corres.

33
00:02:06,030 --> 00:02:13,020
‫Puedo agregar la información sobre dónde se han movido mis brazos en relación con tu pose de carrera y agregarlos encima.

34
00:02:13,620 --> 00:02:14,670
‫Entonces, ¿cómo se ve esto?

35
00:02:14,670 --> 00:02:22,260
‫Si vamos al modelo de animación, lo que queremos hacer es agregar esta información después de que hayamos agregado toda esta información

36
00:02:22,260 --> 00:02:28,410
‫sobre la locomoción y probablemente no antes de la muerte, porque la muerte debería ser lo último.

37
00:02:29,160 --> 00:02:31,080
‫Así que queremos después de la locomoción.

38
00:02:31,080 --> 00:02:33,690
‫Así que tenemos toda nuestra animación en ejecución que queremos agregar.

39
00:02:33,690 --> 00:02:40,110
‫Además de eso, la pequeña información sobre dónde deben moverse nuestros brazos para que estemos apuntando

40
00:02:40,110 --> 00:02:40,770
‫correctamente.

41
00:02:41,280 --> 00:02:45,000
‫Entonces, para hacer esto, podemos hacer clic con el botón derecho y agregar el desplazamiento del objetivo.

42
00:02:45,000 --> 00:02:47,850
‫También podemos hacerlo desde el navegador de activos y luego buscar A0.

43
00:02:48,240 --> 00:02:53,550
‫Y luego, como dije, estamos buscando esa versión de combate, que es un lugar diferente en este navegador.

44
00:02:53,550 --> 00:02:59,880
‫Curiosamente, si arrastré eso, entonces lo que obtienes es algo con un pin de entrada que dice ¿Cuál es

45
00:02:59,880 --> 00:03:01,620
‫el aviso de pago base?

46
00:03:01,620 --> 00:03:06,810
‫La base de planes de Locomotion no tenía un pin de entrada porque te

47
00:03:07,260 --> 00:03:14,550
‫proporciona toda la animación, mientras que este objetivo se compensa porque es una animación aditiva, requiere algo para agregar encima.

48
00:03:14,550 --> 00:03:19,950
‫Así que necesitas darle una pose base que provendrá de nuestra locomoción, y luego vamos a ingresar

49
00:03:19,950 --> 00:03:26,460
‫eso en nuestra pose falsa de la mezcla, ya sea que estemos muertos o no, porque solo estamos mostrando esto

50
00:03:26,460 --> 00:03:27,990
‫si no estamos muertos.

51
00:03:29,030 --> 00:03:36,710
‫Y luego quiero mostrarles que si tuviera que cambiar el tono a uno o tal vez a 180, en realidad, y

52
00:03:36,710 --> 00:03:41,480
‫seguir adelante y compilar, entonces pueden ver que está mirando hacia arriba.

53
00:03:42,020 --> 00:03:44,540
‫Ahora, otro truco que quiero hacer aquí es en el gráfico de eventos.

54
00:03:44,540 --> 00:03:50,090
‫Por el momento, tenemos una situación bastante desconcertante en la que no podemos hacer algo en la

55
00:03:50,090 --> 00:03:54,830
‫vista previa de animación porque nuestro gráfico de eventos lo sobrescribe con ceros.

56
00:03:54,830 --> 00:04:01,610
‫Una manera fácil de arreglar esto es simplemente marcar aquí si el propietario del peón que tenemos aquí

57
00:04:02,090 --> 00:04:02,910
‫es válido.

58
00:04:02,930 --> 00:04:04,130
‫Es decir, ¿es nulo?

59
00:04:04,850 --> 00:04:10,730
‫Entonces, si poner es válido aquí y el que tiene el signo de interrogación automáticamente nos da estos nodos

60
00:04:11,090 --> 00:04:18,500
‫de ejecución y si pasamos a través de un nodo de ejecución de animación de actualización y solo configuramos las cosas si eso

61
00:04:18,500 --> 00:04:23,900
‫es válido, entonces lo que sucederá es que cuando no estés jugando y no hay un peón

62
00:04:23,900 --> 00:04:26,900
‫allí para darnos la información, nos permitirá establecerlo.

63
00:04:26,900 --> 00:04:28,040
‫Se agregó la vista previa de Anim.

64
00:04:28,610 --> 00:04:36,380
‫Así que ahora puedo cambiar la velocidad y puedes ver que comienza a correr con la compensación de puntería alta.

65
00:04:36,980 --> 00:04:41,030
‫Así que configuremos esto para que nuestro tono sea realmente una variable aquí.

66
00:04:41,030 --> 00:04:47,060
‫Así que voy a hacer clic con el botón derecho en tono y ascender a variable y traer esa variable

67
00:04:47,060 --> 00:04:50,150
‫aquí, que está visible y cambiar su nombre a tono.

68
00:04:51,080 --> 00:04:54,470
‫O, de hecho, seamos más específicos, este es el tono objetivo.

69
00:04:54,470 --> 00:05:00,230
‫Entonces, si seguimos adelante y compilamos, establecemos nuestro objetivo predeterminado por accidente.

70
00:05:00,230 --> 00:05:03,110
‫Queremos establecer eso en cero por defecto.

71
00:05:03,530 --> 00:05:04,820
‫Voy a seguir adelante y compilar eso.

72
00:05:05,270 --> 00:05:10,970
‫Y ahora si seguimos adelante y cambiamos la velocidad y luego cambiamos el tono de puntería.

73
00:05:12,140 --> 00:05:16,850
‫Puedes ver que podemos apuntar hacia arriba y podemos apuntar hacia abajo, que es exactamente lo que queremos.

74
00:05:17,150 --> 00:05:20,120
‫Ahora, el problema aquí es que todavía no se está configurando en un juego.

75
00:05:20,150 --> 00:05:26,660
‫Si subimos y bajamos, nada de eso proviene de la información de nuestra rotación de control y nuestra puntería.

76
00:05:27,170 --> 00:05:31,010
‫Así que tenemos que volver a nuestro gráfico de eventos y obtener algo de esa información aquí.

77
00:05:31,040 --> 00:05:35,810
‫Ahora, solo voy a condimentar un poco las cosas aquí porque esto se está haciendo bastante largo.

78
00:05:36,170 --> 00:05:42,590
‫Y lo que quiero hacer es desactivar este pin válido, quiero poner un nodo de secuencia que me

79
00:05:42,680 --> 00:05:47,670
‫permitirá extender las cosas un poco hacia abajo en la dirección vertical también.

80
00:05:47,690 --> 00:05:52,980
‫Entonces, el nodo de secuencia, en primer lugar, va a configurar la velocidad y el ángulo aquí.

81
00:05:53,000 --> 00:05:57,050
‫Entonces creo que podemos mover esto para que tenga que ver con el casting para fotografiar a un personaje.

82
00:05:57,410 --> 00:06:04,130
‫Creo que podemos bajar esto más verticalmente, conectando ese pin de secuencia y el pin de objeto

83
00:06:04,130 --> 00:06:07,310
‫para tratar de obtener... en un nodo.

84
00:06:07,340 --> 00:06:09,800
‫Luego podemos agregar otro pin en la secuencia.

85
00:06:09,810 --> 00:06:13,580
‫Y esta vez quiero obtener dos datos de nuestro dueño del peón.

86
00:06:14,060 --> 00:06:17,280
‫El primero va a ser una rotación de control.

87
00:06:17,300 --> 00:06:19,820
‫Así que hagamos una rotación de control.

88
00:06:20,450 --> 00:06:26,180
‫Pero esto no va a ser suficiente porque como rotación de control, si dividimos el pasador, pueden ver que

89
00:06:26,180 --> 00:06:29,520
‫tenemos un tono aquí y podríamos intentar establecer ese tono.

90
00:06:29,560 --> 00:06:30,650
‫Vamos a darle una oportunidad.

91
00:06:31,100 --> 00:06:38,540
‫Entonces, si hago un lanzamiento fijo y conecto el nodo de ejecución al nodo de ejecución de nuestra secuencia, agregando

92
00:06:38,540 --> 00:06:44,870
‫un pequeño redireccionamiento a eso, ¿qué sucederá si compilamos, guardamos, presionamos reproducir y luego apuntamos hacia

93
00:06:44,870 --> 00:06:46,100
‫arriba funciona bien?

94
00:06:46,310 --> 00:06:48,530
‫Apuntar hacia abajo no da la vuelta.

95
00:06:48,890 --> 00:06:52,070
‫Entonces las cosas comienzan a verse aún más raras.

96
00:06:52,520 --> 00:06:59,270
‫Ahora, lo que sucede es que esta rotación de control es completamente global y, por lo tanto, no tiene en cuenta

97
00:06:59,270 --> 00:07:02,600
‫la dirección en la que ya está mirando nuestro jugador.

98
00:07:03,080 --> 00:07:10,880
‫Entonces, para tener eso en cuenta, debemos volver al peón y obtener la rotación de actores.

99
00:07:10,880 --> 00:07:18,290
‫Y luego lo que queremos encontrar es la rotación entre la rotación del actor y la rotación de control.

100
00:07:18,680 --> 00:07:22,340
‫Y la forma en que hacemos esto es que voy a desconectar el tono AM.

101
00:07:22,880 --> 00:07:28,700
‫Rompa ese enlace y haga clic con el botón derecho y vuelva a combinar los pines de la estructura si quiero

102
00:07:28,700 --> 00:07:33,230
‫hacer un delta entre esos dos para poder quitar la rotación de control y buscar Delta.

103
00:07:34,270 --> 00:07:41,050
‫Y Delta es básicamente una forma elegante de decir resta entre rotadores.

104
00:07:41,440 --> 00:07:48,760
‫Entonces, lo que queremos hacer es tomar nuestra rotación de control y restar la rotación base, que será

105
00:07:48,790 --> 00:07:50,780
‫nuestra rotación de actores.

106
00:07:50,800 --> 00:07:55,690
‫Así que eso es B, así que será A menos B si te desplazas, eso es lo que hace la rotación delta.

107
00:07:56,170 --> 00:08:01,600
‫Y básicamente queremos decir: Sí, quiero la rotación de control, pero quita toda esa

108
00:08:01,600 --> 00:08:03,580
‫información sobre nuestra rotación activa.

109
00:08:03,580 --> 00:08:10,720
‫Entonces puedo saber si estamos apuntando hacia arriba y hacia abajo en relación con la dirección en la que mira el personaje.

110
00:08:11,230 --> 00:08:17,650
‫Y luego, si divido el valor de retorno oculto de eso y uso el tono desde allí, veremos

111
00:08:17,650 --> 00:08:20,140
‫que todo funciona como se esperaba.

112
00:08:20,140 --> 00:08:26,440
‫Cuando miro hacia arriba mi nombre, cuando miro hacia abajo, estoy apuntando hacia abajo y no importa en qué dirección esté

113
00:08:26,440 --> 00:08:29,380
‫mirando en el mundo, ese siempre será el caso.

114
00:08:29,440 --> 00:08:33,160
‫Así que eso es casi todo para nuestra rotación de objetivos.

115
00:08:33,190 --> 00:08:38,320
‫El único problema es que, por el momento, Ally es incapaz de apuntar así.

116
00:08:38,320 --> 00:08:46,600
‫Entonces, si voy y pongo a un tirador en las escaleras de aquí y luego vamos a tratar de golpearlo,

117
00:08:46,600 --> 00:08:49,180
‫tratar de que venga hacia nosotros.

118
00:08:49,480 --> 00:08:50,230
‫Ahí viene.

119
00:08:50,590 --> 00:08:53,260
‫Puedes ver que solo está disparando hacia la pared.

120
00:08:53,320 --> 00:08:55,960
‫No está tratando de apuntar en absoluto, lo cual es un poco triste.

121
00:08:56,350 --> 00:09:02,260
‫Entonces, ¿qué sucede? Si vamos a nuestro aliado y nuestro árbol de comportamiento, pueden ver que estamos configurando un

122
00:09:02,260 --> 00:09:04,060
‫enfoque predeterminado en una ubicación.

123
00:09:04,060 --> 00:09:10,150
‫Y de forma predeterminada, si establece un enfoque en una ubicación, Unreal no actualizará su rotación de control de la

124
00:09:10,150 --> 00:09:13,270
‫misma manera que no lo hará con el lanzamiento.

125
00:09:13,840 --> 00:09:14,860
‫Eso es un poco triste.

126
00:09:15,010 --> 00:09:21,940
‫Bien, lo que tenemos que hacer es ir a nuestra pizarra y cambiar la ubicación de este jugador para que solo

127
00:09:21,940 --> 00:09:27,730
‫sea una referencia al jugador en lugar de cambiar este vector para que sea un objeto.

128
00:09:27,790 --> 00:09:33,370
‫Así que ahora lo que tenemos es una tecla de tablero en blanco para el jugador, que es un

129
00:09:33,370 --> 00:09:38,530
‫objeto, y podemos cambiar la clase base al actor si queremos, aunque no es particularmente importante.

130
00:09:38,980 --> 00:09:44,560
‫Y luego, lo que eso significa ha terminado en el árbol de comportamiento, podemos cambiar las cosas para que nos

131
00:09:44,560 --> 00:09:49,270
‫movamos en lugar de movernos para aplicar la ubicación, nos estamos moviendo hacia el actor jugador.

132
00:09:49,690 --> 00:09:57,340
‫Podemos configurar el enfoque para que sea el actor del jugador y actualizar la ubicación del jugador si la escena ahora

133
00:09:57,340 --> 00:10:00,370
‫también necesita apuntar a un actor del jugador.

134
00:10:00,370 --> 00:10:05,800
‫Ahora bien, esto no va a funcionar todavía porque nuestra ubicación de actualización del reproductor si la escena está

135
00:10:05,800 --> 00:10:08,110
‫intentando establecer una ubicación en esta clave.

136
00:10:08,350 --> 00:10:10,990
‫Entonces, un pequeño mini desafío para ti, mira si puedes actualizarlo.

137
00:10:10,990 --> 00:10:18,760
‫Entonces, en lugar de establecer la ubicación en ese servicio de árbol de comportamiento, estamos configurando el video de pose del actor real y

138
00:10:18,760 --> 00:10:19,540
‫lo intentamos.

139
00:10:19,660 --> 00:10:19,960
‫Bueno.

140
00:10:19,960 --> 00:10:20,650
‫Bienvenido de nuevo.

141
00:10:20,650 --> 00:10:25,750
‫Así que vamos a pasar al código de Visual Studio y buscar el servicio ASC en particular.

142
00:10:25,750 --> 00:10:29,410
‫Es la ubicación del reproductor de subrayado del servicio, si se ve.

143
00:10:29,890 --> 00:10:32,860
‫Y vamos a cambiar esto a un conjunto de valores establecidos como vector.

144
00:10:32,860 --> 00:10:37,030
‫Se establecerá el valor como objeto, así de simple.

145
00:10:37,030 --> 00:10:41,950
‫Tenemos las opciones de tipos en la pizarra y eso es lo que vamos a contar aquí.

146
00:10:42,370 --> 00:10:46,120
‫Ahora, obviamente, se quejará de que lo que estamos tratando de decir es un vector en lugar de un objeto.

147
00:10:46,510 --> 00:10:52,690
‫Así que simplemente eliminaremos la ubicación del actor de obtención y pasaremos el reproductor, y en su lugar

148
00:10:52,690 --> 00:10:54,610
‫borraremos el valor como antes.

149
00:10:54,610 --> 00:11:00,580
‫Así que podemos volver al editor, presionar, compilar y ver si esta nueva configuración funciona con Aiming for

150
00:11:00,580 --> 00:11:01,580
‫the High.

151
00:11:01,630 --> 00:11:02,710
‫Kate, vamos a sumergirnos.

152
00:11:02,710 --> 00:11:03,310
‫Dale al play.

153
00:11:03,310 --> 00:11:05,560
‫Ve y encuentra ese aire en las escaleras.

154
00:11:06,530 --> 00:11:08,680
‫Haz que intenten venir y menospreciarnos.

155
00:11:08,690 --> 00:11:09,170
‫Vamos.

156
00:11:09,330 --> 00:11:16,730
‫Tengo una cosa más que olvidé del árbol de comportamiento para actualizar es que el jugador puede ver en este momento se

157
00:11:16,730 --> 00:11:23,600
‫ha reiniciado la tecla de pizarra para autoactor queremos que sea jugador básicamente es el conjunto de jugadores vamos y

158
00:11:23,600 --> 00:11:28,820
‫haz ese cambio porque en este momento el yo no venía a perseguirnos ahora nos

159
00:11:29,120 --> 00:11:35,030
‫está persiguiendo y, de hecho, si saltaste, puedes ver que la rotación de objetivos de este tipo

160
00:11:35,030 --> 00:11:35,990
‫está cambiando.

161
00:11:35,990 --> 00:11:40,310
‫Subamos a las escaleras y veamos si puede dispararnos desde las escaleras.

162
00:11:40,970 --> 00:11:41,630
‫Excelente.

163
00:11:41,630 --> 00:11:45,920
‫Ha cambiado su rotación y, de hecho, está disparando directamente hacia nosotros.

164
00:11:46,190 --> 00:11:46,850
‫Ambos son.

165
00:11:47,030 --> 00:11:49,040
‫Lo vimos perder la salud y pronto morirá.

166
00:11:50,540 --> 00:11:51,710
‫Bien, eso es todo por esta conferencia.

167
00:11:51,710 --> 00:11:59,060
‫Hemos agregado una compensación de objetivo y hemos actualizado nuestro aire para que también pueda usarlo para apuntar.

168
00:11:59,120 --> 00:12:03,170
‫En la próxima lección, vamos a hacer algo sobre este divertido correr en el aire.

169
00:12:03,440 --> 00:12:04,190
‫Veré que.

