Desenvolvimento de jogos com ogre 3D - Mini Curso Unip
-
Upload
jonathanblacknight -
Category
Technology
-
view
683 -
download
1
description
Transcript of Desenvolvimento de jogos com ogre 3D - Mini Curso Unip
Desenvolvendo um jogo 3D com Ogre 3D e C++
Autor: Jonathan Ohara de Araujo
Sobre Mim23 +1 anos;
Bacharel em Sistemas de Informação pela Universidade Católica de Santos;
Trabalho com Java para sistemas Web;
Estudo desenvolvimento de jogos desde 2009;
2 projetos na área de jogos: Shyds; PontoV.
Shyds Games - http://shydsgames.com/
Criado para armazenar nossos jogos, news e como blog de desenvolvimento;
Projetos: Bola de Pano; Tumbu; Black Amber; Sem nome (On Hold); Stick Wars.
Shyds Games – Bola de Panohttp://shydsgames.com/
Shyds Games – Tumbuhttp://shydsgames.com/
Shyds Games – Black Amberhttp://shydsgames.com/
Shyds Games – Sem Nome ( On Hold )
http://shydsgames.com/
Shyds Games – Stick Warshttp://shydsgames.com/
PontoV - http://www.pontov.com.br/
Artigos sobre desenvolvimentos de jogos em geral;
Escrevo na coluna sobre Ogre3D
Desenvolvimento de jogos e Ogre 3D
Será abordado: Introdução; Indústria e Curiosidades;Mitos;Ogre 3D;Desenvolvimento de Jogos;
Api´s; Game Engines; Computação Gráfica;
Ferramentas de Auxílio; Construindo um ambiente; Desenvolvendo com Ogre 3D.
Introdução
Desenvolvimento de Jogos
2D;
3D.
Ogre 3D
Ogre 3D;
C++.
Indústria e Curiosidades
Consoles - Vendas
Console mais vendido: Playstation 2 (2000) – 155,59 milhões;
Jogo mais vendido: Wii Sports (Wii) – 77,34 milhões;
Jogo mais vendido (2013): Grand Theft Auto (XBOX 360) - 8,8 milhões;
Curiosidades
Em 2008 a receita da indústria de jogos nos Estados Unidos foi de aproximadamente 22 bilhões que é maior que a receita da indústria de musica e filmes juntos (10,4 bilhões e
9,5 bilhões repetitivamente).
Indústria – Notícias Recentes“GTA V exceeds $1 billion in only 3 day”
(GameIndustry 20/09/13)
Spending on videogames in the U.S. Reached US$ 16.3 billion in 2011 (Financial POST 2012)
Eventos Interessantes
IGF (Independent Games Festival);
SBGames (Simpósio Brasileiro de Games e Entretenimento Digital);
Mitos
É impossível fazer um jogo sozinho!!!
BBraid (2008) by Jonathan Blow
É impossível fazer um jogo sozinho!!! E em java!!!
Minecraft (2009) by Markus “Notch”
Eu não tenho os milhões de dólares necessários para
licenças e softwares!!!
Meu primeiro jogo terá gráficos perfeitos e 1000
horas de game play!!!
Eu sei programar, então sei fazer jogos!!!
Desenvolvimento de Jogos –
Api’s Gráficas
Api´s Gráficas
O que são?
Api gráfica == Game Engine???
Api’s
OpenGL (1992);
Direct3D (1995).
OpenGL
Direct 3D
Desenvolvimento de Jogos –
Engines Físicas
Engines Físicas
O que são?
Por que e quando usa-las?
Principais Engines Físicas
Nvidia PhysX
Havok Physics;
Bullet;
Open Dynamics Engine (ODE).
Principais Engines Físicas
Desenvolvimento de Jogos –
Game Engines
Game Engines
Conceito;
Função;
Componentes.
Game EnginesOgre 3D*;
Java Monkey Engine;
Unity;
Microsoft XNA.
Ogre 3D*
Open Source;
Multiplataforma;
C++;
http://www.ogre3d.org/
Java Monkey Engine
Open Source;
Multiplataforma;
Java;
http://www.jmonkeyengine.org/
Unity
Comercial com versão gratuita
Windows e Mac;
C#;
http://unity3d.com/
XNA
Gratuito
Windows e Xbox ;
C#;
http://creators.xna.com/en-US/
Comparação Performance (FPS)
(Jonathan 2011/2012)
Ogre 3D
Ogre 3D
Breve História
Por que Ogre 3D?
Por que C++?
Ogre 3D
Defeitos:Criando Ambiente e Criar Primeiro Projeto;Tempo de Compilação;
Soluções:Ogre App Wizard;Paciência e/ou PC da Nasa ;
PrincipaisTrabalhos
Garshasp - The Monster Slayer;
Family Farm;
Project Aftershock;
TorchLight;
Garshap
Family Farm
Project AfterShock
TorchLight
Torchlight
Desenvolvido pela Runnic Games;
Lançado em outubro de 2009;
Maioria das bibliotecas utilizadas são Open Source;
Torchlight
No Dia 6 de agosto de 2010 já tinha registrados bem mais de 600 mil vendas (fonte: Gamasutra);
Foi pago pelo jogo 20 dólares (caixa) e 10 dólares pelo download.
Desenvolvimento de Jogos –
Computação Gráfica
Coordenadas
LuzesLuzes direcionais;
Ponto de Luz;
Região de Luz.
Câmera
Cenas
Cenas
Objetos
Composição:
Estrutura física (Mesh);
Pintura.
Mesh
Composição:
Vértices;
Arestas;
Faces;
Relações.
Mesh
Mesh
Pintura
Por cores (RGBA) aplicado em vértices;
Por textura através de mapeamento.
Pintura por Cores
Pintura por textura
Pintura por textura
Pintura por textura
Funções ImportantesMovimento;
Escala;
Rotação.
Rotação em X
Rotação em Y
Rotação em Z
Rotação em Z
Entendendo como funciona um jogo
Loop Principal
123456789
1011
void main(){ loadResources(); while(!quit()) { readInput(); updateGame(); drawGame(); }}
Ferramentas de Auxílio
Modelagem 3D
Blender 3D ( www.blender.org );
Blender2Ogre ( https://code.google.com/p/blender2ogre );
Ogre Meshy.
Desenvolvimento
Ogre app Wizard;
Ogitor;
Desenvolvendo com Ogre 3D
Ogre 3D em 10 slides (1 de 10)
Grafos;
Managers.
Nós;
Ogre 3D em 10 slides (2 de 10)
Iniciando Ogre: ogre = new Ogre::Root(“arquivo.cfg”);
Iniciando Manager de Cena:ogre->createSceneManager(tipo);
Criando um nó:manager->getRootSceneNode()->createChildSceneNode("no1");
Ogre 3D em 10 slides (3 de 10)
Entidades;
.mesh e .materials;
Ogre 3D em 10 slides (4 de 10)
Criando entidade:manager->createEntity(“arquivo.mesh"));
Associando entidade a um nó:no->attachObject(entidade);
Ogre 3D em 10 slides (5 de 10)
Criando Luz:manager->createLight("Luz");
Criando Câmera:manager>createCamera("Camera");
Ogre 3D em 10 slides (6 de 10)
Posicionando Nósno>setPosition( 10, 20, 30 );
no->setPosition(Ogre::Vector3( 10, 20, 30 ));
Ogre 3D em 10 slides (7 de 10)
Girando 90º em X:no->pitch(Ogre::Degree(90));
Girando 90º em Y:no->yaw(Ogre::Degree(90));
Girando 90º em Z:no->roll(Ogre::Degree(90));
Ogre 3D em 10 slides (8 de 10)
Renderizando o Frame Atual:mRoot->renderOneFrame();
Ogre 3D em 10 slides (9 de 10)
Mouse:OIS::MouseListener;
Teclado:OIS::KeyListener;
Joystick:OIS::OISJoyStick;
Ogre 3D em 10 slides (10 de 10)
Let’s Play!!!
Contato:http://www.slideshare.net/jonathanblacknight/[email protected]@jonathan_oharahttp://shydsgames.com/http://www.pontov.com.br/
FIM