为什么获取到的网格的顶点索引数不能大于256

目前用的cocos creator 2.3.3版本,在做3D模型的任意切割功能,发现通过 cc.Mesh.copyIndices 方法获取到全部三角面的顶点索引后,里面的值全部小于256,这就导致顶点数量大于256的模型不能正确分割,查看源码发现如下代码:

    const fn = _compType2fn[gfx.INDEX_FMT_UINT8];
    for (let i = 0; i < indexCount; ++i) {
        outputArray[i] = dv[fn](i * 2);
    }

也就是 outputArray[i] = dv.getUint8(i * 2);
所以 outputArray 中是无符号8位整型数,在 0 ~ 255 之间;

想知道为什么要用 getUint8 这个方法,

以及 cocos 自己是按什么格式使用这些数据的,

以及有什么解决方法能让我获取到正确的三角面顶点索引数组?

(做模型切割功能时,用长方体测试正常,用自带的球体测试就发现这个问题了)

2赞

求官方大佬和民间大佬们解答一下

已解决,自己重写方法,按16位无符号的方式获取索引值。:joy: