Archives mensuelles pour mars 2009

Comment rediriger la sortie de la SDL vers la console

…ou comment forcer l’affichage de printf en console et empêcher SDL de l’enregistrer dans stdout.txt .

Cette question est traitée dans la FAQ officielle. On peut trouver d’autres solutions en parcourant le net ( qques sujets sur le forum de gamedev.net notamment ) mais aussi ici .

En résumé, il faut ajouter quelques lignes lors de l’initialisation de la SDL.Le code suivant fonctionne chez moi:

freopen( "CON", "w", stdout );
freopen( "con", "w", stderr );

SDL_Init(SDL_INIT_VIDEO);
FILE* ctt = fopen("CON", "w" );

ecran = SDL_SetVideoMode(676, 640, 32, SDL_HWSURFACE | SDL_DOUBLEBUF);    //On crée la fenetre.
fclose( ctt );

Comment éviter d’entrer à chaque fois son mot de passe dans TortoiseSVN ?

Pseudo-traduction de l’article suivant:

Pour ceux d’entre vous qui en ont assez d’entrer leur mot de passe chaque fois que TortoiseSVN le demande, il existe une alternative simple.
Vous devez pour cela avoir votre nom d’utilisateur ( = login ) déjà dans l’url du repository ( cad svn+ssh://login@hostname/chemin/vers/le/repository ), vous pouvez ensuite aller à l’onglet « Network » des paramètres de TortoiseSVN et ajoutez TortoisePlink.exe comme client SSH (C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe). Après le TortoisePlink.exe ajoutez ‘-pw password‘, de manière à ce que votre ligne de commande SSH ressemble au final à ceci:

C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -pw password

Comment utiliser la documentation Fmodex pour gcc ?

Ou encore comment convertir l’interface OO C++ de fmodex en sa version procédurale « C » ?

En effet, l’interface objet de fmodEx ne compile pas avec GCC ce qui oblige à revenir à l’ancienne syntaxe Fmod seulement la documentation FModex ne couvre que l’utilisation OO. Heureusement un court « algorithme » permet de retrouver le prototype de la fonction C équivalente à partir de sa documentation OO. Voici prototype C++:

FMOD_RESULT System::init( int maxchannels FMOD_INITFLAGS flags, void * extradriverdata );
L’équivalent C sera :

FMOD_RESULT FMOD_System_Init(FMOD_SYSTEM * system,int maxchannels FMOD_INITFLAGS flags, void * extradriverdata);

De manière générique, NomDeClasse::nomDeLaMethode( ...) devient FMOD_Classe_Methode(NomDeClasse* param,...);

Noter la majuscule de « NomDeLaMethode », anciennement « nomDeLaMethode ».

Archive de développement windows SDL / SDLimage / SDLgfx ( rotozoom ) / Lua

Ayant besoin de linker ces différentes bibliothèques dans le cadre d’un projet informatique et face à la difficulté de réunir les fichiers nécessaires depuis le net, j’ai fait une archive contenant les headers & .lib de ces 3 bibliothèques en espérant que cela vous servira.

Ici pour télécharger.

Si vous utilisez CodeBlocks, copiez le dossier « include » & « lib » respectivement dans le dossier « include » de CodeBlocks ( par défaut C:\Program Files\CodeBlocks\MinGW\include ) et dans son dossier « lib » ( C:\Program Files\CodeBlocks\MinGW\lib ).

Pour inclure les headers, vous devrez faire #include <SDL/SDL.h>, #include <SDL/SDL_image.h>, include <lua/lua.h>,#include <lua/lualib.h>, #include <lua/lauxlib.h> .

Pour linker les bibliothèques, sous Code::Blocks toujours : Clic droit sur votre projet -> Build Options ( ou bien via le menu ( Project -> Build Options ) , Onglet Linker dans la zone de texte de droite,entrez ceci ( ATTENTION à l’ordre entre -lSDLmain et -lSDL !! ) :

-lmingw32
-lSDLmain
-lSDL
-lSDL_gfx
-lSDL_image

Une fois votre projet compilé, pensez à copier les .dll du dossier « dll » dans le dossier courant de votre exécutable  ( si vous utilisez SDL_image sinon inutile ) !

NB: Ci-joint le lien vers l’installeur de doxygen

NB2: L’archive contient les documentations au format .chm de dOxygen & de SDL ( très utile ! )