初めに
プロジェクションマッピングをやってみたい!
何を使ってどんなソフト使えば良いのかわからない。
マッピングソフト
プロジェクションマッピングについて調べてみたところ、さまざまなソフトが見つかりました。
その中で、最もメジャーでチュートリアル動画が公開されているものを選びたいと考えました。
調べた結果、特に分かりやすかったソフトが「MadMapper」でした。
チュートリアル動画は「ぎまパパチャンネル」がとても分かりやすく、理解しやすかったです!
プロジェクションマッピング 作り方の再生リスト
今回の制約
マッピングソフトとして「MadMapper」を使用することが決定しましたが、今回のプロジェクションにはいくつかの制約があります。
プロジェクションする元の映像は別のアプリケーションで作成されており、MadMapperに取り込むためには何らかの方法で映像を入力する必要があります。
MadMapperは、他のアプリケーションからのメモリ間映像共有プロトコルであるSpout(windows)やsyphon(Mac)に対応しています。
しかし、今回の映像元アプリケーションはこれらに対応していないため、そのまま取り込むことができません。
そのため、映像元の画面をキャプチャしてMadMapperに入力する方法を検討する必要があります。
画面キャプチャソフト
アプリの画面のみをソフトへ送信することを条件に、さまざまな候補を調査・検証しました。
-
XSplit VCam
無料版を使用できますが、60日後には購入が必要になります。 -
ManyCam
無料版では会社のロゴが表示されてしまうため、実用が難しい。 -
ゲームバー(Windows)
操作が複雑で、スクリプトによる制御ができないため運用が困難。 -
NDI Tools
画面全体や一部のキャプチャは可能ですが、アプリのウィンドウのみを送信する機能がありません。 -
OBS Studio
条件に適した機能を備えていますが、手動操作が必要となります。
これらの検証結果から、OBS Studioを使用し、アプリをコマンドラインから制御できるかどうかを試してみることにしました。
映像の流し込みの流れ
映像(アプリ)→obs studio(Virtural Camera)→Madmapper
って感じでプロジェクションをします!
コマンドライン
obs studio のコマンドラインはこれを参考にこれでまずは、Virtural Cameraがon状態で起動は出来そう。
先ほどのサイトにもかいてあるけど。obs Stadioをコマンドラインで起動する際にはフルパスで
動かすと下記のエラーが出る。なのでexeのある所に移動してから動かさないといけない。
MadMapperについては、exeとプロジェクトファイルのパスを渡せば出来ました。
@echo off
REM MadMapperのパス
set MADMAPPER_PATH="C:\Program Files\MadMapper 5.6.6\MadMapper.exe"
REM MadMapperのプロジェクトパス
set PROJECT_PATH="C:\test.mad"
REM OBS Stuidoのexeのパスに移動して起動
cd "C:\Program Files\obs-studio\bin\64bit"
start /min "" obs64.exe --startvirtualcam
REM MadMapperをプロジェクトとともに起動
start "" %MADMAPPER_PATH% %PROJECT_PATH%
exit
MadMapperの設定
MadMapperについては、プロジェクションの設定したあとOutputの先を
Full Screen Modeにしないと行けないんのですが設定は
Tool→PreferencesのStartupの
Fullscreen when opening a project at startup
にチェック入れてついでに最小化で起動して欲しいので
Always Minimize at startup
にもチェック入れておきます。
最後に
MadMapperの設定等々「ぎまパパチャンネル」のyoutube見れば出来ますし
マスクのの方法もポチポチとすればできます
こんな感じで家のキッチンでプロジェクション出来ています。