summaryrefslogtreecommitdiff
path: root/Valheim_v0.141.2_r202102/Valheim/assembly_sunshafts/UnityStandardAssets.ImageEffects/Fisheye.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Valheim_v0.141.2_r202102/Valheim/assembly_sunshafts/UnityStandardAssets.ImageEffects/Fisheye.cs')
-rw-r--r--Valheim_v0.141.2_r202102/Valheim/assembly_sunshafts/UnityStandardAssets.ImageEffects/Fisheye.cs43
1 files changed, 43 insertions, 0 deletions
diff --git a/Valheim_v0.141.2_r202102/Valheim/assembly_sunshafts/UnityStandardAssets.ImageEffects/Fisheye.cs b/Valheim_v0.141.2_r202102/Valheim/assembly_sunshafts/UnityStandardAssets.ImageEffects/Fisheye.cs
new file mode 100644
index 0000000..77c1663
--- /dev/null
+++ b/Valheim_v0.141.2_r202102/Valheim/assembly_sunshafts/UnityStandardAssets.ImageEffects/Fisheye.cs
@@ -0,0 +1,43 @@
+using UnityEngine;
+
+namespace UnityStandardAssets.ImageEffects;
+
+[ExecuteInEditMode]
+[RequireComponent(typeof(Camera))]
+[AddComponentMenu("Image Effects/Displacement/Fisheye")]
+public class Fisheye : PostEffectsBase
+{
+ [Range(0f, 1.5f)]
+ public float strengthX = 0.05f;
+
+ [Range(0f, 1.5f)]
+ public float strengthY = 0.05f;
+
+ public Shader fishEyeShader;
+
+ private Material fisheyeMaterial;
+
+ public override bool CheckResources()
+ {
+ CheckSupport(needDepth: false);
+ fisheyeMaterial = CheckShaderAndCreateMaterial(fishEyeShader, fisheyeMaterial);
+ if (!isSupported)
+ {
+ ReportAutoDisable();
+ }
+ return isSupported;
+ }
+
+ private void OnRenderImage(RenderTexture source, RenderTexture destination)
+ {
+ if (!CheckResources())
+ {
+ Graphics.Blit(source, destination);
+ return;
+ }
+ float num = 5f / 32f;
+ float num2 = (float)source.width * 1f / ((float)source.height * 1f);
+ fisheyeMaterial.SetVector("intensity", new Vector4(strengthX * num2 * num, strengthY * num, strengthX * num2 * num, strengthY * num));
+ Graphics.Blit(source, destination, fisheyeMaterial);
+ }
+}