26
openFrameworks ののの (15 の ) Sadashige Ishida

openFrameworksの紹介(非公式)

  • Upload
    sdsgisd

  • View
    653

  • Download
    7

Embed Size (px)

Citation preview

Page 1: openFrameworksの紹介(非公式)

openFrameworksの紹介 (15分 )

Sadashige Ishida

Page 2: openFrameworksの紹介(非公式)

自己紹介名前:石田定繁 (Sadashige ISHIDA)興味:数学とくに幾何学、物理全般、 Computer

Graphics 、言語嗜好:楽しい、きれい、動く >>> 便利、高性能Computer Graphics の研究歴: 4 ヶ月今やっていること:力学アニメーションTwitter :やってません

Page 3: openFrameworksの紹介(非公式)

目的初心者向けフレームワーク openFrameworks の紹介Computer Graphics の論文 / OpenGL を一緒に読んで一緒に実装してくれる仲間が欲しい!!

Page 4: openFrameworksの紹介(非公式)

動機:アニメーションとか作りたい。キャラクターとか流体とかのアニメーション作りたい。それには描画 ( レンダリング ) が必要。

Page 5: openFrameworksの紹介(非公式)

描画の苦しみOpenGL で描画できる。

Page 6: openFrameworksの紹介(非公式)

描画の苦しみOpenGL で描画できる。 できる。

Page 7: openFrameworksの紹介(非公式)

描画の苦しみOpenGL で描画できる。 できる。 視点変更の苦しみ…行列計算…うわああああ

Page 8: openFrameworksの紹介(非公式)

描画の苦しみOpenGL で描画できる。 できる。 視点変更の苦しみ…行列計算…うわああああ … 解放されたい…

Page 9: openFrameworksの紹介(非公式)

描画の苦しみOpenGL で描画できる。 できる。 視点変更の苦しみ…行列計算…うわああああ … 解放されたい… →openFrameworks

Page 10: openFrameworksの紹介(非公式)

まずはビデオを見てもらいたいhttps://www.youtube.com/watch?v=6u6IDorMKAs

なんか色々できるらしい。

openFrameworks

Page 11: openFrameworksの紹介(非公式)

openFrameworksの説明公式サイトの説明によれば

openFrameworks は、オープンソースな C++ のツールキットで、シンプルで直感的な環境を通して、クリエイテイブな活動を支援するようにデザインされています。 らしい。

Page 12: openFrameworksの紹介(非公式)

openFrameworksのできること ( 公式 )グラフィクス: OpenGL, GLEW, GLUT,

libtess2, cairoオーディオの入出力と分析: rtAudio, PortAudio,

OpenAL, Kiss FFT または FMODフォント: FreeTypeイメージの読込と保存: FreeImage動画の再生と取込: Quicktime,GStreamer,

videoInput様々なユーティリティー: Pocoコンピュータビジョン: OpenCV3D モデルの読み込み: Assimp

Page 13: openFrameworksの紹介(非公式)

openFrameworksの、発表者の使い方ポリゴンメッシュ (3 角形の集まり ) 変形の可視化。Position Based Dynamics( 力学アニメーション ) の実装。アニメーションに使う。

Page 14: openFrameworksの紹介(非公式)

openFrameworksの特徴とにかく初心者向き! とにかく簡単。C++ で書く。Xcode とか VisualStudio にフレンドリー。OpenGL の知識ほぼ不要。

Page 15: openFrameworksの紹介(非公式)

デモが動くまで 3 分くらい。自分のプロジェクトを作るまで 5 分くらい。すごく丁寧な Tutorial( 日本語版あり ) どおりにやればいい。

ダウンロードからなんか動くまで早い!openFrameworksの特徴

Page 16: openFrameworksの紹介(非公式)

ofBoxExample のデモをコンパイル→実行してみよう。1. openFrameworks をダウンロードし、解凍する。URL: http://openframeworks.cc/download/

