‫Olá e bem-vindo a esta palestra.
‫Vamos ver como podemos escrever coisas no log de saída e especificamente como
‫podemos escrever os valores de nossas variáveis nele que podem nos ajudar a depurar nossos jogos.
‫Vamos mergulhar e ver como isso funciona.
‫Assim, no Blueprint, fomos capazes de escrever coisas na tela quando queríamos exibir rapidamente algumas informações
‫ou, potencialmente, apenas depurar algo no passado.
‫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,
‫irreal, e é por isso que me esquivei de fazê-lo até este ponto.
‫Portanto, estamos um pouco mais familiarizados com a sintaxe C++ antes de apresentá-la a você.
‫Agora, a maneira como funciona é se você tiver a extensão aqui, instale os quatro trechos irreais armazenando caps em cache.
‫Na verdade, isso fica um pouco mais fácil porque você não precisa se lembrar de toda a complexidade
‫da sintaxe.
‫Você apenas digita, faz o log e aparecerá uma caixa de diálogo IntelliSense como esta dizendo que você loga para
‫ajudá-lo a escrever todo o código e você pode pressionar, inserir ou selecionar com o mouse.
‫E então o que você vai ver é que está escrito algo que se parece um pouco com uma função.
‫Na verdade, não é uma função oculta, tem um pouco de mágica irreal acontecendo aqui, mas
‫é essencialmente um pouco como uma função.
‫Então o que vamos fazer aqui é passar alguns argumentos para esta função.
‫O primeiro nos diz que tipo de categoria de log estamos fazendo.
‫O segundo nos diz o nível do log.
‫Então, quão urgente é essencialmente.
‫E então finalmente temos essa coisa aqui, que é basicamente uma função dentro de uma
‫função que nos diz o texto que precisamos imprimir.
‫Então, como isso funciona?
‫Se deixarmos isso em nosso código, passarmos para a compilação de acertos irreais, queremos ver onde isso aparece?
‫Bem, assim que a compilação terminar, vamos em frente e apertamos o play.
‫E o que você está realmente procurando é que não vai aparecer na tela aqui.
‫Vai estar na saída.
‫Faça o login aqui e você pode vê-lo quase aqui dizendo, mostre sua mensagem e temos quantas mensagens?
‫Um dois três quatro cinco.
‫A razão para isso é exibir a mensagem para cada ator em nossa cena que é uma plataforma em
‫movimento.
‫CP Então é por isso que estamos recebendo tantas mensagens.
‫E você pode ver que podemos mudar a mensagem para ser o que quisermos que seja aqui.
‫E também poderíamos colocar mais algumas informações nessa mensagem, como o local de início ou o nome do
‫ator, coisas assim.
‫Aqui vamos nos.
‫Então temos um log de saída, temos nossa mensagem, e você pode começar a ver quais são as categorias sobre
‫as quais eu estava falando.
‫Você pode ver que temos log 10 p. m. , mas acima temos log de áudio log, mixer de áudio, Log World.
‫Portanto, existem diferentes categorias de registro que nos ajudam a distinguir de onde vem essa mensagem,
‫de qual parte do Unreal está vindo.
‫Mas a temperatura do log é principalmente o que vamos usar porque é apenas um local temporário para
‫desconectar mensagens de depuração e depois exibir.
‫Este é o nível padrão, nível de log, mas podemos ter mensagens como um monte de coisas
‫diferentes que podem ser exibidas ou qualquer valor desta tabela aqui.
‫Então você vê display aqui imprime uma mensagem no console e no arquivo de log.
‫Temos o log aqui que imprime uma mensagem apenas no arquivo de log e não é exibido no console.
‫Então, isso é para coisas em que você realmente não quer que apareça tanto, mas pode querer usá-lo para
‫depuração.
‫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.
‫Então você tem aviso.
‫Isso é para quando as coisas parecem estar dando errado e imprime no console de log e também está em
‫amarelo.
‫Então temos um erro que imprime em vermelho e depois fatal, basicamente imprime no console e trava o
‫motor.
‫Então você meio que quer usar este como último recurso, mas permite que você tenha diferentes níveis no arquivo
‫de log.
‫E eu vou mostrar a vocês como fica se colocarmos mensagens diferentes aqui.
‫Então eu vou copiar a linha para logging e vou fazer três delas.
‫Teremos uma exibição, um aviso e um erro.
‫Agora, esses são normalmente os níveis que usaremos.
‫Então vamos em frente e dar uma olhada e ver como eles se parecem.
‫Vamos entrar no Unreal, aperte o botão de compilação e pare e reinicie o jogo.
‫E, a propósito, você pode abrir o log de saída pressionando a tecla til duas vezes.
‫Ele traz lá você vai, temos um log de saída e você pode ver que temos três conjuntos de mensagens.
‫A tela que está apenas no aviso branco liso, que está em amarelo, se destaca um pouco
‫mais, uma seta, obviamente, que se destaca muito mais.
‫Agora podemos adicionar dados às nossas mensagens de log.
‫Vou apenas deletar o aviso, uma linha de erro do log e podemos adicionar algumas.
‫Dados nesta string que serão impressos da maneira que fazemos.
‫Isto é, por exemplo, se eu quiser imprimir a distância de movimento configurada para uma plataforma específica que
‫é bastante simples de fazer, podemos dizer distância de movimento configurada, e esse é o texto que
‫aparecerá.
‫Vou colocar dois pontos aqui.
‫E lembre-se, tudo isso está entre aspas duplas para garantir que estamos incluindo no texto.
‫E então podemos usar um sinal de porcentagem seguido do caractere F.
‫E você vê que fica destacado de maneira diferente porque isso é conhecido como especificação de formato.
‫É algo que vem de C lá atrás na história.
‫E essencialmente normalmente você faz um sinal de porcentagem e então alguma letra você pode ver as diferentes letras
‫aqui embaixo.
‫O F corresponde a um ponto flutuante decimal e você pode ver um exemplo de como a saída se parece
‫na coluna de exemplo.
‫E há muitas outras coisas aqui que podemos representar com D ou I um inteiro decimal assim.
‫Então estamos usando F porque temos um número de ponto flutuante.
‫E então o que temos que fazer é adicionar outro argumento à função de log de consulta.
‫Portanto, certifique-se de estar fazendo isso depois de fechar os colchetes para esta função de texto e, em vez disso, estamos
‫colocando uma vírgula depois aqui.
‫Então, entre esses dois colchetes, deve estar dentro do conjunto externo, mas fora do conjunto interno, se isso
‫fizer sentido.
‫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,
‫então vamos ver isso real e ver isso em ação.
‫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
‫log.
‫E você pode ver que nossa distância de movimento configurada está aparecendo para as diferentes
‫plataformas, 505 cem para as duas plataformas móveis e 1500 para os três empurrões que temos na cena.
‫Então, uma informação que pode ser um pouco interessante ou instrutiva é que
‫já falamos sobre como ultrapassamos ou ultrapassamos a distância movida e seria interessante saber por que tipo
‫de níveis isso está acontecendo.
‫Então o que podemos fazer é criar uma variável float dentro da instrução if.
‫Portanto, sabemos que atualmente ultrapassamos.
‫Podemos dizer overshoot uma variável float chamada overshoot.
‫Vamos definir um igual à distância percorrida menos a distância percorrida.
‫Então isso nos diz quanto foi o overshoot.
‫Então, eu gostaria que você tentasse registrar a variável de overshoot que acabamos de criar aqui.
‫Portanto, use a função de log YUI.
‫Aqui está para referência pelo menos o tipo de estrutura que você provavelmente usará.
‫Você também pode praticar usando o log do preenchimento automático para colocá-lo e, em seguida, compilar e testar seu código
‫e ver se funciona.
‫Pause o vídeo e vá em frente.
‫OK.
‫Bem vindo de volta.
‫Então, vamos usar a opção de preenchimento automático aqui.
‫Só vou fechar minha barra lateral para ter um pouco mais de espaço.
‫E então dentro disso, se depois de criarmos a variável, vamos digitar você log e pressionar enter e
‫então vamos deixá-la em exibição.
‫Nós vamos fazer a plataforma de texto over, shot por, e então vamos usar percent F e então
‫entre esses dois colchetes, vamos adicionar novos argumentos para a variável overshoot.
‫Assim agora vamos voltar para o Unreal.
‫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.
‫E você pode ver que toda vez que a plataforma está girando, ela está imprimindo uma mensagem de log e
‫dizendo quantas unidades sobrevoadas você pode realmente ver a rede.
‫Em muitos casos, está ultrapassando por alguns, uma quantidade notável de unidades.
‫Três unidades ou cinco unidades.
‫Isso é basicamente um ponto de 5% para três centímetros.
‫É suficiente que ao longo do seu jogo essas plataformas possam estar à deriva.
‫E é ótimo que já implementamos uma correção para isso.
‫Coisas boas.
‫Espero que agora você tenha outra ferramenta em seu arsenal para tentar descobrir o que está acontecendo dentro do
‫seu código.
‫E mais tarde, quando você estiver se sentindo mais confiante em fazer seu próprio código, tentando descobrir o que
‫não está funcionando tão bem.
‫Ok, vejo você na próxima palestra.