openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

25
グラフィックスプログラミング演習B 第1回:openFrameworksとは? 2011年10月6日 東京藝術大学 芸術情報センター 担当:田所淳

description

 

Transcript of openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

Page 1: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

グラフィックスプログラミング演習B第1回:openFrameworksとは?

2011年10月6日東京藝術大学 芸術情報センター担当:田所淳

Page 2: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

今日の内容‣ 授業の概要説明‣ openFrameworksとは何か?‣ openFrameworksプログラムの実行の手順‣ サンプルプログラムを実行してみる

Page 3: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

自己紹介‣ この授業の担当:田所 淳 (たどころ あつし)

‣ 東京藝術大学での非常勤講師の他‣ 多摩美術大学情報デザイン学科情報芸術コース 非常勤講師‣ 千葉商科大学 非常勤講師

‣ プログラミングの出会いは、コンピュータ音楽から‣ 徐々に、音の視覚化や、生成的なグラフィックス表現へ

Page 4: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

‣ 去年、本を出しました !!

自己紹介

Beyond InteractionメディアアートのためのopenFrameworksプログラミング入門

http://www.amazon.co.jp/dp/4861006708

田所 淳, 比嘉 了, 久保田 晃弘ビー・エヌ・エヌ新社 (2010/2/21)

Page 5: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

自己紹介‣ http://yoppa.org/‣ 授業資料、サンプルコードなどは全てアップしていく予定

Page 6: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksって何?

Page 7: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

このワークショップのテーマ‣openFrameworksで学ぶ、プログラミングによる表現の最前線!!

Page 8: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworks とは?‣ C++によるクリエイティブなコーディングのためのオープンソースのツールキット

‣ http://www.openframeworks.cc/

Page 9: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworks とは?‣ openFrameworksを紹介した映像を鑑賞 (20minくらい)

Page 10: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

簡単な歴史‣ 2004年、Zachary Liebermanがニューヨークのパーソンズ美術大学での大学院のクラスの作品制作のためのツールとして開発

‣ その後、Zachary Lieberman、Theo Watson、Arturo Castroを主要メンバーとして、世界中の開発者と協力しながら発展

Page 11: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

Zachary Lieberman‣ Zachary Lieberman, http://thesystemis.com/

Page 12: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

簡単な歴史‣ Parsons the New School of Design‣ http://www.newschool.edu/parsons/

Page 13: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

Welcome‣ Zachary Lieberman氏による「Beyond Interaction」への序文「Welcome」は、とても素晴しいので、ぜひ一読を!!

‣ http://openframeworks.jp/welcome.html

私が伝えたいことは、アートを作ることは困難なことではないこと、ソフトウェアを作ること、C++を書くことも(そんなには!)難しいことではないこと、そして制作過程をできるだけ楽しむことです。皆さんがこの本をエンジョイし、 openFrameworksを楽しんで頂けることを心から願っています。そしてまだoFコミュニティに参加していない人は、ようこそ!

Page 14: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

様々なメディアを駆使した作品を作りたい!!

様々な技術に精通しなくてはならないサウンド、ビデオ、フォント、画像解析...etc.

Page 15: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksを利用すると…既存の道具(ライブラリ)を設定なしに使用可能→ 作品制作のための「糊」

Page 16: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

開発のための「糊」

main.cpp

testApp.h testApp.cpp

openGL GLUT freeimage freetype

fmod rtaudio quicktime openCV

ofSimpleApp, ofGraphics, ofImage, ofTruTypeFont, ofVidePlayer, ofVideoGrabber, ofTexture, ofSoundPlayer, ofSoundStream, ofSerial, ofMath, ofUtils

プログラムの開始

コードを書くところ

OpenFrameworksの機能

ベースとなるライブラリ群

Page 17: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksを活用した作品‣ 参考サイト:creative applications‣ openFrameworksのカテゴリーに多くの作品が掲載‣ http://www.creativeapplications.net/category/openframeworks/

Page 18: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworks開発環境の構築

Page 19: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksをダウンロード‣ openFrameworksのダウンロードページより‣ http://www.openframeworks.cc/download

‣ v0.07 mac x-code 版をダウンロード

Page 20: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksの開発環境‣ openFrameworksには、ProcessingやFlashなどのように専用の開発環境があるわけではない

‣ それぞれのOSに応じた、C++の開発環境を使用する‣ Mac OSX - XCode‣ Windows - Code::Blocks もしくは Visual Studio 2010‣ Linux - Code::Blocks

Page 21: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksの開発環境‣ XCodeとC++のコンパイラを入手するには‣ Appleの開発者登録が必要 (無料)‣ http://developer.apple.com/programs/register/

Page 22: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

openFrameworksの開発環境‣ XCodeのバージョン‣ OSX 10.6 Snow Leopard以前 → XCode 3.x‣ OSX 10.7 Lion → XCode 4.x‣ インタフェイスや設定方法が若干違う‣ Xcode4にはGitによるバージョン管理機能も‣ Lionであれば、両方のバージョンを併用することも可能

Page 23: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

サンプルを実行してみよう!!‣ 「of_preRelease_v007_osx/apps/examples/」以下にあるフォルダ内のXCodeのプロジェクトファイル「.xcodeproj」を開く

‣ 例えば、graphicsExample.xcodeproj‣ プロジェクトファイルを開くと、自動的にXcodeが起動‣ ツールバーの「Run」ボタンを押す‣ プログラムがコンパイルされ、エラーが無ければそのままサンプルが実行される (はず)

Page 24: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

サンプルを実行してみよう!!‣ 実行例:graphics example

Page 25: openFrameworksとは何か? - 芸大 グラフィクスプログラミング演習B

実習:いろいろなサンプルを実行してみる‣ 同梱されているサンプルを手当たりしだい実行してみる‣ of_preRelease_v007_osx/apps/examples/‣ of_preRelease_v007_osx/apps/addonsExamples/

‣ 一体、何をしているサンプルのなのか類推してみる‣ 一番興味を持ったサンプルはなにか?