projects
/
mesa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
52f145a
)
r300g: set undefined vertex swizzles to (0,0,0,1) respectively
author
Marek Olšák
<maraeo@gmail.com>
Mon, 26 Apr 2010 22:01:03 +0000
(
00:01
+0200)
committer
Marek Olšák
<maraeo@gmail.com>
Mon, 26 Apr 2010 22:01:03 +0000
(
00:01
+0200)
src/gallium/drivers/r300/r300_state_inlines.h
patch
|
blob
|
history
diff --git
a/src/gallium/drivers/r300/r300_state_inlines.h
b/src/gallium/drivers/r300/r300_state_inlines.h
index c2bff67ccb6bf70e3b937a2a3b1a5ac41f78e5eb..fcbdb91b67e328cc23ed3a6358a89689b8edc89d 100644
(file)
--- a/
src/gallium/drivers/r300/r300_state_inlines.h
+++ b/
src/gallium/drivers/r300/r300_state_inlines.h
@@
-453,10
+453,17
@@
r300_translate_vertex_data_swizzle(enum pipe_format format) {
return 0;
}
- for (i = 0; i <
4
; i++) {
+ for (i = 0; i <
desc->nr_channels
; i++) {
swizzle |=
MIN2(desc->swizzle[i], R300_SWIZZLE_SELECT_FP_ONE) << (3*i);
}
+ /* Set (0,0,0,1) in unused components. */
+ for (; i < 3; i++) {
+ swizzle |= R300_SWIZZLE_SELECT_FP_ZERO << (3*i);
+ }
+ for (; i < 4; i++) {
+ swizzle |= R300_SWIZZLE_SELECT_FP_ONE << (3*i);
+ }
return swizzle | (0xf << R300_WRITE_ENA_SHIFT);
}