 					for (localVertexId = 0; localVertexId < 3; ++localVertexId)
 					{
 						inIndices.position = (usedIndicesCount + localVertexId) << 2;
-						oldVertexIds[localVertexId]	= inIndices.readShort();
+						oldVertexIds[localVertexId]	= inIndices.readUnsignedShort();
 						
 						var tmp : Object = usedVerticesDic[oldVertexIds[localVertexId]];
 						

			
			for (var indexId : int = 0; indexId < numIndices; ++indexId)
			{
				index = indexData.readShort();
				indexData.position -= 2;
				indexData.writeShort(oldVertexIdToNewVertexId[index]);
			}

			indexData.position = indexDataStartPosition;
			for (indexId = 0; indexId < numIndices; ++indexId)
			{
				var index : uint = indexData.readUnsignedShort();
				
				indexData.position -= 4;
				indexData.writeShort(oldVertexIdToNewVertexId[index]);
