Ejemplo n.º 1
0
 private void red_Click_1(object sender, RoutedEventArgs e)
 {
     if (!reddd)
     {
         second.AddInput(temp);
     }
     else
     {
         second.AddInput(FirstFilter);
     }
     reddd = !reddd;
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Add all the hlsl files here
        /// </summary>
        public void AddEffects()
        {
            Renderer    = new GPUImageGame(this.Dispatcher);
            FirstFilter = new InitialFilter(@"HLSL\RenderToScreen.fxo");
            FirstFilter.AddInput("cat.dds");

            temp = new InitialFilter(@"HLSL\FirstFilter.fxo");

            second = new ImageFilter(@"HLSL\SpotLight.fxo",
                                     new Parameter("ImageSize", new Vector2(1, 1)),
                                     new Parameter("LightPos", new Vector2(400, 400)));
            second.AddInput(FirstFilter);

            Renderer.TerminalFilter = second;

            Renderer.Run(DisplayGrid);
            Task t = Task.Factory.StartNew(new Action(() =>
            {
                Vector2 pos = new Vector2(0, 0);
                int add     = 1;
                while (true)
                {
                    pos.X = (pos.X + 1 * add);
                    if (pos.X == 800 || pos.X == 0)
                    {
                        pos.Y = (pos.Y + 40) % 1200;
                        add  *= -1;
                    }

                    second.UpdateParameter("LightPos", pos);

                    Thread.Sleep(1);
                }
            }));
        }