我正在使用3D OpenGL ES视图创建Android应用程序,该视图将包含从波前obj文件导入的3D模型。 典型的波前OBJ文件将只包含三角对象和它可能看起来像:将大尺寸数组保存到Android上的文件
v 1.00000 1.00000 0
v 1.00000 -1.00000 0
v -1.00000 -1.00000 0
vt 1.00000 1.00000 0
vt 1.00000 -1.00000 0
vt -1.00000 -1.00000 0
vn 1.00000 1.00000 0
vn 1.00000 -1.00000 0
vn -1.00000 -1.00000 0
f 1/1/1 2/2/2 3/3/3
在结束这一切将被转换成浮点数的一个单一(一维)阵列。 问题是这个文件很大,并且将它作为字符串加载并且处理需要大量时间。 (我们需要将文件加载到行中,然后将它们分成令牌,这需要大量时间和内存) 我正在寻找替代方法和解决方案来存储一个就绪阵列。 我唯一的想法是读取.obj文件并创建所需的数组。之后,序列化数组,并为应用程序的每个下一次执行读取序列化数组。这是一个好主意,还是有任何其他更好的方式在Android上。 请记住,有大量的数据处理! 我在寻找的是一个很好的解决方案,我认为我们不需要关心HDD上的空间而只关心加载时间和RAM的使用情况!