第 3 章 Phenakistoscope Player の開発 25
4.5 ソフトウエア
図4.1: MoPHの演奏場面
グラフィックスオブジェクトの表示と制御を行っている.MAX/MSP採用の理由は,もともと音 楽プログラミングのための開発環境でありReasonなどの音楽ソフトウエアを制御するのが容易に できるとともに,OSC,TUIOなどのプロトコルに対応していることである.ActionScriptの採用 の理由として,グラフィックデザイナの多くが使用しているアニメーションツールであるFlashア プリケーションにおいて採用されているスクリプト言語であり,グラフィックデザイナが容易にグ ラフィックオブジェクトを作成できること,また作成されたグラフィックオブジェクトをプログラ ムで容易に制御できることが挙げられる.
4.5 ソフトウエア
本章では,MoPHのソフトウエアの中で4.3節のデザインコンセプトに関連した以下の2つの 事項について詳しく述べる.はじめに,デザインコンセプト(1)のグラフィックオブジェクトの操 作,(2)の多点・連続量制御に関連して複数の指を用いた操作仕様について述べる.次に,(2)の演 奏表現と(3)のパフォーマンスの可視化に関連したグラフィックオブジェクトとサウンドの関係に ついて述べる.
4.5.1 操作仕様
MoPHでは,演奏者がiPad(あるいはMagic Trackpad)を操作し,その操作情報がPCに送ら れ,PCからサウンドとグラフィックスが観客に提示される.iPadの操作情報として,マルチタッ
44 第4章 MoPHの開発
MoPHdraw (AIR)
PhysicsMIDI (MAX/MSP)
Oscar (java)
xml socket
Synthesizer (Reason) OSC
PC[MacBook Pro]
Projector
Powered Speaker RGB
Line out
Oscemote [iPad]
WiFi TUIO/OSC
MIDI
MoPH
- System Blockdiagram-Finger
Pinger
Magic Trackpad
Bluetooth
図 4.2: MoPHのシステムブロックダイアグラム
チスクリーンの最大11点のタッチポイントと3軸の加速度センサの値が,コンピュータに送信さ れる.マルチタッチスクリーンの操作の様子は,タッチしている指を示す複数のカーソルをコン ピュータスクリーンに表示することで観客に提示される.演奏者は,この複数のカーソルを使用し てグラフィックオブジェクトを生成し操作することによって演奏する.
MoPHで使用するBox2Dライブラリは,2次元の剛体力学モデルによる物理シミュレーショ ンで,グラフィックオブジェクトを質量,摩擦係数,反発係数を持つ剛体として生成する.グラ フィックオブジェクトはカーソルで操作されるときに与えられる力と後述のモータオブジェクトで 与えられる力とiPadの加速度センサで制御される重力によって運動する.(加速度センサを用い ていない場合は無重力となる.)
以下,操作情報によってグラフィックオブジェクトを生成,表示し,物理シミュレーションを実
行するMoPHdrawの機能と操作方法について説明する.また,操作デモンストレーションの様子
は動画サイトから閲覧できる[31].
MoPHdrawは,Generation mode とPerformance modeの2つのモードを持つ.Generation modeはグラフィックオブジェクトを生成するモードで,Performance modeは生成されたグラ フィックオブジェクトを操作して演奏するモードである.2つのモードは,タッチスクリーンの上 端にカーソルを移動させることで切り替えられる.Generation modeでは,コンンピュータ画面 の左端に10種類の機能がアイコンとして表示されている.これらの機能は,カーソルをアイコン に重ねることによって選択され,カーソルの形や色が,選択したアイコンに応じて変化する.カー ソルは,観客に見られることを意識してデザインされている.カーソルは,グラフィックオブジェ クトと区別がつきやすいように通常は無彩色(灰色)で,グラフィックオブジェクトを作成する場 合は作成しようとするグラフィックオブジェクトの色に変化する.また,グラフィックオブジェク
4.5. ソフトウエア 45 ト自体が幾何学的なデザインとなるので,カーソルも幾何学的な形を用いている.グラフィックオ ブジェクト,アイコン(カーソルと同じデザイン)のグラフィックデザインを図4.3にGeneration modeの表示画面として示す.
図 4.3: MoPHのGeneration mode表示画面
Generation modeのグラフィックオブジェクト作成に関する機能は次の通りである.
(1) グラフィックオブジェクトの生成
(2) グラフィックオブジェクトどうしのバネによる接続
(3) グラフィックオブジェクトが回転するように動力を与えるモータ機能の設定 以下にそれぞれの操作方法について述べる.
(1) グラフィックオブジェクトの生成
円形と多角形(三角形,四角形)のいずれのグラフィックオブジェクトを作成するかをメ ニューから選択する.グラフィックオブジェクトは2本以上の指(カーソル)を使用して描 かれ,円形を選択した場合は2本の指で指定した2点を結ぶ線を直径とする円が生成される.
多角形を選択した場合は指の位置が多角形の頂点を示し,3本の指のときは三角形,4本の 指のときは四角形が生成される.また,2本の指の場合は2点を結ぶ線を対角線とする長方 形が生成される.1本の指の場合は描かれたグラフィックオブジェクトを移動することがで きる.作成途中のグラフィックオブジェクトは緑色の線で表示され,全ての指がタッチスク
46 第4章 MoPHの開発 リーンから離れたときにグラフィックの内部にも色が塗られた図形に変わるとともに物理シ ミュレーション空間内に生成され,物理法則に従って動きはじめる.
グラフィックオブジェクトには,物理法則に従って動く上述のグラフィックオブジェクトの 他に,シミュレーション空間内に固定され,力が加えられたり他の他のグラフィックオブジェ クトが衝突しても移動しない,フィックスモードグラフィックオブジェクトとセンサモード グラフィックオブジェクトがある.フィックスモードグラフィックオブジェクトは,固定さ れていても衝突した他のグラフィックオブジェクトは反発するが,センサモードグラフィッ クオブジェクトの場合は反発せず通過していく.センサモードグラフィックオブジェクトは,
他のグラフィックオブジェクトとの通過を感知し発音データを送信する機能を持つ.フィッ クスモードグラフィックオブジェクトとセンサモードグラフィックオブジェクトは,それぞ れフィックスモード,センサモードをメニューから選択した後で,前述の方法でグラフィッ クオブジェクトを作成することで生成される.
(2) バネによる接続
バネのメニューを選択した後,バネで接続したい2個のグラフィックオブジェクトを2本の 指で選択する.2本の指を同時にタッチスクリーンから離すことで,選択されたグラフィッ クオブジェクト同士がバネのオブジェクトで接続される.
(3) モータ機能の設定
2つのグラフィックオブジェクトを2本の指で選択する.初めに選択したグラフィックオブ ジェクトがモータ機能を持ち,次に選択したグラフィックオブジェクトがモータと接続され 初めに選択したグラフィックオブジェクトを中心に回転する.
Performance modeは,複数の指を用いて複数のグラフィックオブジェクトを自由に移動させるこ
とによって演奏するモードで,グラフィックオブジェクトを作成することはできないが複数のグラ フィックオブジェクトを同時に操作できる.カーソルがグラフィックオブジェクトに重なると,グ ラフィックオブジェクトはバネのオブジェクトでカーソルに接続され,カーソルに追従して移動す る.カーソルにグラフィックオブジェクトが接続されている間は発音することで,複数の音を同時 に発音させることができるようにした.また,一つのグラフィックオブジェクトを複数の指によっ て操作することも可能である.例えば,長方形のグラフィックオブジェクトの両端を2つのカーソ ルに接続し,それぞれのカーソルを逆方向に動かすことで回転運動を与えることができる.また,
iPadの3軸加速度センサの値によって,MoPHdrawの物理シミュレーションの重力とその方向を 操作できる.つまり,iPadを傾けることで,グラフィックオブジェクト全てが同時に移動する効 果が得られる.
4.5.2 サウンドマッピング
この節では,ユーザの操作やグラフィックオブジェクトに対して,音の高さ,大きさ,発音位置,
音色等のサウンドのパラメータがどのように関連づけられているかについて説明する.
ユーザの操作によって生じるグラフィックオブジェクトの動き,衝突時の位置,形(円形,三角 形,四角形),面積,衝突速度に関するデータは,MoPHdrawプログロムによって検出された後,