SlideShare una empresa de Scribd logo
1 de 19
Games
Introdução ao DirectX com C++
José Antonio “jalf” Leal de Farias
@sharpgames
Quem é esse cara?
Games
• C++ MVP (9 anos)
• Antes, XNA/DirectX MVP e Windows Embedded MVP
• Desenvolvedor de jogos desde 1990
• Bacharel em computação pela UFCG
• Criador do curso de jogos digitais da Facisa
• Criador e administrador do portal Sharpgames (sharpgames.net)
• Conselheiro e um dos fundadores da ACIGAMES
• Produtor na Prosperity Games (prosperitygames.net)
• Faliu sua primeira empresa de games em 1999
• ...
• Objetivo: Compreender o funcionamento do DirectX e como usá-
lo para criar jogos sofisticados.
• (ou pelo menos entender os tutoriais da internet)
• Arquitetura
• Windows Internals
• APIs Básicas
• Shaders
Introdução
Games
Games
Estapalestratemaltaconcentração
decódigoemC/C++enãoéparaos
fracos!
Evolução do DirectX
• Originalmente desenhado para games e abstração
de hardware
• DX9 introduziu Shaders de ponto flutuante
• Programados em HLSL
• Windows Vista adotou para muitas características:
• UI: Aero e Media Center
• Processamento de Imagem: Windows Photo Gallery
• DX10 foi desenhado para mais do que games
• API “limpa” para reduzir a complexidade
• Implementação consistente entre vários HW – No Caps
• Nova API de infraestrutura: DXGI
• Atualmente estamos na versão 11 (12 prevista para o
fim de 2014)
Games
Elementos Gráficos
DirectX == Gráficos de Alto
Desempenho
Games
3D
2D
Video e Imagens
Segoe UI
Texto
• “CPU” para Gráficos
• Shaders
• Nvidia x AMD
• DirectX x Mantle
GPUS
Games
GPUS
Games
Ou, “como a coisa acontece diante de
seus olhos e você não sabia...”
Hello World!
Games
Ou, “como os jogos de verdade são
feitos...”
Hello DirectX!
Games
Shaders
Games
Shaders
Games
Shaders
Games
Ou, “como criar programas para a
GPU...”
Shaders
Games
Transformações 3D
Games
Ou, “O momento de se arrepender de
não ter prestado atenção nas aulas de
matemática...”
Rotação em 3D
Games
Texturas
Games
Ou, “Quando os artistas finalmente
entram no jogo...”
Texturas
Games
Obrigado!
Links úteis:
microsoftvirtualacademy.com.br
msdn.microsoft.com/en-
us/library/windows/desktop/ee663274(v=vs.85).aspx
mailto://jalf@outlook.com
@sharpgames

Más contenido relacionado

Similar a Introdução do DirectX com C++

Curso (2010) - Desenvolvimento de Jogos 2D com XNA
Curso (2010) - Desenvolvimento de Jogos 2D  com XNACurso (2010) - Desenvolvimento de Jogos 2D  com XNA
Curso (2010) - Desenvolvimento de Jogos 2D com XNAKleber de Oliveira Andrade
 
Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013José Farias
 
Evolução dos games e introdução ao desenvolvimento com unity
Evolução dos games e introdução ao desenvolvimento com unityEvolução dos games e introdução ao desenvolvimento com unity
Evolução dos games e introdução ao desenvolvimento com unityAnderson Molina
 
A importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos DigitaisA importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos DigitaisKelvin Oliveira
 
It’s all about the game
It’s all about the gameIt’s all about the game
It’s all about the gameBruno Cicanci
 
Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...
Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...
Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...Impacta Eventos
 
Game jams e Impacto na indústria local - Campus Party Natal 2018
Game jams e Impacto na indústria local - Campus Party Natal 2018Game jams e Impacto na indústria local - Campus Party Natal 2018
Game jams e Impacto na indústria local - Campus Party Natal 2018Potiguar Indie Games
 
Jogos Mobile Multiplataforma
Jogos Mobile MultiplataformaJogos Mobile Multiplataforma
Jogos Mobile MultiplataformaRicardo Casseb
 
