Greetings,<br><br>As you can see, I pushed the core support for ARB_texture_float to master after private discussion and acknowledgment. All Luca&#39;s work on this except softpipe and llvmpipe patches has been merged to master, with me adding missing pieces and fixing bugs.<br>

<br>The good news is Unigine Heaven and Unigine Tropics work with r300g without any major graphical glitches and maybe even with r600g, assuming you enable the extension using --enable-texture-float.<br><br>Marek<br><br>
<div class="gmail_quote">
On Fri, Apr 1, 2011 at 3:56 PM, Marek Olšák <span dir="ltr">&lt;<a href="mailto:maraeo@gmail.com">maraeo@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

Hi,<br>
<br>
please read on.<br>
<br>
This patch series adds the last pieces of ARB_texture_float support to Mesa and Gallium.<br>
<br>
The thing is Mesa and Gallium more or less already support float textures and renderbuffers in master. Gallium has full floating-point support in the interface and if it was a public API, people could just expose it and not care. There is clearly a need for a configure switch which can hide float renderbuffers from any interface, public or private, and driver developers should use such a switch.<br>


<br>
So ARB_texture_float is mostly implemented in master. What&#39;s missing is the A/L/LA/I formats in Gallium, and the R/RG formats in the Mesa core, and some glue between Mesa and st/mesa.<br>
<br>
I am proposing to merge all these patches and advertise ARB_texture_float if --enable-texture-float is used in <a href="http://configure.sh/autogen.sh" target="_blank">configure.sh/autogen.sh</a>. This is the same strategy the FreeType project had. If Linux distributors want ARB_texture_float (e.g. to get OpenGL 3), they should obtain the patent or find any other legal way around it, and then use the configure switch, but it&#39;s their and only their problem, not ours. By default, ARB_texture_float is disabled, so the Linux distributors not willing to support ARB_texture_float don&#39;t need to care.<br>


<br>
BTW, this is not April Fools&#39; prank.<br>
<br>
Please review.<br>
<br>
Luca Barbieri (1):<br>
      gallium: add A/L/LA/I floating point formats<br>
<br>
Marek Olšák (5):<br>
      mesa: fix L16F and L32F format properties<br>
      mesa: add R/RG floating-point formats<br>
      mesa: finish up ARB_texture_float<br>
      st/mesa: convert Mesa float formats to Gallium<br>
      Add a configure enable switch for float textures<br>
<br>
 <a href="http://configure.ac" target="_blank">configure.ac</a>                             |   13 ++<br>
 src/gallium/auxiliary/util/u_format.csv  |    8 +<br>
 src/gallium/include/pipe/p_format.h      |    9 +<br>
 src/mesa/drivers/dri/r300/r300_context.c |    1 -<br>
 src/mesa/drivers/dri/r600/r600_context.c |    1 -<br>
 src/mesa/main/extensions.c               |    3 +-<br>
 src/mesa/main/fbobject.c                 |   32 ++++-<br>
 src/mesa/main/formats.c                  |   44 ++++++-<br>
 src/mesa/main/formats.h                  |    4 +<br>
 src/mesa/main/framebuffer.c              |   14 ++-<br>
 src/mesa/main/texfetch.c                 |   28 ++++<br>
 src/mesa/main/texfetch_tmp.h             |  104 +++++++++++++<br>
 src/mesa/main/texformat.c                |   16 ++<br>
 src/mesa/main/texstore.c                 |   20 ++-<br>
 src/mesa/state_tracker/st_extensions.c   |   14 ++<br>
 src/mesa/state_tracker/st_format.c       |  237 ++++++++++++++++++++++++++++++<br>
 16 files changed, 537 insertions(+), 11 deletions(-)<br>
<br>
Best regards<br>
<font color="#888888">Marek<br>
</font></blockquote></div><br>