‫Nesta palestra, vamos criar uma classe C++.
‫Agora precisamos de uma classe que possamos usar para nossos peões.
‫Agora estou dizendo peões, no plural, porque haverá dois peões diferentes em nosso jogo.
‫Haverá o tanque que usamos para rolar o nível, e haverá uma
‫torre que será nosso inimigo para que possamos criar uma classe de peões base.
‫E isso terá a funcionalidade básica que o tanque e a torre compartilharão.
‫E desta forma podemos criar nossas duas classes filhas, o tanque e a torre.
‫Então, eles herdarão qualidades da classe base de peões e essas são coisas que ambos
‫os peões compartilharão, como ter a malha, ter um componente de cápsula e a capacidade de
‫lançar projéteis.
‫Agora, vamos entrar em todos esses recursos em vídeos futuros para este vídeo.
‫Vamos apenas criar a classe C++ e adicionar algumas variáveis básicas a ela.
‫Então esta é a nossa motivação para criar nossa primeira classe C++.
‫Agora estamos prontos para começar a criar algumas classes C++ para este projeto.
‫Agora você verá aqui no navegador de conteúdo que não há pastas para classes C++.
‫Isso porque ainda não criamos nenhum, mas estamos prestes a escrever agora para que possamos ir até as ferramentas
‫e selecionar uma nova classe C++.
‫E aqui é onde vamos escolher a classe pai para a classe que vamos criar.
‫E por padrão, temos várias opções aqui para escolher.
‫Isso é algo que você deveria ter visto em aulas anteriores.
‫Então agora temos algumas decisões a tomar aqui.
‫Por um lado, qual classe pai vamos escolher?
‫Nós temos.
‫O primeiro é nenhum.
‫Isso basicamente nos permitiria criar uma classe C++ simples e antiga, mas precisaremos de algumas funcionalidades extras.
‫Por um lado, queremos ser capazes de colocar uma instância desse objeto no mundo.
‫Portanto, não podemos fazer isso com uma classe C++ simples e antiga.
‫Poderíamos fazer isso com um personagem ou um peão ou um ator, mas qual desses é mais apropriado para
‫o que queremos fazer?
‫Bem, precisamos dar um passo para trás e pensar sobre o que exatamente estamos tentando criar aqui.
‫Estamos tentando criar um tanque que possamos controlar e mover pelo nível e atirar projéteis para que possamos causar danos
‫e todas essas coisas boas em nossa pasta de ativos.
‫Só para nos lembrar, temos esta pasta de malhas aqui e temos a base do tanque e temos a torre do tanque.
‫Estas são duas malhas diferentes que estarão em nossa classe.
‫E por isso precisamos da capacidade de ter malhas.
‫E, portanto, uma classe C++ simples não tem essa capacidade.
‫Então vamos pensar sobre isso por um segundo.
‫Qual classe pai devemos usar?
‫Bem, a primeira aula que provavelmente deve vir à sua mente é a aula de ator.
‫Agora, a classe ator tem a capacidade de ser colocada no mundo.
‫Então é um ótimo começo.
‫Ele também tem a capacidade de ter uma representação visual.
‫Seja uma malha ou qualquer outra coisa, ela pode realmente ser vista quando você a coloca no mundo, desde que você
‫dê uma malha ou o que quer que você queira ver.
‫Agora derivado de ator, temos a classe -- e o -- herda todas essas
‫qualidades da classe ator, exceto que possui qualidades adicionais, como a capacidade de ser possuído por um controlador.
‫Agora, toda essa coisa de posse é algo que entrará em mais detalhes mais tarde, mas por enquanto, apenas entenda
‫que isso significa que um -- pode ser controlado por um jogador.
‫Então, se você estiver pressionando um botão do mouse ou uma tecla do teclado, isso pode ser configurado e configurado para que
‫possamos mover o -- ao redor.
‫Então isso soa como algo que definitivamente queremos para o nosso tanque.
‫Então, ao manipular a entrada de movimento, o -- está soando como uma boa escolha agora derivada da classe --
‫e, assim, herdando todas as coisas que o -- tem, mais todas as coisas que o -- herdou de
‫sua classe pai.
‫Nós temos a classe de personagem que tem algumas coisas específicas de personagem.
‫Por exemplo, tem algo chamado componente de movimento de personagem.
‫Agora, um -- não tem isso.
‫Um componente de movimento do personagem dá ao personagem habilidades extras, como diferentes modos
‫de movimento, como voar, nadar, agachar e outras coisas específicas dos personagens.
‫A classe de personagem é boa para personagens bípedes e não vai funcionar muito bem para personagens não bípedes,
‫coisas que não são criaturas com duas pernas.
‫E embora fosse muito legal ter um tanque voando ao redor do nível e jogando bombas
‫em tudo que ele vê, não vamos fazer nada tão complicado nesta seção.
‫Nós vamos apenas fazer um tanque que pode rolar por aí.
‫Então, nós realmente não precisamos de um componente de movimento de personagem ou qualquer coisa específica de personagem especial.
‫Então, para isso, acho que um -- é perfeito para o que estamos tentando alcançar.
‫Então, vou desafiá-lo a criar uma nova classe C++, criar uma classe baseada em -- e nomear essa nova
‫classe baseada em --.
‫Agora você pode deixar todas as configurações como estão.
‫No assistente de criação de classe.
‫Você não precisa alterar o caminho do arquivo ou algo assim, então pause o vídeo e crie
‫sua primeira classe C++ para este projeto.
‫Então, de volta aqui no nível.
‫Então vamos até as ferramentas e criar uma nova classe C++.
‫Ainda não criei a classe C++.
‫Acabei de fechar isso para voltar a esse slide.
‫Mas agora que estou de volta, estou pronto para criar minha primeira classe C++ para este projeto e vou escolher -- e
‫você verá isso toda vez que passar o mouse sobre elas.
‫Você provavelmente já viu isso antes.
‫Recebemos uma dica de ferramenta que aparece e diz: -- é a classe base de todos os atores que podem ser possuídos
‫pelos jogadores.
‫Ou eu sei que parece muito empolgante, mas vamos configurar isso para ser móvel por entrada de um
‫jogador.
‫Então isso é perfeito.
‫Continua dizendo que são as representações físicas de jogadores e criaturas em um nível.
‫Então, em outras palavras, assim que criarmos esse tanque, ele nos representará como jogadores do mundo.
‫Muito legal.
‫Então selecione -- e clique em próximo e ele está nos mostrando o caminho onde vai colocar essa classe em nosso projeto e você
‫verá que está nos tanques de ajuste de barra de origem.
‫Agora vamos querer nomear nosso novo -- porque meu -- é um nome horrível e muito vago.
‫Precisamos de algo um pouco mais específico agora.
‫Vamos planejar usar isso como uma classe base, o que significa que vamos derivar classes dessa
‫classe para que possamos chamá-la de --.
‫Agora, eu sei que não é muito melhor do que o meu --, mas ei, está nos dizendo que isso é uma base --.
‫Isso é algo que vamos derivar de classes filhas no futuro.
‫Chegaremos a isso.
‫Mas por enquanto, vamos chamar isso de base -- e vamos clicar em Create Class.
‫Tudo bem.
‫Portanto, o código do Visual Studio foi aberto para nós com nossa nova classe.
‫Temos com base em H e com base em CP.
‫Agora podemos fechar esta barra lateral clicando no ícone do Explorer e podemos dar uma olhada no que o código
‫de V gerou para nós.
‫Então, por padrão, obtemos o construtor de classe, bem como três funções begin, play, tick e set up
‫player input component.
‫Agora você deve estar familiarizado com Begin, Play e marque os comentários aqui.
‫Explique o que eles fazem.
‫Configurar o componente de entrada do jogador é algo que o peão recebe e esta função nos permite lidar com
‫a entrada de uma tecla do teclado ou um clique do mouse e aprenderemos mais sobre como isso funciona em
‫futuros vídeos em banda base.
‫CP Essas funções são definidas para nós, mas são bem simples e não mudarão isso em vídeos
‫futuros também.
‫Então, neste vídeo, criamos nossa primeira classe C++ e o próximo vídeo discutirá componentes e por que gostaríamos de
‫adicionar alguns à nossa nova classe.
‫Vejo você em breve.