子どもの頃に砂場で山や谷、海などで自分だけの世界を作って遊んだ人もいるはず。「Magic-Sand」はカリフォルニア大学デービス校が開発した拡張現実(AR)サンドボックスから着想を得て開発されたツールで、実際に指定した砂場で作った山や海の高さを計測し、プロジェクションマッピングで地図のように着色するためのオープンソースソフトウェアです。

GitHub - thomwolf/Magic-Sand: Magic-Sand is a software for operating an augmented reality sandbox

https://github.com/thomwolf/Magic-Sand

Magic-Sandは家庭環境でのARサンドボックスを簡単に再現することを目標に開発されました。この場合のサンドボックスとは、文字通り「砂の箱」で、箱の中に砂を入れて遊べる小型の砂場を意味します。

Magic-Sandは家庭用のプロジェクターとMicrosoftが開発したジェスチャーキャプチャーのKinectを使います。Kinectセンサーでサンドボックスの中にある砂の高さをスキャンし、ソフトウェアがスキャン結果から地図を作成して色付けし、それをプロジェクターでサンドボックスに投影するという仕組み。



プロジェクターとKinectをPCに接続して電源を入れ、Magic-Sandを起動します。スキャンをする前に砂場を手で平らにならします。



砂場の領域を手動で設定したらキャリブレーションを行います。キャリブレーションはプロジェクターからチェス盤のような模様が投影され、それをKinectで測定することで行います。



次に、サンドボックスを段ボールのような平たいもので覆い、再度測定を行います。



これでキャリブレーションが終了。自動で砂場の地形が随時読み込まれ、その地形に応じてソフトウェア側でつけられた色が砂場に投影されます。



実際に投影されたサンドボックスはこんな感じ。



Magic-Sandでは単に色を投影するだけではなく、砂の地形の上を動くウサギと魚をどれだけ多く捕まえられるかを競うゲームなども遊ぶことが可能となっています。



なお、Magic-Sandと似たプロジェクトに「SARndbox」というものもありますが、SARndboxはLinuxでのみ動くのに対して、Magic-SandはWindows 10・Windows 8・Windows 7・MacOS X 10.8以上、Linuxで動作するクロスプラットフォームソフトウェアとなっています。