Formation : journées OpenFrameWorks

Publié le 01 septembre 2010 par Mainsdoeuvres


Openframeworks est un ensemble de librairies écrites en c++ pour réaliser des applications interactives qui utilisent pleinement les capacités d'une machine (PC / Mac / (Linux)). Cet environnement comprend la création d'images dynamiques (OpenGL), la gestion de sons, la manipulation de fontes, d'images ou de videos. De nature extensible et open-source, openframeworks est ouvert à l'ajout de nouvelles libraries (gestion OSC, Midi, etc ...) sous forme d'add-ons.

Les similarités d'OpenFrameWorks avec Processing dans les concepts de programmation en font un pont idéal pour les utilisateurs réguliers de Processing désireux d'aller plus loin dans l'exploitation des capacités de leur(s) machine(s). En outre, c'est un environnement qui permet de se familiariser de manière très fluide et ludique avec le c++, qui a une image de langage difficile d'accès.

Pré-requis matériel Openframeworks est multiplateforme, mais les systèmes d'exploitation utilisés par le formateur sont MacOSX (Leopard ou Tiger) PC Windows (XP ou Vista

Connaissances pré-requises L'atelier est destiné à des personnes ayant déjà une expérience en programmation et ayant suivi au minimum les ateliers 1&2 de Processing (niveau 3&4 ou cours du soir recommandés).

Programme des deux journées

  • Différences avec Processing
  • Mise en place / installation d'un IDE (environnement de développement : Xcode sur Mac ; Code-Blocks sur PC+(Linux)) ; présentation des fonctionnalités principales d'un compilateur. Quelles étapes pour passer de fichiers sources (texte) écrits en c++ à un programme éxécutable ? Et puis d'ailleurs, pourquoi ce nom bizarre c++ ?
  • Installation des librairies d'openframeworks
  • Révision des principes de base de la programmation : fonctions, variables, conditions, boucles.
  • Création de projets avec openframeworks. Compilation de programmes éxécutables.
  • Notions fondamentales du c++ : les classes, les fichiers .h(pp) / .cpp, les pointeurs, références, opérateurs,...
  • Utilisation/création de classes, et de conteneurs (tableaux, listes).
  • Dessin avec OpenGL, 2D et 3D.
  • Utilisation / chargement de médias : fontes, sons, videos.