本文へスキップ
Beaver's Hive BlogYouTube「ビーバーものづくり研究所」のものづくりブログ

Beaver's Hive Journal

専用トラッカーなしで机の上に立体を出す ― 画面を「窓」にする仕組みと iPhone 視点トラッキング

机の上に置いた液晶モニター2枚。その角の向こうで、ずんだもんが踊っています。カメラが動くと景色も一緒に動き、手を伸ばせば触れそうな立体感。でも机の上にあるのは、ただの液晶と iPhone だけ。VR ゴーグルも、専用トラッカーも、立体ディスプレイも使っていません。

この記事は、YouTube チャンネル「ビーバーものづくり研究所」で 2026年9月13日に公開した動画「ずんだもんが机の上で踊る !?|専用トラッカーなしで、視点はiPhone、仕組みを解説」の記事版です。平らな画面が立体に見える仕組みを、文章でまとめました。

机の上の2枚の画面で踊るずんだもん(動画サムネイル)

実は、絵のほうが歪んでいる

画面に映っている絵をそのまま取り出してみると、床が斜めに伸びた、ぐにゃぐにゃに歪んだ絵が出てきます。斜めから見ることを前提に、先に歪ませてあるのです。決まった場所から見たときだけ、ちゃんとした形に戻ります。新宿の交差点にある3Dの猫の広告と同じ、アナモルフォーシスと呼ばれる仕掛けです。

ただし机の上では、顔が画面に近いぶん、少し動いただけでズレが目立ちます。だから「決まった場所」ではなく、見ている人の位置を測り続けて、映像のほうを毎回作り直す必要がありました。

画面を「窓」だと思う

考え方のコツは、画面を「絵を映す板」ではなく「壁にあいた窓」だと思うことです。窓から見える景色は、見る人の位置で変わります。近づけば広く見え、横にずれれば違うものが見える。そこで、目の位置と画面の四隅を線で結び、その四角すい(視錐台)の中身だけを映すようにします。これがオフアクシス投影(generalized perspective projection)と呼ばれる方法です。

目と画面の四隅を結んだ四角すいの中身だけを映す仕組み(動画の図解より)

画面が2枚なら、窓も2つ。同じ部屋を別々の窓からのぞいているだけなので、画面同士の角のところでも体が途切れずにつながって見えます。

2つの窓の向こうに広がる部屋で踊るずんだもん(Unityの描画)

目の位置は iPhone が測る

「目の位置」の役割を果たすのが iPhone です。部屋の中では GPS は使えませんが、カメラ映像の中の角や模様といった目印(特徴点)がどうズレたかを見れば、自分の動きが分かります。速い動きは加速度センサーが補い、2つを混ぜるセンサーフュージョンで位置を出しながら、同時に周りの地図も作ります。これが SLAM で、iPhone では ARKit がまとめてやってくれます。

暗い部屋や模様の少ない机ではカメラが目印を見失いがちですが、LiDAR が光の返る時間で距離を測って埋めてくれます。ただし LiDAR が付いているのは iPhone の Pro 系だけ。無くても動きますが、あったほうが安定しやすい、という位置づけです。

もうひとつ工夫が要るのが位置合わせです。ARKit の原点は「アプリを始めた場所」なので、画面がどこにあるかは知りません。そこで最初に1回だけ、2つの画面の中央へ iPhone を順番に当てる「2点キャリブレーション」で、机の座標と AR の座標を合わせています。

2画面がズレない理由

iPhone から PC へ送っているのは映像ではなく位置だけ。ひとつ68バイトのパケットを、毎秒60回、Wi-Fi で送っています。受け取った PC が、画面ごとに窓の形を作り直して描くので、データはとても軽く済みます。

2枚の画面で踊りがぴったり合うのは、踊りを時計ではなく「曲の時刻」から計算しているためです。同じ秒数を渡せば、髪の揺れも、舞う紙吹雪の1枚まで同じ位置に決まります。画面を増やしたり置き方を変えたりしたくなったら、設定に画面の寸法と角度を足すだけです。

中身は AI に作ってもらった

この仕組みの実装は、ほとんど AI に頼みました。Unity 公式のプラグインを使うと、Claude Code や Codex から Unity を直接操作できて、シーンもスクリプトも AI がそのまま触れます。人間の仕事は、画面の寸法と置き方を測って渡すことくらい。曲と振り付けまで Claude が考えたので、ちょっと独特な動きになっています。動画の概要欄には、実際に使ったプロンプトもそのまま置いてあります。

  • 使ったもの:iPhone 17 Pro Max(ARKit/LiDAR)、パソコン、モバイルモニター1枚
  • Unity 6(URP)、Unity 公式の Claude Code / Codex プラグイン
  • 音声:VOICEVOX(ずんだもん/春日部つむぎ)

まとめ

画面は板じゃなくて、窓。窓の形は目の位置で決まり、その目の位置を iPhone が測って毎秒60回送っている。それだけのことで、特別な機材なしに机の上に立体を出せました。必要なのは、スマホとモニターと、AI へ頼む言葉だけです。

実際に動く様子は動画でどうぞ:ずんだもんが机の上で踊る !?|専用トラッカーなしで、視点はiPhone、仕組みを解説(YouTube)

動画で紹介したもの(購入リンク)

購入リンクは、動画の概要欄に掲載しているものをそのまま使っています。

More from the author

この著者の記事

Latest posts

最近の記事

Related stories

「ソフトウェア」の記事

カテゴリを見る