Wiki

Reso-nance numérique | Arts et cultures libres

Outils du site


logiciels:openframeworks:accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
logiciels:openframeworks:accueil [2015/03/15 18:12]
resonance
logiciels:openframeworks:accueil [2018/01/18 06:56] (Version actuelle)
chenjianwei [2D et 3D PRIMITIVES]
Ligne 1: Ligne 1:
-====== OpenFrameworks ====== +http://www.adidas-eqt.us.com 
-OpenFrameworks est une boîte à outil (//framework//) écrite en C + + pour le code créatif+http://www.nikerosheone.co.uk 
-http://openframeworks.cc+http://www.nikemercurial.us.com 
 +http://www.lebron15.net 
 +http://www.balenciagashoes.us.com 
 +http://www.toryburchshoes.us 
 +http://www.hardenshoes.us.com 
 +http://www.air-max.us.com 
 +http://www.jordanshoes.uk 
 +http://www.adidassuperstar.us.com 
 +http://www.adidasonlineshop.us.com 
 +http://www.pradasunglasses.us.org 
 +http://www.adidasgazelle.us.com 
 +http://www.mlbjerseyscheap.us 
 +http://www.kobe-shoes.us.com 
 +http://www.kobebasketballshoes.us.com 
 +http://www.hoganoutlet.cc 
 +http://www.jordan13.us.com 
 +http://www.pandorabracelet.in.net 
 +http://www.lebron15shoes.us.com 
 +http://www.adidasstansmith.us.com 
 +http://www.adidasnmdrunner.us.com 
 +http://www.boostyeezy.us.com 
 +http://www.kobesneakers.com 
 +http://www.yeezy-shoes.us 
 +http://www.nikehuarache.co.uk 
 +http://www.outletonline-michaelkors.us.org 
 +http://www.nike-airmax90.uk 
 +http://www.linksoflondon.us.com 
 +http://www.offwhitehoodie.us.com 
 +http://www.nikerosheone.us.com 
 +http://www.adidas-tubular.us.com 
 +http://www.outletonlinekatespade.us.com 
 +http://www.nikehyperdunk2017.us.com 
 +http://www.rosherun.us.com 
 +http://www.lebron-soldier10.us.com 
 +http://www.cartierbracelet.us 
 +http://www.retro-jordans.us.com 
 +http://www.adidasyeezyshoes.us.org 
 +http://www.linksoflondonus.com 
 +http://www.michaelkors-outletsonline.us.com 
 +http://www.lacosteonlineshop.us.com 
 +http://www.nikeairforce1.us.com 
 +http://www.airmax90.us.org 
 +http://www.jordan-retro.us.com 
 +http://www.stephencurry-shoes.us.com 
 +http://www.monclersoutlet.us.com 
 +http://www.yeezyboost350v2shoes.us.com 
 +http://www.jordan6.us.com 
 +http://www.lebron13.us.com 
 +http://www.nikedunks.us.org 
 +http://www.outletlongchamp.us.com 
 +http://www.longchamphandbagsoutlet.us.org 
 +http://www.airjordan.us.com 
 +http://www.hermes-birkin.us.com 
 +http://www.goldengoose-outlet.us.com 
 +http://www.hermesbelts.co.uk 
 +http://www.chrome-hearts.us.org 
 +http://www.supremeclothing.us 
 +http://www.kevindurant-shoes.us.com 
 +http://www.adidasnmds.com 
 +http://www.nmdadidasus.com 
 +http://www.charmspandora.in.net 
 +http://www.nike-huarache.com 
 +http://www.bape-hoodie.us.com 
 +http://www.adidasoutletonline.us.com 
 +http://www.hermesbelts.com 
 +http://www.fitflops-saleclearance.us.com 
 +http://www.nike-hyperdunk.us.com 
 +http://www.goyard-handbags.us.com 
 +http://www.jewelrypandora.in.net 
 +http://www.outlettimberland.us.org 
 +http://www.michael--korsoutlet.us.org 
 +http://www.yeezy-shoes.uk 
 +http://www.kobebasketballshoes.net 
 +http://www.michaeljordanshoes.net 
 +http://www.adidassuperstar.org.uk 
 +http://www.offwhiteclothing.us.com 
 +http://www.ferragamobelt.us 
 +http://www.guccibelt.us.com 
 +http://www.chromehearts.com.co 
 +http://www.yeezyboost350v2.org.uk 
 +http://www.hermes-handbags.us.com 
 +http://www.paulgeorgeshoes.us 
 +http://www.cheapnbajerseys.us.org 
 +http://www.nike-airmax2017.us.com 
 +http://www.patriotsjerseys.us.com 
 +http://www.vancleefarpels.us.com 
 +http://www.michaelkorshandbags.net.co 
 +http://www.supremehoodie.us.com 
 +http://www.jordanshoes.com.co 
 +http://www.adidas-tubular.us.com 
 +http://www.longchamp-bags.us.org 
 +http://www.louboutinshoes.uk 
 +http://www.yeezy-shoes.us.org 
 +http://www.yeezy-boost350.us.com 
 +http://www.long-champhandbags.org.uk 
 +http://www.adidasultraboost.us.org 
 +http://www.curry3.in.net 
 +http://www.jordan11retro.us.com 
 +http://www.airjordanretro.uk 
 +http://www.thelightupshoes.us.com 
 +http://www.reebokoutlet.us.org 
 +http://www.goyardhandbags.us.com 
 +http://www.adidasstore.us.com 
 +http://www.nikezoom.us.com 
 +http://www.fitflops.cc 
 +http://www.cheap--jordans.us.com 
 +http://www.michaelkors-outletstore.us.com 
 +http://www.monclerjacketsale.us 
 +http://www.nikehuaracheshoes.us.com 
 +http://www.vans-shoes.us.org 
 +http://www.ledshoes.us.com 
 +http://www.converseoutlet.us.com 
 +http://www.nikezoom.me.uk 
 +http://www.bapehoodie.us 
 +http://www.adidasstansmith.uk 
 +http://www.kyrie3.us.com 
 +http://www.outletlacoste.us.com 
 +http://www.yeezys.org.uk 
 +http://www.truereligionjeans-outlets.us.com 
 +http://www.michaelkors-outletonlines.us.com 
 +http://www.yeezyboost.in.net 
 +http://www.michael-kors-handbags.org.uk 
 +http://www.authenticjordanscheap.us.com 
 +http://www.chromehearts.net.co 
 +http://www.michaelkors-outletfactory.us.org 
 +http://www.nikeairmax2018.us.com 
 +http://www.hermes-belt.us.com 
 +http://www.yeezy-boost.us.com 
 +http://www.nikefoamposite.us.com 
 +http://www.calvinkleinoutlet.us.com 
 +http://www.nikehuarache.uk 
 +http://www.adidasneo.us.com 
 +http://www.birkinbag.us.com 
 +http://www.nikebasketballshoes.us.com 
 +http://www.longchamphandbags.us.org 
 +http://www.asicsrunningshoes.us.org 
 +http://www.yslhandbags.org 
 +http://www.yeezy-shoes.org.uk 
 +http://www.goldengoose.us.com 
 +http://www.lebron14.us.com 
 +http://www.lebronjames-shoes.us.com 
 +http://www.adidastubular.co.uk 
 +http://www.goldengoose-snearkers.com 
 +http://www.cheapretro-jordans.com 
 +http://www.basketball-shoes.us.com 
 +http://www.longchampbags.us.org 
 +http://www.paulgeorgeshoes.us.com 
 +http://www.yeezys.us.org 
 +http://www.nikepolo.us 
 +http://www.adidasyeezy.co.uk 
 +http://www.michael-kors-handbags.com.co 
 +http://www.toryburchshoes.org.uk 
 +http://www.curry4shoes.us.com 
 +http://www.vibramfivefingers.us.com 
 +http://www.cheap-airjordans.us.com 
 +http://www.jordan12.us.com 
 +http://www.tomford-sunglasses.us.com 
 +http://www.kobeshoes.uk 
 +http://www.vans-outlet.us.com 
 +http://www.katespadehandbags-outlet.us.com 
 +http://www.adidas-nmds.us.com 
 +http://www.balenciagasneakers.com 
 +http://www.cheaprealjordans.us.com 
 +http://www.yeezyboost.com.co 
 +http://www.nfljerseys.us.org 
 +http://www.curry4.us.com 
 +http://www.adidasultra.us.com 
 +http://www.christian-louboutin.eu.com 
 +http://www.shoesjordan.us.com 
 +http://www.jordan4.us.com 
 +http://www.kyrie4.org 
 +http://www.nike-freerun.us.com 
 +http://www.atlantafalconsjerseys.us 
 +http://www.michaeljordanshoes.us.com 
 +http://www.kyrie4shoes.us.com 
 +http://www.converse-shoes.us.com 
 +http://www.yeezy-shoes.org 
 +http://www.ultraboost.us.com 
 +http://www.nhljerseys.us.org 
 +http://www.truereligion-outlets.us.com 
 +http://www.jordansforcheap.us.com 
 +http://www.lebron-soldier11.us.com 
 +http://www.adidasnmd.uk 
 +http://www.diorsunglasses.in.net 
 +http://www.adidasoutletonline.com 
 +http://www.nike-airforce1.us.com 
 +http://www.kyrieirving-shoes.us.com 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 +===== 2D et 3D PRIMITIVES ===== 
 +Cercle, carré, rectangle, sphère, cylindre, tore, cone, ..
 + 
 +{{.:primitives.png}}
  
-{{vimeo>74124094?medium}} 
  
 ===== Ressources ===== ===== Ressources =====
  
-  * Un livre de la communauté (en cours de rédaction, mais déjà bien fourni) : [[https://github.com/openframeworks/ofBook|ofBook]], et en pdf {{:logiciels:openframeworks:ofbook.pdf|ofbook.pdf}}+  * Un livre de la communauté (en cours de rédaction, mais déjà bien fourni) : [[https://github.com/openframeworks 
 +/ofBook|ofBook]], et en pdf {{:logiciels:openframeworks:ofbook.pdf|ofbook.pdf}} 
 +  * Le livre "Programming Interactivity" de Joshua Noble
   * Tous les objets : http://openframeworks.cc/documentation/   * Tous les objets : http://openframeworks.cc/documentation/
   * Les tutoriels : http://openframeworks.cc/tutorials/   * Les tutoriels : http://openframeworks.cc/tutorials/
Ligne 41: Ligne 246:
  
   * OpenFrameworks est une boîte à outil en C + + avec un langage, sous la forme d'un dossier à télécharger. Pour ouvrir, compiler et exécuter les projets il faut installer un logiciel que l'on nomme environnement de développement intégré (IDE en anglais) comme Code::Blocks pour Windows et Linux ou XCode pour Mac. Processing est à la fois une boîte à outil avec un langage et l'environnement de développement.    * OpenFrameworks est une boîte à outil en C + + avec un langage, sous la forme d'un dossier à télécharger. Pour ouvrir, compiler et exécuter les projets il faut installer un logiciel que l'on nomme environnement de développement intégré (IDE en anglais) comme Code::Blocks pour Windows et Linux ou XCode pour Mac. Processing est à la fois une boîte à outil avec un langage et l'environnement de développement. 
-  * OpenFrameworks est du pur C + +, Processing est un langage simplifié du Java (mais peut-être utilisé directement dans Java)+  * OpenFrameworks est du pur C + +, Processing est un langage simplifié du Java (mais peut être utilisé directement dans Java)
   * Internet : plus simple avec Processing   * Internet : plus simple avec Processing
   * Beaucoup de 3D : OpenFrameworks (C + +)   * Beaucoup de 3D : OpenFrameworks (C + +)
Ligne 54: Ligne 259:
   - Télécharger [[http://openframeworks.cc/download/|OpenFrameworks]] pour votre plateforme (Mac, Windows, Linux)    - Télécharger [[http://openframeworks.cc/download/|OpenFrameworks]] pour votre plateforme (Mac, Windows, Linux) 
   - Installer et configurer l'environnement de développement (IDE) pour votre plateforme : [[http://openframeworks.cc/setup/codeblocks/| Code::Blocks pour Windows]], [[http://openframeworks.cc/setup/linux-codeblocks/|Code::Blocks pour Linux]] ou [[http://openframeworks.cc/setup/xcode/|XCode pour Mac]].   - Installer et configurer l'environnement de développement (IDE) pour votre plateforme : [[http://openframeworks.cc/setup/codeblocks/| Code::Blocks pour Windows]], [[http://openframeworks.cc/setup/linux-codeblocks/|Code::Blocks pour Linux]] ou [[http://openframeworks.cc/setup/xcode/|XCode pour Mac]].
-  - Pour Windows, télécharger aussi [[http://www.openframeworks.cc/content/files/codeblocks_additions.zip|codeblocks_additions.zip]] et suivre la procédure (il s'agit de copier des fichiers tout simplement)+  - Pour Windows, télécharger aussi [[http://www.openframeworks.cc/content/files/codeblocks_additions.zip|codeblocks_additions.zip]] et suivre la procédure (il s'agit de copier le contenu de deux répertoires tout simplement) 
 +  - Pour Linux, il y a un dossier avec les scripts nécessaires à l'installation de Code::Blocks et des bibliothèques nécessaires : 
 +    - **cd your_oF_directory/scripts/linux/ubuntu** 
 +    - **sudo ./install_codeblocks.sh** 
 +    - **sudo ./install_dependencies.sh** 
 +    - if you want to have support for mp3 and some video codecs: **sudo ./install_codecs.sh**
 ===== Structure ===== ===== Structure =====
  
   * OpenFrameworks est un **dossier**   * OpenFrameworks est un **dossier**
 +
 +  * Un projet, c'est le dossier de votre projet associé aux accès vers toutes les fonctions et outils disponibles dans le Frameworks
 +{{:logiciels:openframeworks:of-structure.jpg?600|}}
 +
 +  * Trois fichiers pour commencer : main.cpp, ofApp.h, ofApp.cpp
 +{{:logiciels:openframeworks:ofclasses2.jpg?600|}}
  
   * Tous vos projets doivent être placés dans le dossier apps/myApps pour respecter la **hiérarchie**, car les projets cherchent les fichiers d'OpenFrameworks dans les répertoires au-dessus ("../../../libs")   * Tous vos projets doivent être placés dans le dossier apps/myApps pour respecter la **hiérarchie**, car les projets cherchent les fichiers d'OpenFrameworks dans les répertoires au-dessus ("../../../libs")
Ligne 74: Ligne 290:
   * Drawing in opengl is asynchronous, meaning after you fire off a bunch of commands to draw, they can be running in the background and return control back to your app. If you seperate out your drawing code from your non drawing code there’s a potential your code will be faster.   * Drawing in opengl is asynchronous, meaning after you fire off a bunch of commands to draw, they can be running in the background and return control back to your app. If you seperate out your drawing code from your non drawing code there’s a potential your code will be faster.
   * it’s useful for debugging. If you want to know why your code is running slow, now you can comment out the drawing and see if the visual representation that’s slow or the updating   * it’s useful for debugging. If you want to know why your code is running slow, now you can comment out the drawing and see if the visual representation that’s slow or the updating
 +
  
  
Ligne 179: Ligne 396:
   * l'imagerie 3D avec l'idée de tirer parti au maximum des ressources du processeur graphique (GPU) : Vertex, Vecteur, Mesh, Face, OpenGl, Shader, Matrices, VBO, Vertex Array, OpenGl Pipeline, Transformations, ... Voir aussi : [[:logiciels:terminologie-3d:]]   * l'imagerie 3D avec l'idée de tirer parti au maximum des ressources du processeur graphique (GPU) : Vertex, Vecteur, Mesh, Face, OpenGl, Shader, Matrices, VBO, Vertex Array, OpenGl Pipeline, Transformations, ... Voir aussi : [[:logiciels:terminologie-3d:]]
  
 +{{:logiciels:openframeworks:screen_shot_2012-11-11_at_7.10.06_pm.png?600|}}
 +{{:logiciels:terminologie-3d:mesh.png?600}}
  
- +===== OpenGL / GLSL =====
-{{:logiciels:openframeworks:gl1-pipeline-01.png?300 |}} +
-{{:logiciels:openframeworks:screen_shot_2012-11-11_at_7.10.06_pm.png?300|}} +
-\\ +
-{{:logiciels:terminologie-3d:mesh.png?300}} +
- +
- +
   * Le **triangle** est la figure élémentaire pour fabriquer des scènes 3D ou 2D. Presque tout est triangle.   * Le **triangle** est la figure élémentaire pour fabriquer des scènes 3D ou 2D. Presque tout est triangle.
   * **Pipeline OpenGL** :   * **Pipeline OpenGL** :
Ligne 195: Ligne 407:
     - Fragmentés en pixels, on parle de **rasterization**     - Fragmentés en pixels, on parle de **rasterization**
     - Et finalement, une couleur est assignée à chaque pixel     - Et finalement, une couleur est assignée à chaque pixel
 +  * **Vertex Shader** : les positions des sommets, peut aussi générer la couleur et les coordonnées de la texture pour la rasterisation.
 +  * **Fragment Shader** : les couleurs des pixels
 +  * **GLSL** : With GLSL, you can code short programs, called shaders, which are executed on the GPU. A shading language is a special programming language adapted to easily map on shader programming. It doesn't look trememndously different from what you see in the OF math classes: float, vec4, mat4, and so on. 
 +
 +{{:logiciels:openframeworks:of-shader.jpg?600|}}
 +
 +{{:logiciels:openframeworks:of-gl-modes.jpg?600|}}
 +
 +{{youtube>XMgfddy7S7Q?medium}}
 +
 +
 +==== Shader ====
 +
 +=== Version ===
 +Pour connaître la version OpenGL de votre carte graphique, il existe un exemple dans OpenFrameworks/examples/gl/glInfoExample.
  
 +{{:logiciels:openframeworks:glinfo.png?600|}}
  
 +<blockquote>Most graphics cards support OpenGL3 but some do not. You can always run the glInfoExample in examples/gl to see what your computer supports if you run into trouble or are just curious. Finally, we have OpenGL ES 2, which is what is supported on Android, iOS, and which you might be familar with from WebGL. It doesn't have a declaration at the top, but you'll notice something in most GLES shaders:</blockquote>
 ==== Ressources ==== ==== Ressources ====
   * On peut utiliser beaucoup de ressources de Processing, dont http://natureofcode.com/book/ ou http://www.generative-gestaltung.de/   * On peut utiliser beaucoup de ressources de Processing, dont http://natureofcode.com/book/ ou http://www.generative-gestaltung.de/
/home/resonancg/www/wiki/data/attic/logiciels/openframeworks/accueil.1426439551.txt.gz · Dernière modification: 2015/03/15 18:12 de resonance