Ca doit faire bien 10 ans maintenant que je pratique quotidiennement le C (ou un de ses "dérivés"), et il y a des jours où je crois honnètement avoir fait le tour du langage. Pourtant, les pièges restent bien présent, en particulier compte tenu du fait que je cesse de le pratiquer dans un seul … Continue reading -Wconversion
Category: c++
Dans le Pied++
Je n'avais pas une grande expérience du C++ pendant les années où j'ai travaillé sur mon projet d'OS, mais j'avais suivi avec intérêt les investigations de DasCandy pour parvenir à faire fonctionner les objets globaux (cf. http://wiki.osdev.org/C_PlusPlus). Et j'en avais retenu une chose : n'utiliser ces choses qu'en cas d'urgence, et avec la prudence qui … Continue reading Dans le Pied++
Non, ça n’ira pas…
Je bricole ces derniers jours la partie du GameEngine qui permettra d'appeler du code C++ à partir des transitions : les GunFactories (essentiellement parce que c'est une généralisation du mécanisme destiné à permettre aux sprites de tirer d'autres sprites). Comme premier test, évidemment, j'essaie de créer une action externe capable de charger un nouveau niveau … Continue reading Non, ça n’ira pas…
<algorithm>
Bon. J'aurais été en C, j'aurais ajouté "GOB* prev=0; GOB* next=0;" dans ma structure et on en aurait plus parlé. Mais je suis en C++. Mes sprites (Graphic OBjects) doivent être listés par "caste" (héro ou vilain) pour les tests de collisions et je cherchais désespérément une manière simple d'effacer un élément donné d'un vecteur … Continue reading <algorithm>
Refactoring again…
Well, once again, i'm refactoring the code of my game engine, as suggested in this earlier post ... Though i already have to revise some of those proposals: iGobPubstate is not clean object-oriented approach and causes more trouble than solution for the rest of the stuffs.Meanwhile, i've updated a former post about collision detection on … Continue reading Refactoring again…
extern "C" { … }
Dans la série "le monde magique et surprenant du C++", le commandant stdio nous emmène au plus profond de la mer d'incompréhension pour observer le standard (poisson très farouche) dans son milieu naturel ...on s'accroche bien.extern "C" { class X { X() { iprintf("toto"); } ~X() { iprintf("tutu"); } void stuut() {iprintf("stuut\a\n");} };}on compile, eh … Continue reading extern "C" { … }
DirShow & TypeWord
Première difficulté pour le "level editor": la gestion des fichiers. J'avais contourné la difficulté d'une manière assez élégante dans sprite Editor en fixant la limite à quatre fichiers: spriteA, spriteB, spriteX et spriteY. On choisissait celui à charger/sauver en appuyant sur un des boutons de la console au moment voulu.Ne garder que 4 fichiers modifiables … Continue reading DirShow & TypeWord
iWorld has non-virtual desctructor
Okay. Ca y est. Après avoir donné un destructeur virtuel à la classe iWorld (:P), et surtout une fonction reset() à la classe GameObject pour s'assurer que les nouveaux sprites ne vont pas essayer de "vivre" dans l'ancien monde (détruit) après reconstruction du nouveau monde, je peux recharger mon script de niveau autant de fois … Continue reading iWorld has non-virtual desctructor
faire et défaire …
autre bonne nouvelle: les animations marchent! enfin, quand je dis "marchent", je devrais plutôt dire "rampent", puisque pour l'instant, seul le "petit ver jaune" de la forêt a été animé.Je suis pas mal fier de mon coup, je dois dire. J'ai gardé un code tout à fait générique, qui est paramétrisé par un petit script … Continue reading faire et défaire …
Message d’horreur
J'ai choisi C++ comme langage pour mes bricoles sur la console Nintendo. Principalement parce que c'est un langage que je ne maitrise pas, en fait. J'aime bien le côté "orienté objet" de la programmation: je trouve ça plus propre. La plupart de mes lignes de codes ont d'abord été cogitées sur papier en UML et … Continue reading Message d’horreur