shader
# render the output image by using OUTPUT_TEXTURE
outputChildren
Shape {
appearance DEF ShaderAppearance ShaderAppearance {
transparent FALSE
vertexShader DEF VertexShader VertexShader
{
url "hlsl:
float4x4 modelViewProjectionT;
struct VS_OUTPUT
{
float4 Pos : POSITION;
float2 Tex : TEXCOORD0;
};
VS_OUTPUT main (
float4 Pos : POSITION,
float3 Norm : NORMAL,
float2 Tex : TEXCOORD0
)
{
VS_OUTPUT Out = (VS_OUTPUT)0;
Out.Pos = mul(Pos,modelViewProjectionT); // position (projected)
//Out.Tex = Tex;
Out.Tex = float2(Tex.x,1.0f-Tex.y); // Y FLIP
return Out;
}
"
}
fragmentShader
DEF FragmentShader FragmentShader
{
exposedField SFFloat time 1
field SFNode image USE OUTPUT_TEXTURE
url [
"local/shader/outline.phl"
]
}
}
geometry
Rectangle { }
# Box { size 2 2 2 }
}
}
DEF _TimeSensor TimeSensor {
cycleInterval 1
loop TRUE
startTime 0
}
ROUTE _TimeSensor.fraction_changed TO FragmentShader.time