みみずのブログ

趣味プログラミング、思考実験など…。

趣味プログラミングログ openFrameworksの3dグラフィックとか

はじめに

自分のプログラム練習の備忘録をまとめています。 ここまではできた、ここからはわからないだとか。

あとあと、見返すとためになりそうなので。

ちなみに、環境は以下です。

  • windows10 64bit
  • openFramework 0.9.8

今日やったこと(2016/12/26)

  • 1 openFrameworksの3dグラフィック
    • 「3Dグラフィクス」がわかる
    • setSpotlight()が使えない
    • バグを発見できた!
  • 2 openFrameworksのcolortracker
    • バグがわからず、終了

1 openFrameworksの3dグラフィック

以下のサイトをみて、openFrameworksの勉強しています。

メディアラボ I 2016 - 多摩美術大学 | yoppa org

1-1「3Dグラフィクス」がわかる

今日は第8回の「openFrameworks – 3Dグラフィクス、メッシュの操作」のスライドを一通り勉強しました。

vvvvでも「3Dグラフィクス」をいじったことがあったので、流れはなんとなくわりました。

大事だと感じたのは、

プログラムと違うレイヤーで、3Dグラフィクスとは、そもそもなにをしているのか

ということ。

以下、3Dグラフィクスの要素、概念を並べます。

    • box,sphere(ofBox、ofSphere)
  • 輪郭
    • fill,wireframe
  • 視点
    • camera(ofEasyCam)
  • 光源
    • light(ofLight)
  • メッシュ

    • mesh(頂点情報の集合)。ポリゴンとかもついでに。

ほか、gpuとかシェーダプログラミングとか謎のキーワードがでてきます。

最初は混乱しましたが慣れてきてなんとなくわかるかんじ。

しかし、イマイチ判然とはしないので、3Dグラフィクスとはなにかを勉強したくなった。

1-2setSpotlight()が使えない

ofLightクラスのsetSpotlightメソッドが何故かつかえなかった。

setPointLight()はつかえたけど。

謎です…。

1-3バグを発見できた!

このスライドの最後のプログラムが動かったなった。

VBO (頂点バッファオブジェクト) - ofVB

しかし、以下 に変更したら動きました。

 

P42 myvideo.width → WIDTH

 

成長をかんじた。

2 openFrameworksのcolortracker

なんとなくcolortrackerがしたくなった。

以下のサイトに挑戦。

Color Tracking with OpenCV

sites.google.com

2-1バグがわからず、終了

しかし、うまくいかない。

rgb.setFromPixels(movie.getPixels(), w, h);

がよくないらしいがわからん。

movie.getPixels()がunsigned char の配列なことに関係あるのかな。よくわからん。

 

以下のサイトも調べた。

inter-arteq.com

ofxVectorMathというアドオンがあるらしいが、ない…。なんてこった。

古いからかな。

 

まあ、いいや。あきらめ。

今後へ

www.pyimagesearch.com

  • openFrameworksで自分で使いたいクラスのmethodを調べ使えるようになりたい。

おしまい。