﻿1
00:00:04,350 --> 00:00:06,000
‫Olá e bem-vindo a esta palestra.

2
00:00:06,000 --> 00:00:10,890
‫Vamos ver como podemos escrever coisas no log de saída e especificamente como

3
00:00:10,890 --> 00:00:16,260
‫podemos escrever os valores de nossas variáveis nele que podem nos ajudar a depurar nossos jogos.

4
00:00:16,260 --> 00:00:18,180
‫Vamos mergulhar e ver como isso funciona.

5
00:00:19,410 --> 00:00:26,610
‫Assim, no Blueprint, fomos capazes de escrever coisas na tela quando queríamos exibir rapidamente algumas informações

6
00:00:26,610 --> 00:00:30,060
‫ou, potencialmente, apenas depurar algo no passado.

7
00:00:30,420 --> 00:00:38,790
‫Usamos em C++ uma nova propriedade para fazer isso, mas na verdade podemos fazer isso usando uma instrução de log e é um pouco complicado,

8
00:00:38,790 --> 00:00:43,380
‫irreal, e é por isso que me esquivei de fazê-lo até este ponto.

9
00:00:43,620 --> 00:00:47,640
‫Portanto, estamos um pouco mais familiarizados com a sintaxe C++ antes de apresentá-la a você.

10
00:00:48,180 --> 00:00:56,730
‫Agora, a maneira como funciona é se você tiver a extensão aqui, instale os quatro trechos irreais armazenando caps em cache.

11
00:00:57,000 --> 00:01:00,690
‫Na verdade, isso fica um pouco mais fácil porque você não precisa se lembrar de toda a complexidade

12
00:01:00,690 --> 00:01:01,170
‫da sintaxe.

13
00:01:01,170 --> 00:01:07,800
‫Você apenas digita, faz o log e aparecerá uma caixa de diálogo IntelliSense como esta dizendo que você loga para

14
00:01:07,800 --> 00:01:13,350
‫ajudá-lo a escrever todo o código e você pode pressionar, inserir ou selecionar com o mouse.

15
00:01:13,710 --> 00:01:18,180
‫E então o que você vai ver é que está escrito algo que se parece um pouco com uma função.

16
00:01:18,180 --> 00:01:24,330
‫Na verdade, não é uma função oculta, tem um pouco de mágica irreal acontecendo aqui, mas

17
00:01:24,660 --> 00:01:27,420
‫é essencialmente um pouco como uma função.

18
00:01:27,810 --> 00:01:33,260
‫Então o que vamos fazer aqui é passar alguns argumentos para esta função.

19
00:01:33,270 --> 00:01:40,820
‫O primeiro nos diz que tipo de categoria de log estamos fazendo.

20
00:01:40,830 --> 00:01:44,640
‫O segundo nos diz o nível do log.

21
00:01:44,640 --> 00:01:46,650
‫Então, quão urgente é essencialmente.

22
00:01:47,220 --> 00:01:52,860
‫E então finalmente temos essa coisa aqui, que é basicamente uma função dentro de uma

23
00:01:52,860 --> 00:01:56,520
‫função que nos diz o texto que precisamos imprimir.

24
00:01:57,150 --> 00:01:58,950
‫Então, como isso funciona?

25
00:01:58,950 --> 00:02:05,650
‫Se deixarmos isso em nosso código, passarmos para a compilação de acertos irreais, queremos ver onde isso aparece?

26
00:02:05,670 --> 00:02:09,990
‫Bem, assim que a compilação terminar, vamos em frente e apertamos o play.

27
00:02:10,590 --> 00:02:15,420
‫E o que você está realmente procurando é que não vai aparecer na tela aqui.

28
00:02:15,420 --> 00:02:17,460
‫Vai estar na saída.

29
00:02:17,460 --> 00:02:28,130
‫Faça o login aqui e você pode vê-lo quase aqui dizendo, mostre sua mensagem e temos quantas mensagens?

30
00:02:28,170 --> 00:02:30,720
‫Um dois três quatro cinco.

31
00:02:31,200 --> 00:02:39,210
‫A razão para isso é exibir a mensagem para cada ator em nossa cena que é uma plataforma em

32
00:02:39,210 --> 00:02:39,890
‫movimento.

