LoginSignup
2
1

More than 3 years have passed since last update.

unityできれいな鏡面を作りたい!!

Posted at

はじめに

MirrorRefrectionの使い方とpost processを使った応用のまとめです

unityを使い始めて1年もたってない高校生なので適当なところが多いですがあたたかい目で見てもらうとうれしいです

MirrorRefrection

Unity 2018.4.13f1 Personal - SampleScene.unity - 新世界創造 - PC, Mac & Linux Standalone_ _DX11_ 2019_12_27 13_51_26.png

こんな画面を作ってみます

使い方

上の記事からシェーダーとスクリプトをコピペしてマテリアルにシェーダーを割り当てて鏡にしたいオブジェクトにマテリアルとスクリプトをくっつける

これで鏡はできました

Bloomがついてない!

鏡はできましたがpost processの効果がついてません

スクリプトをのぞいてみるとどうやらカメラを出してそのカメラに映ったものを表示させて鏡にしてるみたいです

じゃあ、post process layerをこのカメラにつければいいのかな?

やってみる

MirrorReflectionスクリプトの160行目くらいにカメラ関係のコードを発見しました
ここでaddcomponentすればいいのかな?
FlareLayerをaddしてる行の下に

reflectionCamera.gameObject.AddComponent();

を入れてみました
エラー出てる…と思ったら忘れてました
using UnityEngine.Rendering.PostProcessing;
を上の方に書きます

これでlayerをカメラにくっつけることはできたみたいです

ですがただくっつけただけなのでpost process layerのレイヤーマスクがnothingになっていてブルームなどの効果がついていません
Unity 2018.4.13f1 Personal - SampleScene.unity - 新世界創造 - PC, Mac & Linux Standalone_ _DX11_ 2019_12_27 14_34_15.png

そこで
reflectionCamera.gameObject.GetComponent().volumeLayer = 1;
を書き足しました、
これで鏡の方にもBloomの効果をつけることに成功しました

これは余談ですが、post process volumeでMotion Blur効果をつけるとなぜか鏡の方にずっとモーションブラーの効果が出ます、原因は僕にはわかりません()
Unity 2018.4.13f1 Personal - SampleScene.unity - 新世界創造 - PC, Mac & Linux Standalone_ _DX11_ 2019_12_27 14_40_29.png

2
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1