<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
On 11/10/2009 11:10 AM, Rodrigo Kumpera wrote:
<blockquote
 cite="mid:8cca42d80911101110o798776f5sa3deef338ce3fe7@mail.gmail.com"
 type="cite"><br>
  <br>
  <div class="gmail_quote">On Tue, Nov 10, 2009 at 4:59 PM, Chris
Toshok <span dir="ltr">&lt;<a moz-do-not-send="true"
 href="mailto:toshok@gmail.com">toshok@gmail.com</a>&gt;</span> wrote:<br>
  <blockquote class="gmail_quote"
 style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
    <div text="#000000" bgcolor="#ffffff">
    <div>
    <div class="h5">On 11/10/2009 08:19 AM, Rodrigo Kumpera wrote:
    <blockquote type="cite"><br>
      <br>
      <div class="gmail_quote">On Tue, Nov 10, 2009 at 1:52 PM, Chris
Toshok <span dir="ltr">&lt;<a moz-do-not-send="true"
 href="mailto:toshok@gmail.com" target="_blank">toshok@gmail.com</a>&gt;</span>
wrote:<br>
      <blockquote class="gmail_quote"
 style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
        <div text="#000000" bgcolor="#ffffff"> <br>
        <div>
        <blockquote type="cite">
          <pre>TODO
====

Pixel shaders, perspective transformations and bitmap caching can be
implemented in a similar way to how the opacity mask property in the
UIElement class is handled.

I recommend that we use Gallium3D for pixel processing

Gallium3D
  + MIT licenced
  + SSE2 optimized software implementation
  + LLVM implementation
  + Can be hardware accelerated if necessary

We need to convert .ps effect files to TGSI

  </pre>
        </blockquote>
        </div>
Hm, the only possible problem is download size.&nbsp; how large is gallium3d
(the portions we need, anyway) when built?<br>
        </div>
      </blockquote>
      <div><br>
      <br>
There is another issue to consider, the shader has to be verified to be
well formed.<br>
      <br>
      </div>
      </div>
    </blockquote>
    </div>
    </div>
right but we have that issue regardless of whether or not we use
Gallium3D.<br>
    </div>
  </blockquote>
  </div>
  <br>
Not really, if we emit managed code to apply the pixel shaders, we
offload the verification work to the current IL verifier.<br>
</blockquote>
The transformation from .ps to IL necessarily includes some sort of
verification.&nbsp; Like, if the shader references input 25, but there is no
input 25, clearly the shader is invalid, but since referencing input 25
results in a generated IL call to shaderContext.GetInput(25), it's not
something we'd ever hit as part of IL verification.<br>
<br>
Chris<br>
</body>
</html>