‫Olá e bem-vindo.
‫Nesta palestra, vamos fazer nossos próprios componentes de cena para o grabber,
‫e vamos imprimir sua rotação para que possamos ver que ele está realmente conectado à câmera e
‫a rotação da câmera está afetando seu rotação.
‫Vamos mergulhar e ver como isso funciona.
‫Agora, se você se lembra de ver a demonstração, eu gostaria de
‫ter uma pequena estátua em uma dessas celas e nos permitir pegá-la e levá-la para esta alcova para colocação.
‫Agora, o problema aqui é que eu não tenho aquela estátua e não tenho como saber se estou apontando
‫para ela quando estou tentando pegá-la.
‫Então é isso que vamos tentar resolver nas próximas palestras.
‫Então, em primeiro lugar, vamos colocar uma estátua para usarmos.
‫Então vou abrir um pouco a porta da cela.
‫Então, vamos clicar em uma dessas células e eu vou descer até a porta e vou girá-la bem aberta
‫para que possamos entrar.
‫A próxima coisa que vou fazer é que está muito escuro aqui, então vou colocar um novo holofote aqui.
‫Então vamos para o botão de adicionar rapidamente, pegar uma luz e encontrar um holofote e beber isso em nossa cena e arrastá-lo um
‫pouco pela parede para que basicamente estejamos alertando o jogador para o fato de que,
‫ei, há algo de interesse neste canto que você pode querer prestar atenção.
‫Agora vamos selecionar a pasta medieval dungeon e procurar por estátua.
‫E você pode ver que temos uma dourada e temos uma pedra, a que eu vou pegar, na
‫verdade provavelmente a gárgula aqui.
‫E eu preciso dar algum tipo de coisa na parte de baixo, porque eu sei que essa malha tem um buraco na
‫parte de baixo.
‫Então, se entrarmos, virarmos de cabeça para baixo, vai ficar horrível porque na verdade não tem um
‫verso.
‫Então, o que vou fazer é pegar essa gárgula e girá-la bem, vou adicionar uma
‫malha embaixo dela.
‫Então vamos procurar alguma malha de terra.
‫E você pode ver que temos um pouco de sujeira aqui que eu vou pegar e dar um tapa no ator
‫de estátua de gárgula existente.
‫Então é Dirt Mound e você pode ver que é absolutamente enorme em comparação, mas então podemos consertar isso com um
‫pouco de ferramentas de escala.
‫Então este monte de terra, então eu vou em frente e dimensionar isso bloqueado no painel de detalhes.
‫Talvez eu comece com o ponto um e veja como isso é pequeno.
‫E vamos realmente girar todo o ator gárgula para que possamos ver corretamente o que estamos fazendo.
‫Vamos dar uma olhada naquele monte de terra.
‫O monte de sujeira precisa girar em 180 graus.
‫E então vamos usar a ferramenta de escala para torná-lo um pouco maior.
‫Vou apenas refinar essas figuras um pouco usando o painel de detalhes, agora estou esmagando-o bem
‫com a escala na areia e aperfeiçoando-o.
‫Acho que o suficiente para parecer que há um fundo para isso.
‫E então podemos colocar esta gárgula girada 90 graus novamente e tentar colocá-la em algum lugar no
‫canto sob este holofote.
‫Então esse é o objetivo para nós conseguirmos essa malha.
‫Mas como vamos fazer isso?
‫Vamos precisar de um componente especial para fazer isso, e poderíamos usar um componente ativo.
‫Mas, neste caso, fará mais sentido usar um segundo componente.
‫Vamos ver por quê.
‫Vamos em frente e vá para a raiz da nossa pasta de conteúdo, limpe a pesquisa e abra nosso player
‫BP e vamos abrir o editor de blueprint completo.
‫E o que queremos fazer é essencialmente ter algo que rastreie quando estivermos movendo nossa câmera em
‫primeira pessoa.
‫Então, enquanto eu jogo aqui, você pode ver que estou olhando ao redor e minha câmera também está olhando ao redor.
‫Então, o que eu quero é algo que aponte na mesma direção da minha câmera.
‫Portanto, o lógico é anexar um componente a esta câmera que permita que ela gire automaticamente com aquela câmera em primeira
‫pessoa e esteja sempre apontando, sempre com seu vetor de frente apontando na direção de
‫frente da câmera.
‫Então é isso que vamos fazer, e é exatamente aí que precisamos de um componente
‫de cena, um componente que pode ser anexado a outros componentes de cena e tem uma transformação, tem uma localização, rotação e escala.
‫Então, a maneira como vamos fazer isso é ir para o botão adicionar nos componentes.
‫Mas poderíamos fazer isso de outra maneira.
‫Também podemos ir para a nossa gaveta de conteúdo, clicar na pasta de classes C++ e clicar em adicionar e clicar em adicionar
‫nova classe C++.
‫E então o que podemos fazer é ir e rolar para baixo até onde você vê que diz componentes de cena.
‫Então nós vamos fazer.
‫Um novo componente de cena em vez de um componente ativo.
‫Eu vou seguir em frente e bater em seguida.
‫Agora vamos chamar isso de agarrador porque é um componente que será eventualmente responsável
‫por descobrir o que agarrar e então segurá-lo para que, quando nos movermos, o agarrador o leve
‫conosco.
‫Então, vamos seguir em frente e criar essa classe, que nos leva ao código do Visual Studio com
‫um pegue-o e pegue-o na etapa.
‫E você pode ver que ele criou um novo grabber novamente com esse novo prefixo para componentes e
‫herda dos componentes que você viu.
‫É assim que sabemos que é um componente visto.
‫Novamente com essa herança sendo o é um relacionamento.
‫Se passamos para a mudança para H, você pode ver que a herança dessa árvore de você atua como um componente.
‫Então, você age como um componente, mas, caso contrário, parece exatamente o mesmo.
‫Tem começar a jogar.
‫Tem um componente de carrapato.
‫E isso porque na verdade um componente de cena é um ato, um componente.
‫Ele apenas adiciona mais algumas funcionalidades no topo.
‫Então, agora que é um componente de cena, devemos ser capazes de ir até Ed, ir para o plano de BP e
‫daqui para adicionar e procurar o grabber e o grabber.
‫Agora, você vê, eu tinha minha câmera em primeira pessoa selecionada, então adicionei automaticamente o grabber como um
‫componente filho dessa câmera em primeira pessoa.
‫Então eu gostaria de desafiá-lo a imprimir a rotação do grabber.
‫A maneira como vamos fazer isso é obter a rotação do componente desta vez, não a rotação do eixo.
‫Porque o importante é realmente como esse componente específico é girado porque está conectado
‫à câmera.
‫Vamos convertê-lo em uma string usando a função de duas strings compactas da rotação F para
‫este momento porque não estamos usando um vetor F para rotação, na verdade ele tem uma função de duas strings compactas.
‫No entanto, vamos imprimir isso usando o log EWI.
‫Lembre-se de colocar uma estrela antes de uma string por razões estranhas e então vamos compilá-la, testá-la e
‫ver se ela altera a rotação?
‫Ele se move com a câmera?
‫Pause o vídeo e vá em frente.
‫OK.
‫Bem vindo de volta.
‫Então, vamos imprimir isso em tecnologia.
‫Eu não mencionei isso, mas espero ter descoberto isso.
‫E o que vamos fazer é, antes de tudo, criar um rotador de aplicativos.
‫Ele armazenará minha rotação e obteremos a rotação de componentes, parênteses.
‫E a partir disso, precisamos obter uma string F, que será a string de rotação, o que faremos
‫fazendo o meu ponto de rotação.
‫Para compactar.
‫Parênteses de string.
‫Agora vamos digitar seu log e teremos a rotação do grabber percent s e então vamos lembrar a
‫estrela antes da nossa string de rotação.
‫Então agora vamos em frente e compilar isso.
‫E parece que foi um sucesso, o que é sempre bom de se ver.
‫E então vamos em frente e apertar play e ter nosso log de saída encaixado no layout para que eu
‫possa vê-lo o tempo todo.
‫Você pode ver que a rotação está realmente sendo impressa e, à medida que eu me movo, você pode ver meu tom
‫e o P está mudando quando eu viro de um lado para o outro, o Bisonho está mudando, mas em nenhum momento está meio que inclinando
‫de lado para o lado, qual seria o papel.
‫Então é por isso que na representação compacta, o papel é sempre definido como zero.
‫Então você pode pensar nisso como um pitch de papéis em seu gosto em um avião.
‫Então parece que isso está atualizando corretamente, como eu esperaria para a câmera e estou muito feliz com
‫esse resultado.
‫Coisas boas.
‫Então, vimos como podemos criar nossos próprios componentes de cena, como podemos
‫anexar essas coisas e como eles têm sua própria noção de rotação, localização e escala.
‫Nos vemos na próxima palestra.