Ponto V!

Home Ogre 3D Instalando e usando OGRE no Visual C++ 2008 - Obsoleto
Kléber de Oliveira Andrade
Instalando e usando OGRE no Visual C++ 2008 - ObsoletoImprimir
Escrito por Kleber Andrade

Para configurar versões atuais do Ogre em ambientes mais modernos, consulte: Instalando o Ogre no Visual C++ 2010

Este tutorial tem por objetivo auxiliar aqueles que pretendem utilizar a engine OGRE 3D para desenvolver aplicações gráficas, no nosso caso jogos usando o Visual C++ 2008 (VC++), demonstrando como instalar e configurar o OGRE 3D para uso com este ambiente.Este tutorial foi executado em Windows XP SP3, qualquer outro Sistema Operacional poderá estar sujeito a falhas.

O que é OGRE?

OGRE 3D (Object-oriented Graphics Rendering Engine) é um motor gráfico 3D orientado a objetos e de código aberto com muitos recursos. A principal linguagem para se programar com OGRE é o C++, porém existem versões de testes para Python, Java e .Net.

Motor gráfico (ou motor de renderização, ou motor 3D), do inglês graphics engine, ou rendering engine, é um tipo de motor de jogo especializado em renderização de cenas 2D e/ou 3D. Comumente são construídos sobre uma biblioteca gráfica, como OpenGL e DirectX, porém também são construídos sem a intervenção dessas bibliotecas. Basicamente, todos os motores gráficos são considerados motores de jogos, porém, são referidos como bibliotecas voltadas para apenas renderização. Por esse motivo, seus criadores os denominam motores 3D ou motores de renderização, ao invés de motores de jogo.

Este motor gráfico possui um sistema de scripts, que permite declarar materiais, pós-processadores, sistemas de partículas e shaders. Deste modo, a compilação do código fonte não é necessária, bastando apensa alterar o script correspondente. Sendo altamente orientada a objetos e com a portabilidade em primeiro plano, a mudança entre sistemas de renderização (OpenGL/DirectX), sistemas operacionais (Windows/Linux/Mac OS) e gerenciadores de cenário ocorre de forma automatizada, graças a uma arquitetura de layers que permite que essas trocas se tornem transparentes.

Shaders são pequenos programas que podem compilados independentemente e executam diretamente na GPU. É uma tecnologia recente e que tem experimentado uma grande evolução destinada a proporcionar ao programador uma interação com a GPU até recentemente impossível. Os shaders são utilizados para realizar transformações e criar efeitos especiais, como por exemplo, iluminação, fogo ou nevoeiro. Para sua programação os shaders utilizam linguagens específicos de alto nível que permitam a independência do hardware como: HLSL (High Level Shader Language), Cg (C for Graphics) e GLSL (OpenGL Shading Language).

OGRE é muito utilizado para criação de jogos, simuladores, softwares educativos, arte interativa, visualização científica e até mesmo em comerciais.

Download e Instalação

Para aqueles que não têm os softwares necessários para prosseguir neste tutorial, segue a lista abaixo que deve ser instalado de preferência seguindo a ordem.

  1. DirectX Software Development Kit: Download aqui
  2. Visual C++ 2008 Express Edition: Download aqui, um guia para a instalação do Visual C++ pode ser encontrado aqui.
  3. OGRE 1.7.1 SDK for Visual C++ .Net 2008 (32 bits): Download aqui
  4. OGRE VC90 Express App Wizard 1.7.1_2 : Download aqui

No meu caso eu instalei a OGRE na pasta C:\OgreSDK. A instalação do DirectX é recomendada para evitar problemas com execução e distorções na execução dos programas futuros.

Criando uma variável de ambiente para a OGRE

1º Passo: Após ter instalado a OGRE, iremos criar uma variável de ambiente para facilitar a atualização de versões futuras da engine. Para isso clique com o botão direito do mouse em Meu Computador –> Propriedades. Na janela que se abrir clique na aba Avançado e depois em Variáveis de Ambiente. Na próxima, clique em Nova e entre com o nome da variável OGRE_HOME, e o valor da variável é o diretório da OGRE, ou seja, C:\OgreSDK\OgreSDK_vc9_v1-7-1 no meu caso (Fig. 1).

Figura 1: Configurações das variáveis de ambiente

