Ce programme est un moteur de particules développé pendant 2 mois durant des Travaux de Recherche et d'Etude (TER) en Master 1 Informatique.
Les objectifs de développement ont été:
- La mise en place d'un moteur de particules générique.
- L'intégration d'un language script (LUA) pour gérer les effets
- L'utilisation des outils ainsi créés pour réaliser un rendu d'explosion
 |
Le programme a été développé en C++ / DirectX 9 et utilise les Shaders modèle 3 pour le rendu. Il est possible de configurer les propriétés et le comportement des particules grâce à la gestion des scripts LUA intégrée au système.
|
|
Il est à noter que le temps de développement relativement court pour ce projet ne permet pas d'en faire un outil totalement utilisable hors du contexte utilisé ici. La distribution de ce projet a avant tout pour but de fournir une base pour ceux qui souhaiteraient se lancer dans la mise en place d'un moteur de particules. Les sources sont également disponibles dans cette optique.
|
Le projet a nécessité beaucoup de recherches pour intégrer de nombreuses notions dans le domaine de la programmation multimédia. Voici une partie des techniques utilisées:
- Multiple Render Target
- Deferred Shading
- Geometry Instancing
- Billboarding
- Phong Shading
- Memory Allocator
- Volumetric Textures
- Perlin Noise
- Dynamic Texture Generation