高校の模擬講義
センサーと制御とプログラム
システム構成: 写真
準備1:
Scratch の起動
USBメモリ から → Scratch → Scratch.exe
Scratchフォルダの Scratch-bridge-tuio.sb を Scratchにドラッグ&ドロップ
遠隔センサーを有効にする
準備2:
Scratch_OSC_Bridgeの起動
USBメモリ から → Scratch → application.windows(32or64) → Scratch_OSC_Bridge.exe
※起動と接続の確認: Scratch と Scratch_OSC_Bridge.exe が通信を始めると、スクラッチのプログラムの
ずっと の繰り返し処理が動き出す。
処理内容は、
「センサーの値を読み出し、センサーの値に滑らかさを加えて、スプライトのXY座標に設定する」
というもの。
Scratch で利用するKinectカメラと、センサーで取得する身体部位の情報を↓のように設定する。
ポートの設定
12345
↑をADD PORT する。
OSCメッセージの選択 最初は1選択するメッセージは 1つに。 うまく動いたら、複数の身体部位の取得を試す。
※ 3つ目の部位を追加すると、不具合発生。使用する部位は、「2つ」までにしてください。
/BODIES/ プレイヤーID番号 /JOINTS/HEAD 頭の位置 ※← 最初はこちらで練習してみます。
/BODIES/ プレイヤーID番号 /JOINTS/HANDRIGHT 右手の位置
など。
設定例)
Scratchのセンサーの対象を設定しなおす。
※ ↑の「ずっと」が止まってしまったら、クリックして動かし続けておく(センサーの値を観察するため)
※Kinect で、HEADの値を1,2,3つ取得している。 X Y Z 座標 に対応する。
今回の演習では、XY座標のみ利用している。
Z座標を利用する場合は、スプライトの 大きさ の変更に Z座標を用いると、擬似3Dの表現ができる。
(接近→ 拡大、 離れる → 縮小)
課題制作
接続先のカメラを変更したり、取得する身体部位を 頭から 右手 などに修正したり、など、モーションキャプチャの
対象に応じて、スプライトのコスチューム(画像)を変更し、
・ゲーム
・楽器
などを企画して作成する。
※注意※ キャプチャーする身体部位の変更
・既に追加している部位をクリックして削除する
・その後、新しい部位を追加する
例) 避けゲーム。ゴーストのXY座標は、プレイヤーの頭の位置にリンクしている。
2対の敵キャラクターが画面を動き回るので、当たらないように、避け続ける。
衝突判定つきのキャラクターの作成例)
※キャラクターには、衝突したときのコスチュームを追加して、設定しておくこと。
※※ 動きブロックの「回す」コマンドで敵キャラクターの向きを斜めに設定すると、複雑に跳ね回るキャラクターになる。
※※※キャラクターの数を増やしてみよう。