Palestra Introdução ao Game Design
Palestra Introdução ao Game DesignPalestra Introdução ao Game Design
Palestra Introdução ao Game DesignLeonardo Zamprogno
 
Palestra - A Dinâmica do Mercado de Jogos Eletrônicos
Palestra - A Dinâmica do Mercado de Jogos EletrônicosPalestra - A Dinâmica do Mercado de Jogos Eletrônicos
Palestra - A Dinâmica do Mercado de Jogos EletrônicosFabio Lima
 
Desenvolvimento de Jogos - Mercado Parte 2
Desenvolvimento de Jogos - Mercado Parte 2Desenvolvimento de Jogos - Mercado Parte 2
Desenvolvimento de Jogos - Mercado Parte 2Fabio Moura Pereira
 
FLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGame
FLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGameFLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGame
FLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGameLucas Mousinho
 
Desenvolvimento de Jogos em Java
Desenvolvimento de Jogos em JavaDesenvolvimento de Jogos em Java
Desenvolvimento de Jogos em JavaBruno Croci
 

Similar a Introdução do DirectX com C++ (20)

Curso (2010) - Desenvolvimento de Jogos 2D com XNA
Curso (2010) - Desenvolvimento de Jogos 2D  com XNACurso (2010) - Desenvolvimento de Jogos 2D  com XNA
Curso (2010) - Desenvolvimento de Jogos 2D com XNA
 
Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013
 
Evolução dos games e introdução ao desenvolvimento com unity
Evolução dos games e introdução ao desenvolvimento com unityEvolução dos games e introdução ao desenvolvimento com unity
Evolução dos games e introdução ao desenvolvimento com unity
 
Comparativo entre Engines de Jogos em 3d
Comparativo entre Engines de Jogos em 3dComparativo entre Engines de Jogos em 3d
Comparativo entre Engines de Jogos em 3d
 
A importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos DigitaisA importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos Digitais
 
It’s all about the game
It’s all about the gameIt’s all about the game
It’s all about the game
 
Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...
Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...
Palestra “UDK no Brasil e os Caminhos para Design e Desenvolvimento de games ...
 
Game jams e Impacto na indústria local - Campus Party Natal 2018
Game jams e Impacto na indústria local - Campus Party Natal 2018Game jams e Impacto na indústria local - Campus Party Natal 2018
Game jams e Impacto na indústria local - Campus Party Natal 2018
 
Historia do videogame
Historia do videogameHistoria do videogame
Historia do videogame
 
Histori do videogame
Histori do videogameHistori do videogame
Histori do videogame
 
Projeto de Jogos
Projeto de JogosProjeto de Jogos
Projeto de Jogos
 
Jogos Mobile Multiplataforma
Jogos Mobile MultiplataformaJogos Mobile Multiplataforma
Jogos Mobile Multiplataforma
 
Visão Geral XNA
Visão Geral XNAVisão Geral XNA
Visão Geral XNA
 
Palestra Introdução ao Game Design
Palestra Introdução ao Game DesignPalestra Introdução ao Game Design
Palestra Introdução ao Game Design
 
Palestra - A Dinâmica do Mercado de Jogos Eletrônicos
Palestra - A Dinâmica do Mercado de Jogos EletrônicosPalestra - A Dinâmica do Mercado de Jogos Eletrônicos
Palestra - A Dinâmica do Mercado de Jogos Eletrônicos
 
Desenvolvimento de Jogos - Mercado Parte 2
Desenvolvimento de Jogos - Mercado Parte 2Desenvolvimento de Jogos - Mercado Parte 2
Desenvolvimento de Jogos - Mercado Parte 2
 
FLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGame
FLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGameFLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGame
FLISOL 2015 - Desenvolvimento de jogos para Linux com MonoGame
 
Mobile Game Development.pptx
Mobile Game Development.pptxMobile Game Development.pptx
Mobile Game Development.pptx
 
Desenvolvimento de Jogos em Java
Desenvolvimento de Jogos em JavaDesenvolvimento de Jogos em Java
Desenvolvimento de Jogos em Java
 
Apresentação TCC Games
Apresentação TCC GamesApresentação TCC Games
Apresentação TCC Games
 

