VRChatのアバターにFPS系ゲームによくあるスプレー的(壁に画像を映す)機能付けたいな~
そんな安直な感じで始まったやつです。
画像の準備
表示したい画像を正方形で用意します。
ここで言う「正方形」は画像サイズの話で、
余白となってしまう部分は黒塗りでOKです。
(こんな感じで丸く囲ってもいいかも)
上に重ねてる画像です。よかったらどうぞ
次に用意した画像をRGB分離させ、グレースケールにします。
ブラウザ上でやってくれるやつあるのでそれ使うといいかもですってか自分で作りました↓
RGBGrayScaleGenerator
Unityで導入
赤、緑、青の3色のスポットライトを用意します。
各色のライトのCookieにそれぞれの色に対応する生成した画像を入れます。
これでちゃんとした色で画像が出ているはずです。
が、ライトをCubeに近づけるなどして小さくすると下のように繰り返して表示される事があります。
この場合は画像のインポート設定を変える事で解消できます。
Warp Mode
をRepeat
からClamp
に変えましょう。
あとは懐中電灯とかにいれるなどして遊びましょう。
蛇足
これ既に販売しているプロジェクターでやってることなのよね…
あ、当たり前ですけどAvatar Detailsに表示されるLightのカウンタが
画像一つにつき+3されるので、『偏った知識をお持ちの方』に誤解されるかもです。
まぁそれだけで判断するのもどうかとは思いますがネ。