33
00:02:39,900 --> 00:02:43,740
‫CP Então é por isso que estamos recebendo tantas mensagens.

34
00:02:43,740 --> 00:02:47,850
‫E você pode ver que podemos mudar a mensagem para ser o que quisermos que seja aqui.

35
00:02:48,450 --> 00:02:57,150
‫E também poderíamos colocar mais algumas informações nessa mensagem, como o local de início ou o nome do

36
00:02:57,150 --> 00:02:58,800
‫ator, coisas assim.

37
00:02:59,400 --> 00:03:00,780
‫Aqui vamos nos.

38
00:03:00,780 --> 00:03:04,920
‫Então temos um log de saída, temos nossa mensagem, e você pode começar a ver quais são as categorias sobre

39
00:03:04,920 --> 00:03:06,030
‫as quais eu estava falando.

40
00:03:06,060 --> 00:03:13,650
‫Você pode ver que temos log 10 p. m. , mas acima temos log de áudio log, mixer de áudio, Log World.

41
00:03:13,650 --> 00:03:18,420
‫Portanto, existem diferentes categorias de registro que nos ajudam a distinguir de onde vem essa mensagem,

42
00:03:18,420 --> 00:03:20,760
‫de qual parte do Unreal está vindo.

43
00:03:21,180 --> 00:03:26,730
‫Mas a temperatura do log é principalmente o que vamos usar porque é apenas um local temporário para

44
00:03:26,730 --> 00:03:29,310
‫desconectar mensagens de depuração e depois exibir.

45
00:03:29,310 --> 00:03:35,160
‫Este é o nível padrão, nível de log, mas podemos ter mensagens como um monte de coisas

46
00:03:35,160 --> 00:03:39,330
‫diferentes que podem ser exibidas ou qualquer valor desta tabela aqui.

47
00:03:39,330 --> 00:03:43,530
‫Então você vê display aqui imprime uma mensagem no console e no arquivo de log.

48
00:03:43,710 --> 00:03:48,120
‫Temos o log aqui que imprime uma mensagem apenas no arquivo de log e não é exibido no console.

49
00:03:48,120 --> 00:03:52,860
‫Então, isso é para coisas em que você realmente não quer que apareça tanto, mas pode querer usá-lo para

50
00:03:52,860 --> 00:03:53,340
‫depuração.

51
00:03:53,340 --> 00:03:58,530
‫Se você está depurando o jogo de alguém e ele foi executado em sua máquina, eles estão enviando um arquivo de log.

52
00:03:58,860 --> 00:04:00,180
‫Então você tem aviso.

53
00:04:00,210 --> 00:04:06,810
‫Isso é para quando as coisas parecem estar dando errado e imprime no console de log e também está em

54
00:04:06,810 --> 00:04:07,380
‫amarelo.

55
00:04:07,560 --> 00:04:14,040
‫Então temos um erro que imprime em vermelho e depois fatal, basicamente imprime no console e trava o

56
00:04:14,730 --> 00:04:15,450
‫motor.

57
00:04:15,450 --> 00:04:21,690
‫Então você meio que quer usar este como último recurso, mas permite que você tenha diferentes níveis no arquivo

58
00:04:21,690 --> 00:04:22,440
‫de log.

59
00:04:22,440 --> 00:04:27,270
‫E eu vou mostrar a vocês como fica se colocarmos mensagens diferentes aqui.

60
00:04:27,270 --> 00:04:32,760
‫Então eu vou copiar a linha para logging e vou fazer três delas.

61
00:04:32,760 --> 00:04:37,920
‫Teremos uma exibição, um aviso e um erro.

62
00:04:37,980 --> 00:04:40,860
‫Agora, esses são normalmente os níveis que usaremos.

63
00:04:40,860 --> 00:04:43,950
‫Então vamos em frente e dar uma olhada e ver como eles se parecem.

64
00:04:43,950 --> 00:04:49,110
‫Vamos entrar no Unreal, aperte o botão de compilação e pare e reinicie o jogo.

65
00:04:49,110 --> 00:04:54,990
‫E, a propósito, você pode abrir o log de saída pressionando a tecla til duas vezes.

66
00:04:55,320 --> 00:05:02,040
‫Ele traz lá você vai, temos um log de saída e você pode ver que temos três conjuntos de mensagens.