Figura 1. Etapas do sétimo passo, (a) Avançado à Variáveis de Ambiente. (b) criando a variável de ambiente

Configurando o VC++

2º Passo: Agora abra o VC++ (se você criou as variáveis com o Visual C++ aberto, feche-o e abra novamente). Dentro do Visual C++ acesse o menu Tools –> Options e expanda Projects and Solutions –> VC++ Directories.

3º Passo: Com a janela aberta, selecione Executable files na caixa Show directories for e adicione os seguintes caminhos. (Fig. 2)

  • $(OGRE_HOME)\bin
  • $(OGRE_HOME)\bin\debug
  • $(OGRE_HOME)\bin\release

Figura 2. Executable files

Figura 2. Executable files

4º Passo: Agora selecione Include files e adicione os seguintes caminhos para que o VC++ possa utilizar os cabeçalhos durante o build do seu programa. (Fig. 3)

  • $(OGRE_HOME)\include
  • $(OGRE_HOME)\include\OIS
  • $(OGRE_HOME)\include\OGRE
  • $(OGRE_HOME)\Samples\Common\include
  • $(OGRE_HOME)\boost_1_42

Figura 3. Include files

Figura 3. Include files

5º Passo: Por fim é necessário configurar o diretório das bibliotecas, selecione então Library files e entre com os seguintes caminhos (Fig. 4)

  • $(OGRE_HOME)\lib\debug
  • $(OGRE_HOME)\lib\release
  • $(OGRE_HOME)\boost_1_42\lib

Figura 4. Library files

Figura 4. Library files

Criando e configurando um novo projeto (Vazio)

Se você não quiser configurar um projeto do zero, você pode usar o Wizard instalado, para isso pule para o passo 14. Caso contrário continue seguindo.

6º Passo: Abra o VC++ e crie um novo projeto Win32 Console Application. Um assistente será aberto, clique no botão next e marque a opção Empty Project desmarcando a opção Precompiled Header. Clique em Finish. O nome que eu coloquei no projeto foi TutorialApplication.

7º Passo: Faça os downloads dos arquivos de exemplo clicando aqui e salve os arquivos na pasta do seu projeto.

8º Passo: Após fazer o download adicione os arquivos em seu projeto clicando com o botão direito do mouse no projeto e Add –> Existing Item (Fig. 5)

Figura 5. Adicionando arquivos existentes ao projeto

Figura 5. Adicionando arquivos existentes ao projeto

9º Passo: Clique com o botão direito do mouse no nome do projeto em Solution Explorer e selecione Properties e selecione All Configurations conforme Fig. 6

Figura 6. Propriedades do projeto, (a) seleção das propriedades do projeto e (b) seleção de todas as configurações

Figura 6. Propriedades do projeto, (a) seleção das propriedades do projeto e (b) seleção de todas as configurações

10º Passo: Execute as configurações no modo “All Configurations” conforme a tabela 1.

Tabela 1. All Configurations

11º Passo: Execute as configurações no modo “Debug” conforme a tabela 2.

Tabela 2. Debug

12º Passo: Execute as configurações no modo “Release” conforme a tabela 3.

Tabela 3. Release

13º Passo: Salve as modificações e compile seu projeto, se o código compilou sem nenhum problema, sendo assim, a instalação e o projeto foram realizados com sucesso. (Fig 7)

Figura 7. Programa teste em execução

Figura 7. Programa teste em execução

Criando um projeto usando o Wizard

14º Passo: Abra o VC++ e crie um novo projeto OGRE Application Um assistente será aberto, clique no botão next e marque a opção Standard Application. Clique em Finish. O nome que eu coloquei no projeto foi TutorialApplication (Fig. 8)

Figura 8. Criação de um programa usando o Wizard do OGRE

Figura 8. Criação de um programa usando o Wizard do OGRE

15º Passo: Agora é só compilar o projeto para ver o mesmo resultado anterior. (Fig. 7)

Referências

MOTOR GRÁFICO Wiki.

OGRE 3D. Open source graphics engine.

OGRE Wiki.

OGRE Wiki (2010), Setting Up Na Application With Visual Studio


