summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/svga/svga_pipe_sampler.c
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2010-02-13 09:16:57 +0000
committerJosé Fonseca <jfonseca@vmware.com>2010-02-13 15:43:33 +0000
commit6b1193820f8985e2a7182fcc983fbaf17802e139 (patch)
treef7b25d2cf7c9f797b4c1d8fe540ee4ae3e4ab336 /src/gallium/drivers/svga/svga_pipe_sampler.c
parent43b4d2a048ee8e89e7b8ab38d0ad2bc2daae8402 (diff)
svga: Fix texture border color.
Also opposite ordering.
Diffstat (limited to 'src/gallium/drivers/svga/svga_pipe_sampler.c')
-rw-r--r--src/gallium/drivers/svga/svga_pipe_sampler.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/gallium/drivers/svga/svga_pipe_sampler.c b/src/gallium/drivers/svga/svga_pipe_sampler.c
index 2a9adfbb06..224c4f4c18 100644
--- a/src/gallium/drivers/svga/svga_pipe_sampler.c
+++ b/src/gallium/drivers/svga/svga_pipe_sampler.c
@@ -27,7 +27,6 @@
#include "pipe/p_defines.h"
#include "util/u_math.h"
#include "util/u_memory.h"
-#include "util/u_pack_color.h"
#include "tgsi/tgsi_parse.h"
#include "svga_context.h"
@@ -97,7 +96,6 @@ svga_create_sampler_state(struct pipe_context *pipe,
{
struct svga_context *svga = svga_context(pipe);
struct svga_sampler_state *cso = CALLOC_STRUCT( svga_sampler_state );
- union util_color uc;
cso->mipfilter = translate_mip_filter(sampler->min_mip_filter);
cso->magfilter = translate_img_filter( sampler->mag_img_filter );
@@ -114,14 +112,12 @@ svga_create_sampler_state(struct pipe_context *pipe,
cso->compare_func = sampler->compare_func;
{
- ubyte r = float_to_ubyte(sampler->border_color[0]);
- ubyte g = float_to_ubyte(sampler->border_color[1]);
- ubyte b = float_to_ubyte(sampler->border_color[2]);
- ubyte a = float_to_ubyte(sampler->border_color[3]);
-
- util_pack_color_ub( r, g, b, a,
- PIPE_FORMAT_B8G8R8A8_UNORM, &uc);
- cso->bordercolor = uc.ui;
+ uint32 r = float_to_ubyte(sampler->border_color[0]);
+ uint32 g = float_to_ubyte(sampler->border_color[1]);
+ uint32 b = float_to_ubyte(sampler->border_color[2]);
+ uint32 a = float_to_ubyte(sampler->border_color[3]);
+
+ cso->bordercolor = (a << 24) | (r << 16) | (g << 8) | b;
}
/* No SVGA3D support for: