TheatreFourze 舞台演出手法を取り入れたCGと センサー連携のための

AL11023 樫村 健人
基盤システムソフトウエア研究室

近年Arduinoなど気軽にハードウェアデ
バイスを開発できる環境が普及してきた

本研究室でもCGとセンサーを連携させて
新しいデバイスを開発している
◦ 例)橙色の屋根のお家・楽しみながら訓練できるデジ
タルセラピーデバイス[渡辺ら,2014]
部屋の中の様子(CG)
橙色の屋根のお家
2

様々な値域をもつセンサーを複数使ってCGを
切り替えるプログラムを書く際にコードが複雑
化してしまうという問題点がある

例えば橙色の屋根のお家では光センサーとタクトスイッ
チを用いてCGの明るさを変える処理を行っているがそ
の処理が複雑になってしまっている
橙色の屋根のお家のコードの一部
hl = arduino.digitalRead(inputA8);
sun = arduino.analogRead(input1);
else houselight=1;
lightsw=0;
if (hl==1) lightsw=1;
if (hl==0&&lightsw==1) {
if (houselight==1)houselight=0;
}
if (houselight==0) {
if (sun>150) light=0;
else light=1;
}
12行でifが5つ
3
CGとセンサーを用いたアプリケーションの開発を
支援し,分かりやすくプログラムを書けるようにす
る
どのようにしたら作りやすくなるか
4
CG+センサー

”舞台演出”の概念の導入
役者+きっかけ
◦ 舞台演出を取り入れるとは..
 1つのCG→Actor(役者)
きっかけ
 CGの動き→Act(演技)
 CGや動きの切り替えのタイミング→Cue(きっかけ)
と考えることで初心者にとって理解をしやすくする
5
舞台演出手法を取り入れたライブラリ
 Actor,Act,Cueの3つのクラス
 あえてCGとセンサーを一対一にすることで簡
易化・明確化

オブジェクト指向言語で作成
 センサーはマイコンArduino上での使用を想定

6
Actor(役者)



複数のイメージを持つ
Cueによって提供される番号によってイメージを選択
Actによって提供されるX,Y位置にイメージを表示
Act(演技)


X,Y位置を持つ
指定された演技によってX,Yを変更
x
y
◦ 例えば演技が「落下」だった場合はY値を上昇させる
7


物理情報の抽象化
CueによってActorはActを変える
センサーによってとれる値域が違うが
それを同じスケールで扱えるようにする機能を有する
→分かりやすい区分に対応付けする
例えば(大・小)の2段階や(大・中・小)など3段階など
(Val-Min)・Num
(Max-Min)
Val:現在のセンサー値
Max:センサーでとれる最大値
Min:センサーでとれる最小値
Num:区分分けする数
センサーごとに
設定済み
8
役者(Actor)
イメージ1,イメージ2…
きっかけでイメージを選択
イメージを表示
演技を
指定
XY位置を返す
演技(Act)
きっかけの
識別番号を
要求
きっかけの
識別番号を
返す
きっかけ(Cue)
X,Y
演技
センサー
きっかけの識別番号
演技によってX,Yを変更する
センサー値取得
センサー値を識別番号に変換
9
画像が光センサーの値によって左右に動く動作を作りたいとする
kashi=new Actor(this, arduino);
kashi.setImage("kashi.png");
kashi.setAct("right", "left");
kashi.setCue("L", 1, 1);
Cue
ポート1の
光センサー
Min
Max
状態1
状態2
10
kashi=new Actor(this, arduino);
kashi.setImage("kashi.png");
kashi.setAct("right", "stop", "left");
kashi.setCue("L", 1, 2);
Cue
Min
Max
状態1
状態2
状態3
11

既存のプログラムでの評価
◦ 「橙色の屋根のお家」とは
 デバイスに搭載されたセンサーで現実の情報を取得し、ディスプレ
イに表示されているCGに反映させるインタラクションデバイスであ
る
◦ 「かしむらガチャ」 とは
 ガチャポンを模したプログラムで可変抵抗をガチャのレバーとして
用いる
プログラムにおけるライブラリの有無による比較
橙色の屋根のお家
かしむらガチャ
ライブラリなし
247
148
ライブラリあり
75
63
28%
42%
12


本当に書きやすいか・再利用性があるかの評価実験
実験の評価に基づくライブラリの機能の増強
13
ご清聴ありがとうございました