From 4003a5b78c217588ab2cb23243e693f35d90aba0 Mon Sep 17 00:00:00 2001 From: Zack Middleton Date: Wed, 17 Mar 2021 12:22:13 -0400 Subject: [PATCH] Fix the number of weights in the IQM model calculation [The fourth bone influence of each vertex was ignored. --zturtleman] Patch by Romulo Fernandes (razor85). --- code/renderergl1/tr_model_iqm.c | 2 +- code/renderergl2/tr_model_iqm.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/renderergl1/tr_model_iqm.c b/code/renderergl1/tr_model_iqm.c index fe205ff4..5050eb10 100644 --- a/code/renderergl1/tr_model_iqm.c +++ b/code/renderergl1/tr_model_iqm.c @@ -1346,7 +1346,7 @@ void RB_IQMSurfaceAnim( surfaceType_t *surface ) { vtxMat[10] = blendWeights[0] * poseMats[12 * data->influenceBlendIndexes[4*influence + 0] + 10]; vtxMat[11] = blendWeights[0] * poseMats[12 * data->influenceBlendIndexes[4*influence + 0] + 11]; - for( j = 1; j < 3; j++ ) { + for( j = 1; j < 4; j++ ) { if ( blendWeights[j] <= 0.0f ) { break; } diff --git a/code/renderergl2/tr_model_iqm.c b/code/renderergl2/tr_model_iqm.c index fc345a32..cc12faf4 100644 --- a/code/renderergl2/tr_model_iqm.c +++ b/code/renderergl2/tr_model_iqm.c @@ -1528,7 +1528,7 @@ void RB_IQMSurfaceAnim( surfaceType_t *surface ) { vtxMat[10] = blendWeights[0] * poseMats[12 * data->influenceBlendIndexes[4*influence + 0] + 10]; vtxMat[11] = blendWeights[0] * poseMats[12 * data->influenceBlendIndexes[4*influence + 0] + 11]; - for( j = 1; j < 3; j++ ) { + for( j = 1; j < 4; j++ ) { if ( blendWeights[j] <= 0.0f ) { break; }