67
00:05:02,040 --> 00:05:06,780
‫A tela que está apenas no aviso branco liso, que está em amarelo, se destaca um pouco

68
00:05:06,780 --> 00:05:09,540
‫mais, uma seta, obviamente, que se destaca muito mais.

69
00:05:09,720 --> 00:05:12,330
‫Agora podemos adicionar dados às nossas mensagens de log.

70
00:05:12,330 --> 00:05:18,540
‫Vou apenas deletar o aviso, uma linha de erro do log e podemos adicionar algumas.

71
00:05:18,640 --> 00:05:21,820
‫Dados nesta string que serão impressos da maneira que fazemos.

72
00:05:21,820 --> 00:05:28,480
‫Isto é, por exemplo, se eu quiser imprimir a distância de movimento configurada para uma plataforma específica que

73
00:05:28,750 --> 00:05:35,200
‫é bastante simples de fazer, podemos dizer distância de movimento configurada, e esse é o texto que

74
00:05:35,200 --> 00:05:35,920
‫aparecerá.

75
00:05:36,220 --> 00:05:37,810
‫Vou colocar dois pontos aqui.

76
00:05:37,810 --> 00:05:44,260
‫E lembre-se, tudo isso está entre aspas duplas para garantir que estamos incluindo no texto.

77
00:05:45,100 --> 00:05:51,220
‫E então podemos usar um sinal de porcentagem seguido do caractere F.

78
00:05:51,700 --> 00:05:57,150
‫E você vê que fica destacado de maneira diferente porque isso é conhecido como especificação de formato.

79
00:05:57,310 --> 00:06:01,660
‫É algo que vem de C lá atrás na história.

80
00:06:02,050 --> 00:06:07,510
‫E essencialmente normalmente você faz um sinal de porcentagem e então alguma letra você pode ver as diferentes letras

81
00:06:07,510 --> 00:06:08,140
‫aqui embaixo.

82
00:06:08,440 --> 00:06:15,490
‫O F corresponde a um ponto flutuante decimal e você pode ver um exemplo de como a saída se parece

83
00:06:15,640 --> 00:06:17,200
‫na coluna de exemplo.

84
00:06:17,530 --> 00:06:26,290
‫E há muitas outras coisas aqui que podemos representar com D ou I um inteiro decimal assim.

85
00:06:26,950 --> 00:06:30,520
‫Então estamos usando F porque temos um número de ponto flutuante.

86
00:06:30,940 --> 00:06:35,170
‫E então o que temos que fazer é adicionar outro argumento à função de log de consulta.

87
00:06:35,170 --> 00:06:43,480
‫Portanto, certifique-se de estar fazendo isso depois de fechar os colchetes para esta função de texto e, em vez disso, estamos

88
00:06:43,480 --> 00:06:45,490
‫colocando uma vírgula depois aqui.

89
00:06:45,490 --> 00:06:51,700
‫Então, entre esses dois colchetes, deve estar dentro do conjunto externo, mas fora do conjunto interno, se isso

90
00:06:51,700 --> 00:06:52,450
‫fizer sentido.

91
00:06:52,990 --> 00:07:00,850
‫E então o que podemos fazer é passar o valor de nossa variável para que possamos fazer a variável de distância de movimento,

92
00:07:00,850 --> 00:07:04,300
‫então vamos ver isso real e ver isso em ação.

93
00:07:04,330 --> 00:07:11,110
‫Eu apertei o botão de compilação, fechei a janela de compilação e apertei play e então apertei Til duas vezes para abrir o

94
00:07:11,110 --> 00:07:11,680
‫log.

95
00:07:11,950 --> 00:07:17,470
‫E você pode ver que nossa distância de movimento configurada está aparecendo para as diferentes

96
00:07:17,770 --> 00:07:24,010
‫plataformas, 505 cem para as duas plataformas móveis e 1500 para os três empurrões que temos na cena.

97
00:07:24,160 --> 00:07:29,560
‫Então, uma informação que pode ser um pouco interessante ou instrutiva é que

98
00:07:29,560 --> 00:07:36,610
‫já falamos sobre como ultrapassamos ou ultrapassamos a distância movida e seria interessante saber por que tipo

