340 likes | 505 Views
OGRE. Grupo: Cleunio França Igino Chaves Lucas Andre Lúcio Ribeiro Styve Stallone Severino José. SUMÁRIO. O que é Ogre? Licença Características Gerais Vantagens Desvantagens Arquitetura Exemplos (demos) Aplicações. O QUE É OGRE?.
E N D
OGRE Grupo: Cleunio França Igino Chaves Lucas Andre Lúcio Ribeiro Styve Stallone Severino José
SUMÁRIO • O que é Ogre? • Licença • Características Gerais • Vantagens • Desvantagens • Arquitetura • Exemplos (demos) • Aplicações
O QUE É OGRE? • OGRE(Object-oriented Graphics Rendering Engine); • Motor gráfico 3D orientado a objetos; • Orientado a Cena; • É uma Game-Engine?
OGRE • Criada para proporcionar uma classe de soluções gráficas; • Desde 2001, tem se tornado a mais popular Open-Source Engine gráfica; • Considerada uma das melhores Engine de código aberto; • Flexível;
OGRE • Usada em um grande número de projetos: • Jogos; • Software educacionais; • Simuladores; • Poucos escritores, muitos colaboradores; • Usa principalmente C++; • Possui versões de teste para Python, Java e .NET;
LICENÇA • Ogre Source é feito baseado na GNU LGPL(Lesser General Public License): • Free; • Com algumas restrições; • Alternative License (OUL): • Paga; • Sem restrições;
CARACTERÍSTICAS GERAIS • Orientação a Objeto (C++) • Phyton, Java e .NET em teste • Multiplataforma • Windows, Linux e MacOSX • Desenvolvido para minimizar o esforço para renderizar cenas 3D. • Comunidade muito ativa • Gratruito
VANTAGENS • Implementação fácil e intuitiva • Desenvolvimento independente da implementação 3D • Direct3D ou OpenGL • Documentação completa de todas as classes • Flexibilidade: engine gráfico para uso abrangente • Área médica, entretenimento, educacional, visualização científica. • Arquitetura de plugin flexível • Framework de exemplo extensivo
DESVANTAGENS • Não é uma engine de jogos • necessidade de integração de bibliotecas • OgreODE (física) • Ogrenewt (física de newton) • OgreAL (som)
CARACTERÍSTICAS A FUNDO • Suporte a material / shader • Poderosa linguagem de declaração de materiais • Suporte a Vertex, Shaders, DirectX9 HSLS, GLSL • Material LOD • Texturas: PNG, JPEG, TGA, BMP e DDS • Fornecidas e atualizadas em tempo real
CARACTERÍSTICAS A FUNDO • Meshes • Formatos flexíveis • Bezier biquadrada para superfícies curvadas • LOD manual ou automático
CARACTERÍSTICAS A FUNDO • Animação • Sofisticada animação por esqueleto • Animação de formas flexíveis • Animação para caminho de câmeras • Trilhas de animação genéricas
CARACTERÍSTICAS A FUNDO • A Cena • Administração de cenas customizável e flexível • Gráficos de cenas hierárquico • Técnicas de renderização de sombra
CARACTERÍSTICAS A FUNDO • Efeitos especiais • Suporte à Skyboxes, Skyplanes e Skydomes • Sistema de partículas • Técnicas de renderização de sombra
ARQUITETURA • Baseada em árvore • Objetos: • Root • RenderSystem • SceneManagerEnumerator • Entity • Mesh • Scenenode • Material • TexturaLayer • Camera
ROOT • Ponto de entrada do Ogre • Instancia. Root :: getSingleton() • Ultimo a ser destruído • Referenciamento
RENDERSYSTEM • Classe abstrata • Comandos para renderização • Importância • Acesso
RENDERSYSTEM • Configura opções próprias da API gráfica. • Necessidade de subclasses especificas • Não deve ser acessado diretamente
SCENEMANAGER • Utilidade • Renderização • Ciclo de renderização • Conteúdo da cena
SCENEMANAGER • Otimização • Métodos • SceneManager::createSceneNode/getSceneNode(); • SceneManager::createCamera/getCamera(); • SceneManager::createLight/getLight(). • Tipos • ST_GENERIC • ST_EXTERIOR • ST_INTERIOR
ENTITY • Objeto • Móvel • 3D • Malha Geométrica • SceneManager::createEntity()
ENTITY • Associado ao SceneNode • Várias entidades • Sub-Entity
MESH • Conjunto de Vértices • Sub-Mesh
SCENENODE • Agrupamento • Associação com Entity • Hierarquia
CAMERA • Representa um ponto de vista da cena. • É criada a partir de uma SceneManager com nome associado. • Nó com propriedade de Frustum (área restrita de visualização: campos de vista, aspecto, delimitadores de volume).
CAMERA • Posição e orientação pode ser alteradas dinamicamente.
MATERIAL • Informa modo de renderização do objeto: . componentes do modelo de iluminação . camadas de texturas associadas, imagens e como devem interagir formando a superfície final. • Identificados pelo nome e pode ser atribuído a Entity ou SubEntity.
EXEMPLOS (DEMOS) • Magic Of Stonehenge • Gerenciamento automático da câmera • Scene manager (terrain) • Efeitos de luz e sombra • Outros efeitos: oclusão, textura do material (rochas), controle de exposição
EXEMPLOS (DEMOS) • Compositor Efects • Permite visualizar vários efeitos luminosos e de imagem (bloom, glass, gaussian blur, preto-e-branco, etc.) • Permite também misturar um ou mais efeitos.
EXEMPLOS (DEMOS) • Ankh • História se passa no antigo Egito • Boa qualidade nos efeitos luminosos (fogo, sombra) • Objetos não são muito polidos, talvez para preservar o desempenho do jogo. • http://www.youtube.com/watch?v=HUM5srw0rDo
EXEMPLOS (DEMOS) • Arid Ocean • Simula um oceano com muitos efeitos, principalmente os de água, um dos mais difíceis de implementar • Mesmo com ausência de sombras, a qualidade de processamento dos objetos aumenta o realismo do programa.
REFERÊNCIAS • http://eden.dei.uc.pt/~pribeiro/portfolio/docs/M3DPJ.PDF • http://www.ogre3d.org/ • http://en.wikipedia.org/wiki/OGRE_3D