-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I've been digging through the softpipe code in gallium for the past few days. I think I'm starting to "get it". I do have one question about the way quads are processed.
It looks like the triangle setup code produces a row of quads and passes them off, one at a time, to the fragment shader. The fragment shader then does the attribute interpolation and passes the fragments to the real shader. Is that correct? It seems like instead we'd want the setup code to produce large groups of quads with all of attributes pre-interpolated. Each quad would be tagged with some ordering information. The shader code could then process quads however it wanted as longs as the tagged ordering information was respected. This would allow a few things: 1. Group quad processing to better use the tile cache. 2. Trivially distribute quad processing to multiple CPU cores (not just on Cell, either). 3. If the shader doesn't modify Z values, early Z culling could be performed. I don't see any easy way to achieve this with the current code. Am I missing something, or is this a place where I could jump in and help? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) iD8DBQFHKRtMX1gOwKyEAw8RAjS5AJ4rfvxn6CHiQVOqXv1o2cgRaNB6XQCgjSJK OahlvzbNymPBfMnqetGbqEA= =QqR8 -----END PGP SIGNATURE----- ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev