Example #1
0
        public Vector4 FS(SystemPosition4 input)
        {
            Vector4 ret = Vector4.Zero;

            if (IsFrontFace)
            {
                ret += Vector4.One;
            }

            // Ddx
            float   r  = Ddx(ret.X);
            Vector2 r2 = Ddx(ret.XY());
            Vector3 r3 = Ddx(ret.XYZ());
            Vector4 r4 = Ddx(ret);

            // DdxFine
            r  = DdxFine(ret.X);
            r2 = DdxFine(ret.XY());
            r3 = DdxFine(ret.XYZ());
            r4 = DdxFine(ret);

            // Ddy
            r  = Ddy(ret.X);
            r2 = Ddy(ret.XY());
            r3 = Ddy(ret.XYZ());
            r4 = Ddy(ret);

            // DdyFine
            r  = DdyFine(ret.X);
            r2 = DdyFine(ret.XY());
            r3 = DdyFine(ret.XYZ());
            r4 = DdyFine(ret);

            return(ret);
        }
        Vector4 FS(SystemPosition4 input)
        {
            Vector2 v2 = new Vector2(FS_M0.M11, FS_M1.M22);

            v2.X += GetIndirectOffset();
            return(Sample(FS_T0, FS_S0, v2));
        }
Example #3
0
        public DualOutput FS(SystemPosition4 input)
        {
            DualOutput output;

            output.FirstOutput  = new Vector4(input.Position.X, input.Position.Y, input.Position.Z, 1);
            output.SecondOutput = new Vector4(input.Position.Z, input.Position.X, input.Position.Y, 1);
            return(output);
        }
        public Vector4 FS(SystemPosition4 input)
        {
            Vector4 ret = Vector4.Zero;

            if (IsFrontFace)
            {
                ret += Vector4.One;
            }

            return(ret);
        }
 Vector4 FS(SystemPosition4 input)
 {
     return(input.Position);
 }