極座標
Shader "Test"
{
Properties{}
CGINCLUDE
#include "UnityCG.cginc"
#define PI 3.14159265359
float4 frag(v2f_img i) : SV_Target
{
// 原点オフセット
float2 st = 0.5 - i.uv;
// 0 - 180
float angle = atan2(st.y, st.x);
// 角度をオフセットしてアニメーションさせる
angle += _Time.y * PI;
// 正規化された角度(0 - 1)
float nAngle = (angle + PI) / (2 * PI);
// (-1 - 1)
//float nAngle = angle / PI;
// 極座標空間の半径
float r = sin(nAngle * PI) * 0.5;
return r;
}
ENDCG
SubShader
{
Pass
{
CGPROGRAM
#pragma vertex vert_img
#pragma fragment frag
ENDCG
}
}
}