[Mesa-dev] [PATCH 28/75] st/nine: Increase MaxVertexBlendMatrixIndex

Axel Davy axel.davy at ens.fr
Wed Oct 5 20:09:01 UTC 2016


Modern cards do advertise 8.

Signed-off-by: Axel Davy <axel.davy at ens.fr>
---
 src/gallium/state_trackers/nine/adapter9.c | 2 +-
 src/gallium/state_trackers/nine/nine_ff.c  | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/gallium/state_trackers/nine/adapter9.c b/src/gallium/state_trackers/nine/adapter9.c
index e967e59..a58bfc2 100644
--- a/src/gallium/state_trackers/nine/adapter9.c
+++ b/src/gallium/state_trackers/nine/adapter9.c
@@ -782,7 +782,7 @@ NineAdapter9_GetDeviceCaps( struct NineAdapter9 *This,
     pCaps->MaxActiveLights = NINE_MAX_LIGHTS_ACTIVE; /* like GL_LIGHTi */
     pCaps->MaxUserClipPlanes = PIPE_MAX_CLIP_PLANES;
     pCaps->MaxVertexBlendMatrices = 4; /* 1 vec4 BLENDWEIGHT/INDICES input */
-    pCaps->MaxVertexBlendMatrixIndex = 7; /* D3DTS_WORLDMATRIX(0..7) */
+    pCaps->MaxVertexBlendMatrixIndex = 8; /* D3DTS_WORLDMATRIX(0..8) */
 
     pCaps->MaxPointSize = screen->get_paramf(screen, PIPE_CAPF_MAX_POINT_WIDTH);
 
diff --git a/src/gallium/state_trackers/nine/nine_ff.c b/src/gallium/state_trackers/nine/nine_ff.c
index be12f23..4ede477 100644
--- a/src/gallium/state_trackers/nine/nine_ff.c
+++ b/src/gallium/state_trackers/nine/nine_ff.c
@@ -26,7 +26,7 @@
 
 #define DBG_CHANNEL DBG_FF
 
-#define NINE_FF_NUM_VS_CONST 192
+#define NINE_FF_NUM_VS_CONST 196
 #define NINE_FF_NUM_PS_CONST 24
 
 struct fvec4
@@ -269,7 +269,7 @@ static void nine_ureg_tgsi_dump(struct ureg_program *ureg, boolean override)
  * CONST[160] D3DTS_WORLDMATRIX[0] * D3DTS_VIEW
  * CONST[164] D3DTS_WORLDMATRIX[1] * D3DTS_VIEW
  * ...
- * CONST[188] D3DTS_WORLDMATRIX[7] * D3DTS_VIEW
+ * CONST[192] D3DTS_WORLDMATRIX[8] * D3DTS_VIEW
  */
 struct vs_build_ctx
 {
@@ -460,7 +460,7 @@ nine_ff_build_vs(struct NineDevice9 *device, struct vs_build_ctx *vs)
         struct ureg_dst sum_blendweights = ureg_DECL_temporary(ureg);
         struct ureg_src cWM[4];
 
-        for (i = 160; i <= 191; ++i)
+        for (i = 160; i <= 195; ++i)
             ureg_DECL_constant(ureg, i);
 
         /* translate world matrix index to constant file index */
@@ -1787,7 +1787,7 @@ nine_ff_load_vs_transforms(struct NineDevice9 *device)
 
     if (state->rs[D3DRS_VERTEXBLEND] != D3DVBF_DISABLE) {
         /* load other world matrices */
-        for (i = 1; i <= 7; ++i) {
+        for (i = 1; i <= 8; ++i) {
             nine_d3d_matrix_matrix_mul(&M[40 + i], GET_D3DTS(WORLDMATRIX(i)), GET_D3DTS(VIEW));
         }
     }
-- 
2.10.0



More information about the mesa-dev mailing list