Ceci est une ancienne révision du document !



Ogre 3D

Ogre3d est un moteur de rendu graphique 3D multiplateformes, sa puissance et sa modularité en font un bon choix pour développer un jeu multi-plateformes en C++ ( mais permet aussi de l'utiliser dans d'autres langages, tels que .Net, python … ). Disponible en LGPL ou en licence commerciale OUL, il conviendra tant aux projets libres que commerciaux.

Ogre est déjà disponible via les dépots, cependant, celui-ci n'est pas à jour. Pour obtenir les derniers dépots de Ogre, ainsi que ceux de CEGUI (l'interface recommandée de Ogre) et les derniers dépots nvidia-cg-toolkit compatibles, vous pouvez ajouter Les dépots PPA de Andrew Fenn. Pour ceci il vous faut soit taper cette ligne dans le terminal :

sudo add-apt-repository ppa:andrewfenn/ogredev

Ou encore ajouter les sources

deb http://ppa.launchpad.net/andrewfenn/ogredev/ubuntu lucid main 
deb-src http://ppa.launchpad.net/andrewfenn/ogredev/ubuntu lucid main 

Ensuite, installez simplement le méta-paquet apt://libogre-dev, ou en ligne de commande:

sudo apt-get install libogre-dev

L'installation n'est pas très compliquée bien qu'elle demande un peu de compilation.

Installation des dépendances disponibles dans les dépôts

Installez les paquets alien automake build-essential libcppunit-dev libmng-dev libsdl-dev libtool libxaw7-dev libfreetype6-dev libpcre3-dev libzzip-dev libxrandr-dev libxxf86vm-dev freeglut-dev disponibles dans les dépôts.

Installation des dépendances non présentes dans les dépôts

Téléchargez Freeimage, CEGUI (la version 0.6.2 ne compile pas sous jaunty), OIS et le CG toolkit de nvidia (celui-ci est optionnel si on ne compte pas utiliser les shaders cependant).

Freeimage

Compiler freeimage est très simple:

make 
sudo make install

Il est néanmoins possible que le make install ne copie pas les fichiers (version 3.12.0 sous Ubuntu Jaunty). Si c'est le cas, le ./configure de Ogre vous le fera savoir. Retournez alors dans le dossier de FreeImage et tapez

sudo cp Source/FreeImage.h /usr/include/
sudo cp libfreeimage.a /usr/lib/
sudo cp libfreeimage-3.12.0.so /usr/lib/

OIS

Il y a un petit problème d'encodage dos avec OIS (les fins de lignes ne sont pas gérées pareil entre les deux os et ça peut causer des problèmes, notamment des erreurs assez obscures pendant le ./configure), le plus simple est d'installer tofrodos et de convertir les fichier en codage unix :
Installez le paquet tofrodos puis tapez

fromdos *.* bootstrap

puis on compile:

./bootstrap
./configure
make
sudo make install

CEGUI

Pour que CEGUI fonctionne correctement sous Ubuntu, il faut utiliser TinyXML comme parser, et non Xerces (ils sont fournis dans les fichiers à compiler). Nous allons donc désactiver Xerces lors de la configuration.

aclocal
./configure --disable-xerces-c
make 
sudo make install

Le CG Toolit de Nvidia

Utilisez alien pour installer le paquet .rpm

sudo alien Cg-2.2_April2009_x86_64.rpm (remplacer par votre version si nécéssaire)
sudo dpkg -i cg_2.2.0006-2_amd64.deb

Installation d'Ogre à proprement parler

Téléchargez et décompressez le code source de Ogre. Placez vous dans le dossier ogre et tapez :

aclocal
./bootstrap
./configure
make
sudo make install
Avec Ogre 1.4 et Ubuntu 8.04 ou plus, le bootstrap peut bloquer avec la librairie libtool (Libtool 1.4 or above is required. Aborting build…), la solution ce situe sur le forum à l'adresse suivante http://forum.ubuntu-fr.org/viewtopic.php?id=264859. Le problème semble réglé avec Ogre 1.6 et Ubuntu 9.04
Remarque

Vous pouvez aussi souhaiter faire un paquet, en utilisant la commande checkinstall au lieu du make install.

Pour cela, il vous faudra utiliser la commande suivante :

sudo checkinstall --exclude /lib,/bin,/usr/share,/usr/bin,/usr/lib/gcc/i486-linux-gnu/4.1.2
Un paquet crée avec checkinstall n'est installable que sur votre machine, dans l'état où elle était lorsque vous avez crée ce paquet.

Configuration et test

En dernier lieu il faut configurer l'éditeur de liens (ld) pour qu'il trouve les bibliothèques au moment de créer vos programmes : éditer (créez) le fichier /etc/ld.so.conf.d/libc.conf et ajoutez y:

/usr/local/lib/

sauvegardez et quittez, puis lancez

sudo ldconfig

Vous pouvez lancer les démos dans ogre/Samples/Common/bin (je vous conseille notamment Fresnel)

Remarque

Si vous utilisez l'IDE Code::Blocks, il faudra penser lors de la compilation à utiliser le profil "Release" dans l'option "Build Target". Sinon, rendez-vous dans le menu "Project→Build Options", sélectionnez "Debug" dans la liste de gauche, dans l'onglet "Linker Settings", et remplacez "OgreMain_d" par "OgreMain"

Vous trouverez les tutos en français sur http://ogre3d.fr et en anglais sur http://ogre3d.org. Parés à faire le jeu du siècle?


Contributeurs : Tshirtman, Joel Cogen

  • ogre.1278789559.txt.gz
  • Dernière modification: Le 18/04/2011, 14:55
  • (modification externe)