99
00:07:36,610 --> 00:07:39,250
‫de níveis isso está acontecendo.

100
00:07:39,640 --> 00:07:43,450
‫Então o que podemos fazer é criar uma variável float dentro da instrução if.

101
00:07:43,460 --> 00:07:45,490
‫Portanto, sabemos que atualmente ultrapassamos.

102
00:07:45,490 --> 00:07:49,870
‫Podemos dizer overshoot uma variável float chamada overshoot.

103
00:07:49,870 --> 00:07:56,350
‫Vamos definir um igual à distância percorrida menos a distância percorrida.

104
00:07:56,410 --> 00:07:59,530
‫Então isso nos diz quanto foi o overshoot.

105
00:07:59,770 --> 00:08:04,270
‫Então, eu gostaria que você tentasse registrar a variável de overshoot que acabamos de criar aqui.

106
00:08:04,270 --> 00:08:06,400
‫Portanto, use a função de log YUI.

107
00:08:06,700 --> 00:08:11,260
‫Aqui está para referência pelo menos o tipo de estrutura que você provavelmente usará.

108
00:08:11,500 --> 00:08:19,270
‫Você também pode praticar usando o log do preenchimento automático para colocá-lo e, em seguida, compilar e testar seu código

109
00:08:19,270 --> 00:08:21,040
‫e ver se funciona.

110
00:08:21,190 --> 00:08:22,450
‫Pause o vídeo e vá em frente.

111
00:08:25,600 --> 00:08:26,140
‫OK.

112
00:08:26,140 --> 00:08:26,770
‫Bem vindo de volta.

113
00:08:27,010 --> 00:08:30,550
‫Então, vamos usar a opção de preenchimento automático aqui.

114
00:08:30,820 --> 00:08:33,040
‫Só vou fechar minha barra lateral para ter um pouco mais de espaço.

115
00:08:33,520 --> 00:08:40,210
‫E então dentro disso, se depois de criarmos a variável, vamos digitar você log e pressionar enter e

116
00:08:41,020 --> 00:08:43,210
‫então vamos deixá-la em exibição.

117
00:08:43,330 --> 00:08:51,520
‫Nós vamos fazer a plataforma de texto over, shot por, e então vamos usar percent F e então

118
00:08:52,060 --> 00:08:58,300
‫entre esses dois colchetes, vamos adicionar novos argumentos para a variável overshoot.

119
00:08:58,420 --> 00:09:01,930
‫Assim agora vamos voltar para o Unreal.

120
00:09:02,020 --> 00:09:08,500
‫Aperte o botão de compilação, feche a reprodução do log de codificação ao vivo e toque duas vezes na tecla til.

121
00:09:09,370 --> 00:09:15,280
‫E você pode ver que toda vez que a plataforma está girando, ela está imprimindo uma mensagem de log e

122
00:09:15,280 --> 00:09:18,700
‫dizendo quantas unidades sobrevoadas você pode realmente ver a rede.

123
00:09:18,700 --> 00:09:24,550
‫Em muitos casos, está ultrapassando por alguns, uma quantidade notável de unidades.

124
00:09:24,580 --> 00:09:27,150
‫Três unidades ou cinco unidades.

125
00:09:27,160 --> 00:09:30,130
‫Isso é basicamente um ponto de 5% para três centímetros.

126
00:09:30,460 --> 00:09:35,050
‫É suficiente que ao longo do seu jogo essas plataformas possam estar à deriva.

127
00:09:35,290 --> 00:09:39,160
‫E é ótimo que já implementamos uma correção para isso.

128
00:09:39,220 --> 00:09:39,700
‫Coisas boas.

129
00:09:39,700 --> 00:09:45,220
‫Espero que agora você tenha outra ferramenta em seu arsenal para tentar descobrir o que está acontecendo dentro do

130
00:09:45,220 --> 00:09:45,850
‫seu código.

131
00:09:45,850 --> 00:09:51,160
‫E mais tarde, quando você estiver se sentindo mais confiante em fazer seu próprio código, tentando descobrir o que

132
00:09:51,190 --> 00:09:52,810
‫não está funcionando tão bem.

133
00:09:53,410 --> 00:09:55,780
‫Ok, vejo você na próxima palestra.

