シュッとなる画面切り替えのシェーダーの使い方です
こちらで配布してます。
脱出ゲームの視点切り替えとか、インゲームとの切り替えに使えるかも?
配布物
SlideBlackOutShader_Builtin
ビルトイン版です。
SlideBlackOutShader_URP
URP版です。ぶっちゃけビルトイン版を読み込ませても動く
ビルトイン版の違いはシェーダーがHLSLなのと、サンプルのマテリアルがURP版であることです
使い方
usagi-meteor>Shader>SlideBlackShader>Runtime>PrefabにあるSlideBlackOutPanelをCanvas下に配置します
SlideBlackOutPanelにあるSlideBlackOutEffectorコンポーネントを以下のように使うことで使用できます
using usagi_meteor.CustomShader.SlideBlackOutEffect;
public class TestBehaviour : MonoBehaviour
{
[SerializeField] private SlideBlackOutEffector effector;
void Start
{
// フェードアウト
effector.StartFadeOut();
yield return new WaitForSeconds(effector.FadeOutTime);
// ここでカメラを切り替える
// フェードイン
effector.StartFadeIn();
yield return new WaitForSeconds(effector.FadeInTime);
}
}
これだけです。他の配布シェーダーに比べるとかなりシンプルです
ただのImageにシェーダーがつけてある形なので、描画順は良い感じに調整してください
Sampleフォルダの中にシンプルなサンプルシーンと、脱出ゲーム風の視点切り替えのサンプルシーンが入っています
各種パラメーターについて
progress以外はスクリプトのプロパティから調整できます
Fade Out Time
フェードアウトにかかる時間
Fade In Time
フェードインにかかる時間
Line Color
線の色
RotationDegree
エフェクトの回転角度
IsFlip
エフェクトの移動方向を回転させる
Line Width
線の太さ
Line Range
エフェクトの線の部分の範囲
大きいほど線の範囲が広くなります
Fade Range
エフェクトの線フェード部分の範囲
値が大きいほど黒い部分が広くなります
IsSharp
ちょっとぎざぎざになります
Progress
エフェクトの確認ができます
これは再生中でない時のUnityエディタ上だけでしか使えません