我正在使用C ++和虚幻引擎开发游戏。
每次开始游戏时,我都必须从文本文件中读取数据。此文本文件目前有117,955行分为24个寄存器。每行的第一个字符是标识它们的索引。
我将加载12或13个寄存器,所以我需要先找到它们。所有寄存器都是连续的:从0到12,或从5到17。
我不知道这是否是将数据加载到程序中的最佳方法。现在,我打开文件,逐行读取,直到找到第一个寄存器。
我认为我可以将文件分成24个文本文件,每个寄存器一个。但也许打开和关闭13个文件可能会更慢。
另一种选择是使用像mySQL或mongoDB这样的小型数据库引擎。
你是更有经验的程序员,因为我刚开始学习C ++,而且我总是用C#编程并使用SQL Server。
你推荐我什么?
答案 0 :(得分:2)
我不相信mysql或者mongo是一个正确的选择(后台服务器进程对游戏来说太过分了),我建议你看一下sqlite。
如果您对数据库相对较好,使用数据库可以极大地提高您的开发速度(而不是考虑您的自定义文件格式,您只需使用旧的SQL)
另一点是您的数据组织得很好,您将拥有统计数据,只需一些简单的脚本即可为游戏设计师创建分布式环境/网络界面,以便为您的内容添加内容/项目/脚本游戏
至于设计:无论如何封装数据库访问。它会在以后帮助你。即如果您发现即使sqlite对您而言太慢,也可以将您的数据刻录到二进制文件
答案 1 :(得分:2)