From d169b700f2a2d794b71906de62dcc4e4cb4a8596 Mon Sep 17 00:00:00 2001 From: "Sha..om" Date: Sat, 26 Jan 2013 01:17:27 +0000 Subject: [PATCH] * Fixed interpreting unsigned value as signed causing out of bounds when using model with more than 128 bones git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10171 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- engine/src/core/com/jme3/animation/SkeletonControl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engine/src/core/com/jme3/animation/SkeletonControl.java b/engine/src/core/com/jme3/animation/SkeletonControl.java index 0b27ffabb..0f7772bbf 100644 --- a/engine/src/core/com/jme3/animation/SkeletonControl.java +++ b/engine/src/core/com/jme3/animation/SkeletonControl.java @@ -385,7 +385,7 @@ public class SkeletonControl extends AbstractControl implements Cloneable { for (int w = maxWeightsPerVert - 1; w >= 0; w--) { float weight = weights[idxWeights]; - Matrix4f mat = offsetMatrices[indices[idxWeights++]]; + Matrix4f mat = offsetMatrices[indices[idxWeights++] & 0xff]; rx += (mat.m00 * vtx + mat.m01 * vty + mat.m02 * vtz + mat.m03) * weight; ry += (mat.m10 * vtx + mat.m11 * vty + mat.m12 * vtz + mat.m13) * weight;