Fundamentos de Unreal Engine 4 e C++
4.7 (6 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
145 students enrolled

Fundamentos de Unreal Engine 4 e C++

Aprenda os fundamentos da programação de jogos com Unreal Engine 4 e C++
New
4.7 (6 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
145 students enrolled
Created by Thales Sabino
Last updated 8/2020
Portuguese
Portuguese [Auto]
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 17.5 hours on-demand video
  • 1 article
  • 1 downloadable resource
  • 1 coding exercise
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Fundamentos e Conceitos da Programação de Jogos
  • Game Loop, Condições de Término e Inteligência Artificial
  • Cíclo de desenvolvimento usando Unreal Engine
  • Programar um jogo da velha no terminal
  • Aprenda a estrutura de um projeto Unreal Engine 4
  • Criar um level caixa cinza para programar a mecânica do jogo
  • Como debuggar seu código para encontrar erros
  • Comunicação entre C++ e Blueprints
  • Como responder a eventos que acontecem dentro do jogo
  • Tratar colisões e sobreposições
  • Gameplay Framework: GameState, GameMode e GameInstance
  • Atores (Actors), Peões (Pawns) e Personagens (Characters)
  • Baixar assets do Marketplace para usar no seu jogo
  • Construir uma Blueprint de Animação para o personagem
  • Usar temporizadores (timers) para programar atrasos no jogo
  • Adicionar áudio, efeitos de partículas e materiais
  • Utilizar ferramentas de manipulação de atores
Course content
Expand all 81 lectures 17:39:43
+ Introdução e Configuração do Ambiente de Trabalho
6 lectures 38:07

Nesta aula mostrarei os dois projetos que iremos fazer no curso, o Terminal da Velha e o Parapong.

Preview 04:52

Nesta aula vamos instalar o Visual Studio 2019 Community Edition para que possamos trabalhar com C++. Vamos instalar também algumas extensões que facilitam o trabalho de desenvolver C++.

Instalar o Visual Studio 2019 Community Edition
08:17

Nesta aula vamos criar um projeto C++ para verificar que o Visual Studio está funcionando e que o compilador foi instalado corretamente.

Criar e executar o primeiro projeto C++
07:39
Sequência de Fibonacci
1 question

Nesta aula vamos baixar a versão 4.25 pelo Epic Games Launcher. Vamos também criar um projeto C++ do template de terceira pessoa para verificar que está tudo funcionando corretamente.

Instalar a Unreal Engine 4.25
10:06

Nesta aula vamos criar um cíclo dia-noite simples no projeto template de terceira pessoa. Você será capaz de controlar a posição do sol manualmente e também usando Blueprints.

Cíclo dia-noite simples
06:49
Conclusão e Próximos Passos
00:24
+ Terminal Da Velha - Jogo da Velha em C++
7 lectures 01:38:10

Nesta aula vou dar uma visão geral do projeto Terminal da Velha. Vou mostrar como o jogo funciona e irei mostrar o que iremos aprender ao longo dessa seção.

Introdução
01:42

Nesta aula vamos falar da estrutura do jogo Terminal Da Velha. Vou explicar o conceito de game loop e a estrutura de classes que vamos desenvolver ao longo dessa seção.

Estrutura do Jogo Terminal da Velha
11:31
Nesta tarefa você irá responder a perguntas relacionadas a aula Terminal da Velha: Estrutura do Jogo
Revisão dos conceitos explicados na aula
3 questions

Vamos programar e testar a classe ABoard, que irá representar o tabuleiro do jogo da velha

Programando o Tabuleiro do Terminal Da Velha
18:53

Vamos programar as classes que representam os jogadores do Terminal da Velha


Programando os Jogadores
20:38
A inteligência artificial que nós programamos é muito simples. Ela procura pela primeira casa vazia e faz a sua jogada. Nesta tarefa vamos melhorar a lógica da inteligência artificial para que ela pareça estar fazendo uma jogada pensada.
Modificar a Inteligência Artificial para fazer uma jogada aleatória
2 questions

Vamos programar a estrutura da classe AGame. Vamos declarar todos os atributos e os métodos que essa classe deve ter e vamos implementar o Game Loop do Terminal da Velha.

Programando a lógica do jogo
28:27

Vamos implementar a função que verifica quando o jogo chegou ao fim.

Verificando quando o jogo acabou
15:41

Recapitular e o que foi feito e concluir a seção.

Conclusão e Próximos Passos
01:18
O objetivo desse desafio é generalizar o Terminal da Velha para que o tabuleiro possa ter um tamanho arbitrário. Muitas vezes precisamos programar componentes de uma aplicação, seja ela um jogo, App ou mesmo um site de forma possamos mudar os parâmetros que fazem as regras de como algo funciona.
Desafio: Modifique o tabuleiro para que ele tenha um tamanho arbitrário
1 question
+ O Essencial Sobre Unreal Engine 4
9 lectures 01:36:10

Introdução a seção. Vamos abordar o essencial para usar o editor e vamos falar da estrutura de um projeto Unreal e as diversas maneiras de abrir o editor.

Introdução
01:06

Nesta aula vou mostrar como configurar o idioma do editor e do Visual Studio para a língua inglesa.

Configurando o Idioma do Editor e do Visual Studio
04:43

Nesta aula vamos configurar o Visual Studio da maneira recomendada pela Epic Games para trabalhar com C++ dentro da Unreal Engine 4.

Configurando o Visual Studio
05:16

Nesta aula vamos conhecer um pouco sobre o viewport que é a janela para o mundo do jogo. Vou mostrar as diferentes opções que o viewport oferece além de falar dos principais comandos para interagir com esse painel do editor.

Conhecendo o Editor - O Viewport
15:22

Nesta aula vamos conhecer o Content Browser. Esse é o painel do editor que nos permite gerenciar o conteúdo que temos disponível para usar no projeto. Vou mostrar as diferentes opções de busca e filtros que nos permitem encontrar conteúdo rapidamente para usar em um projeto.

Preview 16:17

Nesta aula vamos falar das ferramentas de manipulação de atores. Vamos ver como transladar, rotacionar e escalar atores no level do jogo.

Manipulação de Atores
17:03

Nesta aula vamos falar da estrutura de um projeto Unreal. Vamos explorar a pasta onde o projeto é criado e como você pode mover a pasta de lugar levando somente o necessário.

A Estrutura de um Projeto Unreal
13:54
Revisão da aula sobre A Estrutura de um Projeto Unreal
1 question

Nesta aula vamos falar do cíclo de desenvolvimento de um projeto Unreal. Vou mostrar como podemos criar classes, as diferentes configurações de um projeto e da funcionalidade de recarga rápida (hot reloading).

Ciclo de Desenvolvimento
21:31
Revisão sobre o Ciclo de Desenvolvimento
1 question

Recapitular e o que foi feito e concluir a seção.

Conclusão e Próximos Passos
00:58
+ Criando o Projeto do Parapong
6 lectures 50:53

Nesta seção iremos criar e fazer as configurações inciais do projeto do Parapong.

Preview 01:51

Nesta aula vamos criar o projeto do Parapong. Esse vai ser o projeto que vamos desenvolver ao longo das próximas seções.

Criação do Projeto
12:12

Nesta aula vamos configurar os dispositivos de entrada que poderão ser usados no Parapong. Vamos configurar o teclado, mouse e opcionalmente um controle, como o de PS4 ou do XBox.

Configurar os Inputs do Jogo
19:15

Nesta aula vamos criar a quadra do Parapong usando geometrias simples para que possamos focar na mecânica do jogo.

Criando a Quadra de Pong
11:00

O Parapong é um jogo de câmera fixa. Nesta aula vamos posicionar a câmera do jogo de forma que toda a quadra fique visível durante o jogo.

Posicionar a Câmera do Jogo
05:44

Recapitular e o que foi feito e concluir a seção.

Conclusão e Próximos Passos
00:51
+ Programando a Bola
9 lectures 02:18:28

Nesta seção vamos programar a bola do Parapong. Iremos discutir Blueprints e C++, Atores, Componentes e Eventos. Ao final da seção teremos a primeira versão da bola do Parapong funcionando.

Introdução
00:47

Nesta aula vamos discutir as diferenças entre Blueprint e C++ e quando é que devemos usar um ou o outro.

Blueprints vs C++
16:03

Vamos criar uma Blueprint para representar a bola do jogo.

Blueprint da Bola
25:37

Nesta aula vamos falar dos atores e componentes, dois conceitos fundamentais ao desenvolver jogos com Unreal Engine 4.

Atores e Componentes
22:31

Nesta aula vamos criar a classe C++ que vai representar a bola do jogo, a classe ABall.

Criar a Classe ABall
30:53

Nesta aula vamos falar de eventos. Eventos são a forma como a Unreal informa ao nosso código quando algo de interesse ocorreu. Vamos falar dos eventos tanto em Blueprints quanto C++.

Eventos
11:21

Nesta aula vamos programar o evento OnActorHit para fazer a bola reagir quando ela colide com as paredes da quadra.

Programando o Evento OnActorHit
11:59

Nesta aula vamos programar a bola para ela ter a capacidade de iniciar e parar o movimento além de resetar a posição da bola para o centro da quadra.

Controle da Bola: Iniciar e Parar
16:43

Recapitular e o que foi feito e concluir a seção.

Conclusão e Próximos Passos
02:34
+ Programando os Jogadores
9 lectures 02:00:01

Nesta seção vamos programar os jogadores do Parapong. Discutiremos mais algumas classes do Gameplay Framework: Os Peões (Pawns) e Personagens (Characters).

Introdução
01:48

Nesta aula vamos falar dos conceitos de Peão (Pawn), Personagem (Character) e PlayerController. Peões e Personagens formam a base para implementar interações dos jogadores humanos com o mundo do jogo e o Player Controller funciona como a ponte entre o jogador humano e personagem virtual.

Atores (Actor), Peões (Pawn), Personagens (Character) e PlayerController
20:16

Nesta aula vamos montar o jogador do Parapong. Vamos usar geometrias simples para representar o jogador que poderá ser controlado por você ou pela inteligência artificial.

Montando o Personagem
12:24

Nesta aula vamos ver como imprimir mensagens no Output Log. Vamos criar uma categoria de Log para usar no código C++.

Imprimindo Mensagens - Logs
16:06

Nesta aula vamos programar os inputs em C++ para fazer o jogador do Parapong reagir a eventos do teclado ou do mouse.

Inputs em C++
27:15

Nesta aula vamos programar o evento MoveRight. O PlayerController vai receber o evento e transmitir o comando para o jogador do Parapong.

Programando o Evento MoveRight
10:02

Nesta aula vamos configurar o Auto Possess Player para que o personagem do jogo receba os comandos que estiverem sendo feitos no teclado e mouse.

Configurar o Auto Possess Player
08:24

Nesta aula vamos programar um AIController simples para controlar o adversário do jogo. Essa inteligência artificial vai implementar uma estratégia simples de tentar defender a bola tentando se manter alinhado com ela.

Programando o Adversário
22:01

Recapitular e o que foi feito e concluir a seção.

Conclusão e Próximos Passos
01:45
+ GameInstance, GameMode e GameState
7 lectures 01:32:42

Nesta seção vamos falar das três classes mais importantes do Gameplay Framework. GameInstance, GameMode e GameState formam a base para definir as regras do jogo.

Introdução
00:48

Nesta aula vamos nos aprofundar nos conceitos de GameInstance, GameMode e GameState. Você vai entender a responsabilidade de cada uma dessas classes e o que fazer quando herdar de cada uma delas no seu jogo.

GameInstance, GameMode e GameState
22:14

Nesta aula vamos criar a classe AParaPongGameState que vai ser responsável por gerenciar a partida, ou seja, iniciar o jogo, contar os pontos e iniciar/parar o movimento da bola quando necessário.

Criar a classe AParaPongGameState
17:34

Nesta aula vamos falar dos temporizadores, que são objetos que nos permitem registrar eventos que serão chamados depois de um intervalo de tempo. Temporizadores permitem a implementação de contadores e atrasos tanto em C++ quanto em Blueprints.

Timers
26:00

Nesta aula vamos implementar a classe AParaPongGameState!

Configurar a Classe AParaPongGameState
16:13

Nesta aula vamos criar a classe AParaPongGameModeBase, onde nós iremos configurar as classes padrão Pawn, GameState e PlayerController.

Implementar o AParaPongGameModeBase
07:57

Recapitular e o que foi feito e concluir a seção.

Conclusão e Próximos Passos
01:56
+ Sistema de Pontuação
6 lectures 01:29:59

Nesta seção vamos implementar o sistema de pontuação do Parapong. Vamos falar sobre as formas como objetos interagem no mundo com colisões e sobreposições. Vamos usar gatilhos (triggers) com eventos de sobreposição para saber quando a bola atingiu a parede atrás dos jogadores.

Introdução
02:06

Nesta aula vamos falar dos conceitos de colisão (Hit) e sobreposição (Overlap). Esse conceitos são fundamentais para entender como programar a interação entre atores que fazem parte do seu level.

Interações - Colisões e Sobreposições
32:52

Nesta aula vou mostrar, com exemplos, como atores interagem através das colisões e sobreposições no mundo do jogo.

Exemplos de Interações entre Objetos
19:41

Nesta aula vamos criar a classe AScoreTrigger que é a classe que representa o gatilho que informa ao GameState quando um ponto foi feito e por qual jogador.

Criar a classe AScoreTrigger
19:56

Nesta aula vamos refinar o comportanto da bola de forma que ela se comporte corretamente ao interagir com os gatilhos da pontuação.

Preview 13:24
Conclusão e Próximos Passos
02:00
+ Menu Inicial e Placar: Widgets
7 lectures 02:12:38

Nesta seção vamos falar os Widgets. Vamos criar o menu inicial, o menu de pausa e o placar do jogo. Vamos falar dos conceitos relevantes sobre interface com o usuário dentro da Unreal e ver como podemos usar o Unreal Motion Graphics (UMG) para criar interfaces com o usuário dentro do jogo.

Introdução
00:51

Nesta aula vamos discutir os conceitos relevantes para trabalhar com o Unreal Motion Graphics (UMG) dentro da Unreal Engine.

Conceitos de Interface com o Usuário
21:06

Nesta aula vamos criar o menu inicial do Parapong. Vamos programar o botão para iniciar e avisar ao GameState quando o botão foi clicado.

Criar o Widget do Menu Inicial
20:52

Nesta aula vamos programar o evento de clique do botão para iniciar a partida.

Evento OnBtnStartClicked
18:08

Nesta aula vamos criar o Widget que representa o placar do jogo.

Criar o Widget do Placar
35:00

Nesta aula vamos criar o menu de pausa do jogo.

Menu de Pausa
27:38
Conclusão e Próximos Passos
09:03
+ Polimento
15 lectures 03:22:35
Acertar a Velocidade dos Jogadores e da Bola
07:20
Melhorar a Forma de Como a Bola se Move
22:10
Baixar Assets do Marketplace
18:49
Construir a Quadra Usando Malhas Estáticas
29:03
Suporte da Quadra e Oceano
16:07
Criar o Blend Space de Movimento
09:02
Construir a Blueprint de Animação
16:23
Adicionar uma Animação de Ataque
15:34
Adicionar Áudio
16:51
Adicionar um Sistemas de Partículas
08:11

Nesta aula vamos melhorar o menu inicial do jogo com assets que vão fazer ele ficar mais chamativo e empolgante.

Melhorar o Menu Inicial
08:50
Ajuste na Iluminação
10:10
Conclusão
11:31
Requirements
  • Ser capaz de manipular pastas e arquivos
  • Um computador com Windows de preferência com placa de vídeo dedicada
  • Interesse na criação de jogos
  • Vontade de aprender
Description

**Importante**: Este curso foi feito usando Unreal Engine 4.25 que é a versão mais recente do programa.

Neste curso irei te ensinar os fundamentos da programação de jogos usando C++ e Unreal Engine.

Vamos começar do básico. Primeiro vamos falar dos conceitos chaves necessários para entender o funcionamento de um jogo. Vamos falar dos conceitos de game loop, condições de término e como estruturar um jogo.

Para isso vamos criar um projeto usando somente C++, onde vou explicar, passo-a-passo, tudo o que você estiver vendo na tela. Esse projeto será o Terminal da Velha, um jogo da velha que funciona no terminal.

No Terminal da Velha, você joga contra o computador, no entanto, vamos estruturar o código de forma que seja muito simples jogar contra outra pessoa ou mesmo fazer o computador jogar contra ele mesmo.

Depois vamos criar o jogo Parapong, uma versão em 3D do clássico Pong. Vamos fazer um level caixa cinza para que possamos programar a mecânica do jogo sem distrações.

Desenvolver jogos é um assunto extremamente abrangente e é impossível resumir tudo em um único curso, porém, este curso lhe dará a base necessária para que você possa desenvolver o seu próprio projeto.

Teremos também uma seção onde iremos fazer o polimento do jogo, adicionando malhas estáticas, áudio, efeitos de partículas e animações para fazer o jogo ficar, além de divertido, visualmente atrativo.

Ao matricular-se neste curso você ganha acesso a um servidor Discord exclusivo onde você poderá tirar dúvidas, compartilhar o seu progresso e interagir com outros alunos do curso. Um extra imperdível.

Matricule-se agora para poder aprender os fundamentos da programação de jogos com Unreal Engine 4 e C++!

Who this course is for:
  • Interessados em criar jogos usando Unreal Engine e C++
  • Iniciantes no desenvolvimento de jogos
  • Qualquer pessoa que tenha interesse em criar jogos