Go back to using byte buffers; that wasn't the problem.

git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@241 ed5b42cb-e716-0410-a449-f6a68f950b19
This commit is contained in:
Andrzej Kapolka
2007-05-11 18:30:51 +00:00
parent 345895c32c
commit 82ba950111
@@ -28,7 +28,6 @@ import java.io.Serializable;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.nio.FloatBuffer; import java.nio.FloatBuffer;
import java.nio.IntBuffer; import java.nio.IntBuffer;
import java.nio.ShortBuffer;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
@@ -621,13 +620,13 @@ public class SkinMesh extends ModelMesh
{ {
int bonesPerVertex = _sconfig.getBonesPerVertex(); int bonesPerVertex = _sconfig.getBonesPerVertex();
int size = getBatch(0).getVertexCount() * bonesPerVertex; int size = getBatch(0).getVertexCount() * bonesPerVertex;
ShortBuffer bibuf = BufferUtils.createShortBuffer(size); ByteBuffer bibuf = BufferUtils.createByteBuffer(size);
FloatBuffer bwbuf = BufferUtils.createFloatBuffer(size); FloatBuffer bwbuf = BufferUtils.createFloatBuffer(size);
for (WeightGroup group : _weightGroups) { for (WeightGroup group : _weightGroups) {
short[] indices = new short[bonesPerVertex]; byte[] indices = new byte[bonesPerVertex];
for (int ii = 0; ii < indices.length; ii++) { for (int ii = 0; ii < indices.length; ii++) {
indices[ii] = (short)((ii < group.bones.length) ? indices[ii] = (byte)((ii < group.bones.length) ?
ListUtil.indexOf(_bones, group.bones[ii]) : 0); ListUtil.indexOf(_bones, group.bones[ii]) : 0);
} }
for (int ii = 0, widx = 0; ii < group.vertexCount; ii++) { for (int ii = 0, widx = 0; ii < group.vertexCount; ii++) {