解像度を与えておき、uv 値の 0~1 の値を使って
ピクセルにおけるカメラ位置から発せられる視線ベクトル viewDir を求めます
あとはキューブマップのサンプル処理につなげるだけです
fixed4 frag (v2f i) : SV_Target { fixed4 col = tex2D(_MainTex, i.uv); half2 uvBase = i.uv - 0.5h; // Edge Screen Position float2 esp = float2(uvBase.x * _ScreenEdge.x, uvBase.y * _ScreenEdge.y); // ピクセルの視線ベクトル float3 viewDir = normalize(_CameraRight * esp.x + _CameraUp * esp.y + _CameraForward); // キューブマップ色 half4 color = UNITY_SAMPLE_TEXCUBE(_CubeMap1, viewDir); // ブレンドした背景色に溶けるようにFogをかける return color; }
ゲームで使わなくなったので消すファイルなのですが
あとで使いたくなることもあるかもしれないので、記録しておきますね
しばらく動いてたので、ご参考にどうぞ