Circle Drawing:
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
float2 center = float2(0.5, 0.5);
float distance = length(coords - center);
float radius = 0.4;
float4 color = (distance < radius) ? float4(0, 0, 0, 1) : float4(1, 1, 1, 1);
return color;
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
sin and cos
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
float amplitude = 0.9;
float frequency =55.0;
// vertical
float sinValue = amplitude * sin(coords.x * frequency);
// horizontal
float cosValue = amplitude * cos(coords.y * frequency);
float4 color = float4(sinValue, 0, cosValue, 1);
return color;
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
Basic Animation:
Pass the time parameter from update method with these code lines thatfloat time = (float)gameTime.TotalGameTime.TotalMilliseconds;
, and then effect.Parameters["time"].SetValue(time);
.
float time;
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
float amplitude = 0.9;
float frequency =55.0;
// vertical
float sinValue = amplitude * sin((coords.x + time * 0.5) * frequency);
float4 color = float4(sinValue, 0, 0, 1);
return color;
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
return float4(coords.x, 0.0, 0.0, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
return float4(0.0, coords.y, 0.0, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
return float4(uv.x, uv.y, 0.0, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
return float4(0.0, distance, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance -= 0.7;
distance = abs(distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance -= 0.7;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance = cos(distance * 10)/10;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance = cos(distance * 10 + (time * 0.005))/10;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
uv *= 4;
uv = frac(uv);
uv -= 0.5;
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance = cos(distance * 10 + (time * 0.005)) / 10;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
static const float PI = 3.14159;
float2x2 rotate3d(float angle) {
return float2x2(cos(angle), -sin(angle), sin(angle), cos(angle));
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
float2 p = coords * 2 - float2(1,1);
float temp = (time * 0.005) * PI;
p = mul(rotate3d(temp), p);
float t = 0.075 / abs(0.7 - length(p));
float vl = 0.2 * (sin(time) + 3.0);
float3 temp2 = float3(t, t, t) * float3(vl, p.y * 0.8, 3.0);
return float4(temp2, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
float amplitude = 0.9;
float frequency =55.0;
// vertical
float sinValue = amplitude * sin((coords.x + time * 0.5) * frequency);
float4 color = float4(sinValue, 0, 0, 1);
return color;
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
return float4(coords.x, 0.0, 0.0, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
return float4(0.0, coords.y, 0.0, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
return float4(uv.x, uv.y, 0.0, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
return float4(0.0, distance, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance -= 0.7;
distance = abs(distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance -= 0.7;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance = cos(distance * 10)/10;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance = cos(distance * 10 + (time * 0.005))/10;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
// make (0,0) origin
float2 uv = (coords - float2(0.5, 0.5)) * float2(2,-2);
uv *= 4;
uv = frac(uv);
uv -= 0.5;
// length function calculate the magnitude of the vector. length(vec(0,0)) = 0, length(vec(0,1)) = 1
float distance = length(uv);
distance = cos(distance * 10 + (time * 0.005)) / 10;
distance = abs(distance);
//distance = step(0.1, distance)
distance = smoothstep(0.0, 0.2, distance);
return float4(distance, 0, distance, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
float time;
static const float PI = 3.14159;
float2x2 rotate3d(float angle) {
return float2x2(cos(angle), -sin(angle), sin(angle), cos(angle));
}
float4 PixelShaderFunction(float2 coords: TEXCOORD0) : COLOR0
{
float2 p = coords * 2 - float2(1,1);
float temp = (time * 0.005) * PI;
p = mul(rotate3d(temp), p);
float t = 0.075 / abs(0.7 - length(p));
float vl = 0.2 * (sin(time) + 3.0);
float3 temp2 = float3(t, t, t) * float3(vl, p.y * 0.8, 3.0);
return float4(temp2, 1.0);
}
technique Technique1
{
pass Pass1
{
PixelShader = compile ps_2_0 PixelShaderFunction();
}
}
No comments:
Post a Comment