是否可以使用带有无符号字节的Three.js BufferAttribute而不是浮点数?
我使用基于Three.js的Potree library渲染点云,我正在寻找节省gpu内存的方法。库的二进制格式对于每个点的位置使用3 * 4个字节,对于RGBA使用4 * 1个字节,对于法线(oct16 encoded)使用2 * 1个字节,每个点总共18个字节。 (感知的)问题是数据在客户端解包,一切都表示为32位浮点数,每点产生36个字节。为什么不首先使用数据而不将其转换为浮点数?这是Three.js的限制还是Potree的问题?如果问题出在三方面,那背后有充分的理由吗? (例如浏览器兼容性)
来自OpenGL和简单的WebGL编程,使用差不多2倍的内存似乎真的很浪费......