Más de José Farias

Introdução ao cocos sharp
Introdução ao cocos sharpIntrodução ao cocos sharp
Introdução ao cocos sharpJosé Farias
 
Por dentro do ID@Xbox
Por dentro do ID@XboxPor dentro do ID@Xbox
Por dentro do ID@XboxJosé Farias
 
10 questões sobre o futuro dos Games
10 questões sobre o futuro dos Games10 questões sobre o futuro dos Games
10 questões sobre o futuro dos GamesJosé Farias
 
Criando jogos para o windows 8
Criando jogos para o windows 8Criando jogos para o windows 8
Criando jogos para o windows 8José Farias
 
Criando Jogos com HTML5
Criando Jogos com HTML5Criando Jogos com HTML5
Criando Jogos com HTML5José Farias
 
Criando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectXCriando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectXJosé Farias
 
Criando aplicativos para o windows 8
Criando aplicativos para o windows 8Criando aplicativos para o windows 8
Criando aplicativos para o windows 8José Farias
 
Introdução ao XNA
Introdução ao XNAIntrodução ao XNA
Introdução ao XNAJosé Farias
 
Oportunidades com o XNA
Oportunidades com o XNAOportunidades com o XNA
Oportunidades com o XNAJosé Farias
 
Publicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live ArcadePublicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live ArcadeJosé Farias
 
Como ganhar dinheiro com games
Como ganhar dinheiro com gamesComo ganhar dinheiro com games
Como ganhar dinheiro com gamesJosé Farias
 
Criando jogos com xna para o windows phone
Criando jogos com xna para o windows phoneCriando jogos com xna para o windows phone
Criando jogos com xna para o windows phoneJosé Farias
 
Criando jogos com o kinect
Criando jogos com o kinectCriando jogos com o kinect
Criando jogos com o kinectJosé Farias
 
IntroduçãO Ao Xna Campus Party
IntroduçãO Ao Xna  Campus PartyIntroduçãO Ao Xna  Campus Party
IntroduçãO Ao Xna Campus PartyJosé Farias
 

Más de José Farias (16)

Introdução ao cocos sharp
Introdução ao cocos sharpIntrodução ao cocos sharp
Introdução ao cocos sharp
 
Por dentro do ID@Xbox
Por dentro do ID@XboxPor dentro do ID@Xbox
Por dentro do ID@Xbox
 
10 questões sobre o futuro dos Games
10 questões sobre o futuro dos Games10 questões sobre o futuro dos Games
10 questões sobre o futuro dos Games
 
Radioino
RadioinoRadioino
Radioino
 
Criando jogos para o windows 8
Criando jogos para o windows 8Criando jogos para o windows 8
Criando jogos para o windows 8
 
Criando Jogos com HTML5
Criando Jogos com HTML5Criando Jogos com HTML5
Criando Jogos com HTML5
 
Criando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectXCriando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectX
 
Criando aplicativos para o windows 8
Criando aplicativos para o windows 8Criando aplicativos para o windows 8
Criando aplicativos para o windows 8
 
Network com XNA
Network com XNANetwork com XNA
Network com XNA
 
Introdução ao XNA
Introdução ao XNAIntrodução ao XNA
Introdução ao XNA
 
Oportunidades com o XNA
Oportunidades com o XNAOportunidades com o XNA
Oportunidades com o XNA
 
Publicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live ArcadePublicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live Arcade
 
Como ganhar dinheiro com games
Como ganhar dinheiro com gamesComo ganhar dinheiro com games
Como ganhar dinheiro com games
 
Criando jogos com xna para o windows phone
Criando jogos com xna para o windows phoneCriando jogos com xna para o windows phone
Criando jogos com xna para o windows phone
 
Criando jogos com o kinect
Criando jogos com o kinectCriando jogos com o kinect
Criando jogos com o kinect
 
IntroduçãO Ao Xna Campus Party
IntroduçãO Ao Xna  Campus PartyIntroduçãO Ao Xna  Campus Party
IntroduçãO Ao Xna Campus Party
 

Introdução do DirectX com C++