2015 年 2 月 5 日
平成 26 年度

情報・通信工学科 コンピュータサイエンスコース

卒業研究発表会

UnityMobileStreaming を用いたタイルドディスプレイのタッチ操作の実現
情報・通信工学科 学籍番号:1111017 成見研究室 伊藤 一輝
1.はじめに
近年では iPhone や Android 端末の急速な普及に伴い、イルドディスプレイとして利用しタッチ操作を可能にした.

高解像度のマルチタッチ操作が可能なディスプレイが多く見

しかし、当研究ではモバイル端末をタイルドディスプレイとられるようになった. マーケティングにおいてはデジタルサして使用する点が異なっている.

イルネージといった大型ディスプレイに適した高解像度映像

3.システム構成

コンテンツがタイルドディスプレイシステムを利用して提供

3.1 Android 向け Unity アプリの仮想化されるようになっている. タイルドディスプレイシステムとUnityMobileStreaming は Unity で作成されたゲームをサは、複数の小さなディスプレイを格子状に並べることで 1 つーバとクライアントに処理を分け、 Android クライアントの大きなディスプレイとして見せる技術である[1](図 1).

からの入力を受けてサーバ上で演算処理を実行し、その結果

ただし複数のディスプレイによるタッチ操作を実現するには何らかの工夫が必要である.

を映像として返すシステムである(図 2).

3.2 画面分割の実装

一方モバイル端末向けゲーム開発においてゲームエンジン

映像出力は Unity スクリプトによって Unity 実行画面のスおよび統合開発環境である Unity3D[2] (以下 Unity)が普及

クリーンショットを連続で取得し、クライアントに送信する.

してきた. 成見研究室の高橋は非力なモバイル端末でも快適

複数のクライアントに対し指定した画像を送信するためにな物理演算を実現するクラウド技術として UnityMobileStre

は、サーバ側での画面分割処理が必要となる.スクリーンショ

aming を開発しモバイル端末の可能性を広げた[3].

ットで取得した画像データに対し新しく空のテクスチャを用本研究では対象を Unity を使ったゲームアプリケーション

意し[6]ディスプレイに該当する指定領域の画像データをピに限り、モバイル端末を使ってタイルドディスプレイを実現

クセル単位で読み込み、テクスチャを PNG ファイルにエンすることを目指す.

コードして[7]クライアントへ送信する手法を考案した(図 3).

2.既存研究3.3 座標の管理

2.1 タイルドディスプレイ

クライアントから操作入力でタッチされた座標はサーバ側

タイルドディスプレイのメリットは 1 枚の大型ディスプにとってはどのタブレットから送信されてきた座標なのか判

レイより安価であり持ち運びが可能なことである. 安枝の研別が困難である. そこでクライアント側では予め ID を割り

究[4]では持ち運び可能なモバイルタイルドディスプレイが振っておくことで、どのタブレットから送信された情報であ開発されたがタッチ操作が実装されていないという問題があるかを確立させ座標データの計算を可能にした.

った.

2.2 SAGE
SAGE[5]はアメリカのイリノイ大学 EVL で開発されたソフトウェアである. 壁に取り付けた複数のディスプレイをタ

図 2:システム構成

図 1:タイルドディスプレイ(参考文献[1]より)

表 1:平均通信速度結果

表 2:解像度と台数に応じた平均描画フレームレート(fps)

図 3:画像の分割
信した画像の回数から描画フレームレートを計算し約 150 秒

3.4 ベゼルデータをまたぐドラッグ操作の開発
ベゼルデータを間に挟むドラッグ操作に対応するために複間の平均描画フレームレートを表 2 に示す.

4.3 結果と比較

数の指でタッチされた座標を 1 つの点として扱いドラッグす

表 1 よりタブレット 1、2 台による平均通信速度に変化はる方法を考案した. この場合、複数の指を操作するためベゼあまりないが 4 台の場合、 平均通信速度が他に比べて遅くな

ル内に指があっても他の指がタッチし続けるため判定が可能っていることが分かる. 表 2 では描画フレームレートはタブとなる.

レットの台数に主に依存し、 解像度にはそれ程影響は受けて4.評価いないことが分かる.

各タブレットの接続台数に対して平均通信速度と描画フレ5.まとめと今後の課題ームレートの評価を行った. 測定時における評価の環境は以下の通りである.

Android 端末を 4 台用いることで、1 つのタイルドディスプレイとしてタッチ操作とドラッグ操作を実現した. また隣

サーバ CPU : Intel Core i7 CPU 920

接したタブレット同士のベゼルを考慮したタッチ操作を可能サーバ GPU : NVIDIA GeForce GTX 670にした.



サーバ OS : Windows8.1



サーバ解像度 : 1920×1080 ピクセルの操作、画面のスクロールに用いられるフリック操作といっ

クライアント端末 : Nexus 7 (2013 年版)

たマルチタッチ操作があげられる. 今回は Unity アプリケー

クライアント OS : Android4.4.2

ションだけでタッチ操作を実現しているが、 どんなアプリケクライアント解像度 : 1920×1200 ピクセルーションでも対応する方法が望ましい.



クライアントの Wi-Fi リンク速度 : 54Mbps

4.1 平均通信速度

今後の課題として拡大や縮小といったピンチイン・アウト

参考文献

解像度を 720×520 に固定して Android タブレット 1 台、[1]－タイルドディスプレイシステム

2 台、4 台における通信速度を計測した. タブレットに送信しhttp://japan.cnet.com/digital/av/20414727/

た画像の合計バイト数から通信速度を求める. デモプログラ[2] – Unity3D: htttp://japan.unity3d.com/

ムが実行されてから計測終了までの約 150 秒間に実行中にお[3]－高橋 悠、 Android 向け Unity アプリの仮想化、 電気ける平均通信速度を表 1 に示す.

通信大学、 エンタテイメントコンピューティング、 2014

4.2 描画フレームレート[4] –安枝 光 モバイルタイルドディスプレイの開発,、

UnityMobileStreaming はサーバからクライアントに単位

電気通信大学、 情報処理学会第 76 回全国大会、2014

時間辺りに送信されているコマ数である描画フレームレート[5] – SAGE2: http://sage2.sagecommons.org/project/が重要になる．UnityMobileStreaming は毎フレーム画面を[6] – Unity のオフスクリーンレンダリング

キャプチャするが、通信はゲーム動作とは非同期であるため、

http://qiita.com/tsubaki_t1/items/ee8419c054d17ade32ee

実際にクライアントに送信している画像は通信時の最新の画[7] – Texture2D を png ファイルとしてファイル保存面のみである. 約 0.5 秒毎にその間実際にクライアントに送

http://ft-lab.ne.jp/cgi-bin-unity/wiki.cgi?page=unity_script_texture
2d_save_png_file