tototototototot

All posts in C++

Matrix Fall X (source code in c++)

This code emulates the falling code effect (digital rain effect) from the Matrix movie. It uses the authentic fonts and a new particle engine for better visual effects. Coded in c++ with the OpenGL API. Source code included. This code received the ‘Superior Code’ award for Planet-Source-Code and many great feedbacks from programming websites. Source […]

Effet d’effritement 3D en OpenGL

Test en OpenGl d’un effet que je tentais de mettre au point pour la nouvelle version du Matrix Fall, mais qui pour finir n’aura jamais été utilisé. L’effet est obtenu en décomposant une image de base en une série de carrés dont la taille est paramétrable. Dans ce cas-ci, les carrés ont une taille de […]

Matrix Fall X (démo et port du Matrix Fall 3D en c++)

Cette démo est en quelque sorte l’objectif que je m’étais fixé pour me lancer dans le c++. Pas mal de petites nouveautés et notamment l’utilisation de l’OpenGl, contrairement à DirectX utilisé pour Matrix Fall 3D. C++ oblige, comparé au vb, la puissance est multipliée par 10x, ce qui m’a donné l’occasion d’y ajouter un petit […]

Classe client HTTP – sClientHttp

Classe écrite en C++ gérant le protocole HTTP. Toutes les spécificités du protocole HTTP n’ont pas été intégrées, elle vous permet néanmoins d’apprendre assez facilement à manipuler les sockets non-bloquants grâce à un processus indépendant se chargeant de les gérer. Le mode de transfert “chunked” (transfert-encoding: chunked) est aussi de la partie. Les chunks permettent […]

Lecture d’un fichier BMP 24 bits

Le fichier entête “d’entrées/sorties” qui va nous permettre de manipuler les fichiers : #include Ensuite la définition d’un “macro” qui simplifie la convertion en ‘int’ : #define CTOI(C) (*(int*)&C) La structure qui va acceuillir les données de notre image : // la structure qui contient les infos de notre image struct PropPicture { // l’entête […]

Création d’une fenêtre sous Windows

Les déclarations : // indispensable #include // contient l’hwnd de la fenêtre HWND hWnd; // l’instance HINSTANCE hInstance_sz; // la fonction de retour, celle qui va recevoir les messages en provenance du système (ouverture, fermeture,…) LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); La fonction de retour WndProc : // Cette fonction est appelée par Windows (c’est […]

Le multitexturing en OpenGL

Le multitexturing requiert le chargement d’une extension désormais intégrée dans OpenGL depuis sa version 1.3. Pour savoir si une carte supporte une extension, reportez vous au post suivant. La première chose à faire est d’ajouter le fichier entête suivant: glext.h, téléchargeable ici. Ensuite, il faut déclarer les variables qui vont contenir les adreses des fonctions […]

Les extensions OpenGL

Les extensions sont des fonctionnalités qui viennent s’ajouter à la base d’OpenGl. Elles permettent aux développeurs d’accéder à des fonctionnalités matérielles présentent sur certaines cartes. En gros, elles permettent aux constructeurs d’apporter leurs petites touches personnelles lorsque les spécifications de base leur semblent insuffisantes. Ainsi NVidia, Ati, Intel, SGI, 3dFx, S3, … ont tous développé […]