gallium: implement clamping controls (ARB_color_buffer_float)
BTW this changes the gallium interface. Some rather cosmetic changes by Marek. Squashed commit of the following: commit 513b37d484f0318311e84bb86ed4c93cdff71f13 Author: Luca Barbieri <luca@luca-barbieri.com> Date: Thu Aug 26 18:17:54 2010 +0200 mesa/st: respect fragment clamping in st_DrawPixels commit 546a31e42cad459d7a7a10ebf77fc5ffcf89e9b8 Author: Luca Barbieri <luca@luca-barbieri.com> Date: Thu Aug 26 18:17:28 2010 +0200 mesa/st: support fragment and vertex color clamping commit c406514a1fbee6891da4cf9ac3eebe4e4407ec13 Author: Luca Barbieri <luca@luca-barbieri.com> Date: Tue Aug 24 21:56:37 2010 +0200 mesa/st: expose ARB_color_buffer_float if unclamping is supported commit d0c5ea11b6f75f3da2f4ca989115f150ebc7cf8d Author: Luca Barbieri <luca@luca-barbieri.com> Date: Thu Aug 26 17:53:41 2010 +0200 mesa/st: use unclamped colors This assumes that Gallium is to be interpreted as given drivers the responsibility to clamp these colors if necessary. commit aef5c3c6be6edd076e955e37c80905bc447f8a82 Author: Luca Barbieri <luca@luca-barbieri.com> Date: Thu Aug 26 18:12:34 2010 +0200 mesa, mesa/st: handle read color clamping properly We set IMAGE_CLAMP_BIT in the caller based on _ClampReadColor, where the operation mandates it. (see the removed XXX comment. -Marek) TODO: did I get the set of operations mandating it right? commit 76bdfcfe3ff4145a1818e6cb6e227b730a5f12d8 Author: Luca Barbieri <luca@luca-barbieri.com> Date: Thu Aug 26 18:18:25 2010 +0200 gallium: add color clamping to the interface
This commit is contained in:

committed by
Marek Olšák

parent
e5c6a92a12
commit
47e3896dfd
@@ -508,6 +508,13 @@ void st_init_extensions(struct st_context *st)
|
||||
ctx->Extensions.ARB_depth_clamp = GL_TRUE;
|
||||
}
|
||||
|
||||
/* this extension does not actually require support of floating point
|
||||
* render targets, just clamping controls
|
||||
*/
|
||||
if(screen->get_param(screen, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL) &&
|
||||
screen->get_param(screen, PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROL))
|
||||
ctx->Extensions.ARB_color_buffer_float = GL_TRUE;
|
||||
|
||||
if (screen->get_param(screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) {
|
||||
ctx->Extensions.ARB_shader_stencil_export = GL_TRUE;
|
||||
}
|
||||
|
Reference in New Issue
Block a user