yoppa.org


システム生体プログラミング特論2021

openFrameworksで複数の図形を動かす – 配列 (Array) と可変長配列 ( std::vector)

前回はopenFrameworksで、位置と速度という2つの変数 (Veriable) を使用して図形1つをアニメーションさせるところまで到達できました。今回はこのプログラムを応用して複数の図形を同時に動かす方法について解説していきます。複数の図形を動かすには位置と速度という2つのベクトルを個別の変数にではなくまとめて取り扱うデータの格納方法が必要となります。こうした場合には配列(Array)を使用すると便利です。それぞれのベクトルを配列にまとめることで、大量の図形のアニメーションをシンプルに記述することが可能です。さらに、あらかじめ物体の最大数が決まっていない際には、可変長配列 (std::vector) を使用するという方法もあります。この方法もあわせて解説していきます。

スライド資料

次回までの課題

本日のサンプルのプログラムをもとに、2次元のアニメーションを3次元に拡張してください!

  • ヒント:
    • 位置と速度のベクトルをglm::vec2 を glm::vec3 へ
    • 座標は、(x, y) から (x, y, z) へと拡張される
    • バウンドさせる制限に、z座標の制限もつける
    • ベクトルの計算はそのままでOK
  • 締切 :
    • 次回のこの授業の開始まで。次回に答合わせしていきます!!

アンケート

本日の授業を受講した方は、以下のアンケートに答えてください。