【发布时间】:2014-04-16 15:57:51
【问题描述】:
我需要在 C# 和 Unity 中将一个字节 [] 转换为字符串,而不会丢失很多每秒帧数。 我目前正在使用 WWW 类来获取文本文件,但是当我使用 WWW.text 时,由于文件太大并导致 FPS 下降。有什么方法可以逐步进行转换,而不会延迟太久。
WWW file = new WWW(path);
yield return file;
string text= file.text;
我用它来读取一个完整的文件(一个 .OBJ),我需要读取所有文本。行到行或所有文本到一个字符串后拆分。为了在不降低 FPS 的情况下阅读文本,我这样做了。
WWW file = new WWW(path);
yield return file;
string text= file.bytes;
如果文件太大,WWW.text,丢弃 FPS,那么我需要使用 WWW.bites。
在 Unity 中使用yield return null; 处理另一帧。
如果进程需要太多时间来执行,则丢弃 FPS(如果是 WWW.text);
【问题讨论】:
-
投票重新打开,因为看起来问题是关于将字节数组的一部分作为字符串而不是“如何将整个数组转换为字符串”... user3541917 - 请您澄清问题并显示你如何使用结果字符串。如果您需要将内容作为单个字符串,它确实是重复的问题,但如果您想使用部分字符串,它是不同的问题。应该重新措辞/再次询问,以显示您希望如何使用“增量转换”的结果。
-
我同意阿列克谢的观点。这不是一个直接的转换问题。相反,这是一个在不影响应用程序其余部分的情况下管理 fps 和进行转换的技术问题。
标签: c# unity3d bytearray unityscript