Comentários (22)
  • Jonathan Araujo
    avatar

    Parabens pelo otimo artigo...

    Só uma dica
    Pra nao precisar colocar /debug e /release como por exemplo em:

    $(OGRE_HOME)\bin\debug
    $(OGRE_HOME)\bin\release

    Da para substituir por:

    vs2008
    $(OGRE_HOME)\bin\$(ConfigurationName)

    e no vs2010
    $(OGRE_HOME)\bin\$(Configuration)

  • Bruno Crivelari Sanches
    avatar

    É uma boa sacada, mas tem que tomar cuidado caso no projeto em questão alguém tenha mudado o nome das configurações :).

    Não sei porque no Ogre eles insistem em deixar as dlls e lib em diretórios separados, pois eles já usam nomes diferentes nos arquivos debug e release. :0

  • Andrey Wallace
    avatar

    O link de 4shared que contém o exemplo está com o link inativo. E infelizmente para mim o Wizard não consegue achar o visual studio 2008.

  • Bruno Crivelari Sanches
    avatar

    Esse link aqui funcionou para mim: http://code.google.com/p/ogreappwizards/downloads/detail?name=Ogre_VC9 _Express_AppWizard_1.7.1_2.exe

    Qual link deu erro ai?

  • Andrey Wallace
    avatar

    O do 4shared: http://www.4shared.com/file/d5Lo-qHj/Arquivos_de_Exemplo_OGRE.html que de acordo com o editor do tutorial contém arquivos de exemplo. Obrigado pela rápida atenção.

  • Kleber Andrade
    avatar

    Olá amigo, realmente o link estava errado, desculpe o transtorno, mas agora já corrigi e você pode baixá-lo por la mesmo!
    Abraços,

  • Andrey Wallace
    avatar

    Valeu mesmo consegui fazer tudo de forma bem fácil. Só tive uma pequena dor de cabeça pois estava usando uma versão Professional do Visual Studio 2008 e na hora de instalar o Wizard o mesmo não achava o Visual C++. Mas valeu mesmo !!!

  • Jonathan Araujo  - Atualizações
    avatar

    Recentemente montei um ambiente para o desenvolvimento Ogre, e algumas coisas mudaram.

    1 - A partir do Ogre 1.7.X o diretório: $(OGRE_HOME)\Samples\Common\include não é estritamente necessário, lá tem arquivos como frameworks de exemplo do Ogre como o ExampleApplication

    2 - Na versão 1.7.2 a biblioteca boost foi atualizada para versão 1.44, sendo assim mude tudo de 1_42 para 1_44

    Espero que ajude.

    Qualquer outro problema, poste um comentário.

  • Kleber Andrade
    avatar

    Obrigado Jonathan pela atualização do artigo.

    Abraços,

  • Antonio Candido Morais  - Agradecimento
    avatar

    Agradeço a vocês por este tutorial com ao Kleber e as dicas do Jonathan, e o CTHUGA escrito por ele, e um email a mim respondido com uma dica legal consegui configurar a Ogre no Linux (Ubuntu e Slackware) estou executando tanto no CodeBlock e no KDevelop e no Windows (XP detesto os atuais) estou executando no VC++ 2010 e codeblocks, e bom um compilador multiplataforma.
    Valeu Gente agora tenho que rachar muito para entender a Ogre.
    Abraços
    :) :) :) :) :) :) :) :) :) :) :) :) :) :) :) :) :) :)

  • Kleber Andrade
    avatar

    Por nada amigo,... gostamos muito quando sabemos que nossos artigos conseguem realmente ensinar alguém.

    Agora é só estudar mais a fundo a OGRE e partir para o desenvolvimento de jogos legais para jogarmos!

    Abraços,

  • Jairo Marquea  - Muito bom
    avatar

    Ajudou-me bastante com relação ao path e o Ogre wizard. Obrigado.

  • Rafael Nunes  - Erro ao compilar
    avatar

    Olá.

    Instalei o OgreSDK-vc9.... no meu VC++ 2008
    abri o AppWizard e tentei compilar, o log diz que existem 2 erros, mais eu acho que os dois erros são a consequência de um um variável de ambiente "OGRE_HOME" ,cujo eu mesmo já tratei de faze-la !

    variável = OGRE_HOME = "D:\Programas(R)\OgreSDK_vc9_v1-7-1"

    no log de error ele diz:

    Compiling...
    TutorialAplication.cpp
    c:\documents and settings\rafael nunes\meus documentos\visual studio 2008\projects\tutorialaplication\tutorialaplication\in clude\baseapplication.h(21) : fatal error C1083: Cannot open include file: 'OgreCamera.h': No such file or directory
    BaseApplication.cpp
    c:\documents and settings\rafael nunes\meus documentos\visual studio 2008\projects\tutorialaplication\tutorialaplication\in clude\baseapplication.h(21) : fatal error C1083: Cannot open include file: 'OgreCamera.h': No such file or directory
    Generating Code...
    Project : warning PRJ0018 : The following environment variables were not found:
    $(OGRE_HOME)

    //

    me ajudem a entender isso ! (:

  • Bruno Crivelari Sanches
    avatar

    Rafael, algumas respostas:
    1 - Estava com o visual aberto quando criou a variável de ambiente? Se sim, experimentou sair do Visual e abrir de novo?

    2 - Apenas configurar a variável de ambiente não é o bastante, é preciso dizer ao compilador do visual onde estão os arquivos de include, isso é explicado no item "Configurando o VC++" deste artigo.

    3 - Quais links?

  • Rafael Nunes
    avatar

    O.O' nem liga para os links, é que apareceu um novo comentário em uma seção errada, de um dos colaboradores rsrs..

    Bom continuando, eu abri o VC++ abri um novo ogre app wizard, está çá, fechei e abri o solution desse Ogre no projeto, apareceu os Header file, Source File e Resource file, então botão direito e "Build" o mais incrível é que ele compilou sem erros ! Acredita ?!
    -------------------------------------------//------------------------- ---------------------

    LOG:

    Compiling...
    BaseApplication.cpp
    Ogre_appwizzard.cpp
    Generating Code...
    Compiling resources...
    Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
    Copyright (C) Microsoft Corporation. All rights reserved.
    Compiling manifest to resources...
    Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
    Copyright (C) Microsoft Corporation. All rights reserved.
    Linking...
    LINK : bin\Debug\Ogre_appwizzard.exe not found or not built by the last incremental link; performing full link
    Embedding manifest...
    Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
    Copyright (C) Microsoft Corporation. All rights reserved.
    Copying exe to samples bin directory ...
    1 arquivo(s) copiado(s).

    -------------------------------------------//---------------------- ------------------------
    Bom outro detalhe é que eu não baixei o DirectX SDK que está lá encima nos links eu baixei um outro SDK do direct_x de 100MB !

    ele é de 2009. tem algum problema com relação a isso?

  • Bruno Crivelari Sanches
    avatar

    Que bom. Você só precisa do SDK se for compilar o Ogre.

    T+

  • Rafael Nunes
    avatar

    Bom, vou começar sim a compilar com o Ogre, já baixei o SDK dele e o do direct_x, mas não sei nem por onde começar :X ...

    se estiver disponível, mande um e-mail para mim, pra gente ter um melhor contato :)

    rafaelnunes737@hotmail.com

    att. Rafael Nunes

  • Rafael Nunes  - Links
    avatar

    os links que postou, parecem inválidos !
    tentei entrar e não consegui em nenhum deles...

    Páginas não encontradas.

  • Anônimo
    avatar

    Como faz para instalar no Code Blocks? Usa o mesmo Ogre SDK ou tem que baixar o ogre para Mingw

  • Bruno Crivelari Sanches
    avatar

    Se tem versão mingw, então use ela.

    T+

  • Carlos Bernardo  - Pergunta
    avatar

    :side: Pessoal estou fazendo um game em 2D para isso uso duas bibliotecas distintas uma para por imagens na tela com as coordenadas X e Y e outro que faz a física do jogo. Agora estou passando para o 3D e queria mexer com 3D Ogre e saber se o principio é o mesmo, pois o Newton Game Dynamics é muito parecido com o 2DBox se cria um mundo e coloca as "coisas". O Principio para integrar física ao 3D Ogre seria igual?

    Mais uma pergunta quais bibliotecas próprias para AI existem não achei nenhum terei que criar minha própria AI?

    Muito obrigado

Escrever um comentário
Your Contact Details:
Gravatar enabled
Comentário:
[b] [i] [u] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch::(:shock:
:X:side::):P:unsure::woohoo::huh::whistle:;):S:!::?::idea::arrow:
Security
Por favor coloque o código anti-spam que você lê na imagem.
LAST_UPDATED2  

Busca

Linguagens

Twitter