2. (Mac) openFrameworks のフォルダー /examples/3d/ofBoxExample/ofBoxExample.xcodeprojを Xcode で開く。(Windows) http://openframeworks.cc/setup/vs/を参照して下さい ( ごめん… ) 。3. Run とか Debug

openFrameworksのデモ

Page 17: openFrameworksの紹介(非公式)

openFrameworksのよいこと( 主観 ) マウス操作で画面を回転したりズームイン / アウトできる。← OpenGL とかでこれを書くのは苦しみ。日本語の Tutorial がある。自分のプロジェクト作るのがすごく簡単!CMake とか Makefile とかいらない ^_^include とか link とかいらない ^_^全てを update() と draw() に書けば良いシンプルさ。メッシュを描画したり、音楽を鳴らしたり、アニメーションしたり、なんか色々できる。iPhone アプリ制作とか使えるらしい。

Page 18: openFrameworksの紹介(非公式)

openFrameworksのよくないこと ( 主観 )一時停止を作るのがめんどくさかった…メッシュをいじる操作は別に用意する必要あり。

Page 19: openFrameworksの紹介(非公式)

openFrameworksの使い方まず自分のプロジェクトを作る。ofApp.cpp ( と ofApp.h) をいじる。終わり。

Page 20: openFrameworksの紹介(非公式)

openFrameworks の ofApp.hの中身最低限だとこうなる。class ofApp : public ofBaseApp{ public: void setup();// 最初に 1 回呼ばれる void update(); // 毎タイムステップごとに呼ばれる。 void draw(); // 毎タイムステップごとに update() の後に呼ばれる。 };

Page 21: openFrameworksの紹介(非公式)

openFrameworksの流れofApp::setup()

ofApp::update()

ofApp::draw()

毎タイムステップごとに繰り返す。

Page 22: openFrameworksの紹介(非公式)

openFrameworksでのマウス操作での視点の変え方最低限だとこうなる。class ofApp : public ofBaseApp{ public: void setup();// 最初に 1 回呼ばれる void update(); // 毎タイムステップごとに呼ばれる。 void draw(); // 毎タイムステップごとに update() の後に呼ばれる。 ofEasyCam cam; // カメラ ( 視点を操る何か ) };

Page 23: openFrameworksの紹介(非公式)

openFrameworksでのマウス操作での視点の変え方最低限だとこうなる。void ofApp::draw(){

// カメラ ( 視点を操る何か ) 開始。 cam.begin(); // ここに何か描画のコードを書く。 // 例 . (x1,y1,z1) から (x2,y2,z2) に線を引く。 int x1=0, y1=0, z1=0, x2=1, y2=1, z2=1; ofLine(x1,y1,z1,x2,y2,z2) // 描画ここまで // カメラ終了。 cam.end(); }

これで左ドラッグ:回転マウスホイール、右ドラッグ:ズームイン /アウトホイールドラッグ:平行移動できる。タッチパッドも大体同じ。

Page 24: openFrameworksの紹介(非公式)

openFrameworksのまとめ初心者に優しい。描画が簡単。全てが setup(),update(),draw() で済むシンプルさ。Example プログラムが充実。それを適当に改変すればそれっぽいものができる。使い方はいろいろ。

Page 25: openFrameworksの紹介(非公式)

発表の目的openFrameworks の紹介Computer Graphics の論文 / OpenGL の本を一緒に読んで一緒に実装してくれる仲間が欲しい!!初心者にとって、論文の読解 + 実装→苦しみ式が追えない…何言ってるか分からない…クラス設計とかどうすればいいんだ…どんどんぐちゃぐちゃになっていく…コードリーディングも苦しみ…あれこれ悩んで出来る会を作れると嬉しい。会場にいるので話しかけて下さい。

名前 : 石田定繁 (Sadashige ISHIDA)メールアドレス :[email protected]

Page 26: openFrameworksの紹介(非公式)

おわり