gutterball-3/Gutterball 3/Assets/Standard Assets/Image Effects (Pro Only)/Fisheye.js
SkunkStudios 71779ef7ac New Version 1.6
New 125 balls & powerups.
Improved graphics.
2025-05-07 06:18:40 +07:00

37 lines
No EOL
1.1 KiB
JavaScript

#pragma strict
@script ExecuteInEditMode
@script RequireComponent (Camera)
@script AddComponentMenu ("Image Effects/Fisheye")
class Fisheye extends PostEffectsBase {
public var strengthX : float = 0.05f;
public var strengthY : float = 0.05f;
public var fishEyeShader : Shader = null;
private var fisheyeMaterial : Material = null;
function CheckResources () : boolean {
CheckSupport (false);
fisheyeMaterial = CheckShaderAndCreateMaterial(fishEyeShader,fisheyeMaterial);
if(!isSupported)
ReportAutoDisable ();
return isSupported;
}
function OnRenderImage (source : RenderTexture, destination : RenderTexture) {
if(CheckResources()==false) {
Graphics.Blit (source, destination);
return;
}
var oneOverBaseSize : float = 80.0f / 512.0f; // to keep values more like in the old version of fisheye
var ar : float = (source.width * 1.0f) / (source.height * 1.0f);
fisheyeMaterial.SetVector ("intensity", Vector4 (strengthX * ar * oneOverBaseSize, strengthY * oneOverBaseSize, strengthX * ar * oneOverBaseSize, strengthY * oneOverBaseSize));
Graphics.Blit (source, destination, fisheyeMaterial);
}
}