Developpez.com - Rubrique 2D-3D-Jeux

Le Club des Développeurs et IT Pro

La version 1.3.2 de ProceduralGenerator est maintenant disponible et améliore le support des shaders.

Le 2012-08-29 10:15:45, par dragonjoker59, Expert éminent sénior
Version Actuelle : 2.0.0

Présentation

Procedural Generator est une application permettant de charger divers plugins de génération / traitement d'image (générateur).
L'application principale charge les générateurs, permet la sélection du générateur actif et affiche le résultat de son travail.
Le travail des générateurs est découpé en 2 étapes :
  • 1ère étape : CPU step : génération d'image en utilisant le CPU.
  • 2ème étape : GPU step : traitement d'image via le GPU.

La GPU step utilise OpenGL et permet l'utilisation des shaders GLSL.
La CPU step est multithreadée afin d'accélérer les calculs.
Certains générateurs peuvent n'utiliser que la CPU step, tels Perlin Noise, Life Game ou Diffusion Limited Aggregation.
D'autres peuvent n'utiliser que la GPU step, tels Shader Effects ou Text Effects.
Certains enfin peuvent utiliser les 2, tel Shader Webcam.

Fonctionnalités
  • Calculs CPU multithreadés
  • Les générateurs sont des plugins pour plus de flexibilité
  • Jeu de la vie (Life Game) : classique, buggé , coloré
  • Perlin Noise (marbre, turbulences, parametré)
  • Diagrammes de Voronoï (distances euclidienne, euclidienne au carré, manhattan, minkowski, chebychev)
  • Iterated Function Systems (Sierpinski carpet et gasket, Koch curve, ...)
  • Limited Diffusion Aggregation
  • Post-traitement d'image sur le CPU (flou gaussien, réduction de bruit anisotropique et lineaire, accentuation des contours ...)
  • Post-traitement d'image sur le GPU (via GLSL)
  • Webcam + post-traitement d'image sur le GPU (via GLSL)
  • Programmation GLSL pour faire des démos
  • Traitement d'image via OpenCL (Version 2.0.0)
  • Enregistrement du résultat en image
  • Enregistrement du résultat en vidéo (Version 2.0.0)


Galerie
[ATTACH]124492d1/a/a/a" /> [ATTACH]124493d1/a/a/a" /> [ATTACH]124494d1/a/a/a" /> [ATTACH]124495d1/a/a/a" />

Compilation
Procedural Generator regroupe plusieurs projets à générer avec CMake :
  • Generator : libraire dynamique regroupant les fonctions et classes communes aux générateurs
  • Les générateurs : plug-ins, 1 par générateur
  • ProceduralGenerator : exécutable de l'application principale


Dépendances
Pour compiler Generator, vous aurez besoin de FreeType et OpenGL
Pour compiler ProceduralGenerator, vous aurez besoin de wxWidgets et Generator. Pour l'enregistrement vidéo (optionnel), vous aurez besoin de OpenCV ou ffmpeg.
Pour compiler les générateurs, vous aurez besoin de Generator.