c++ - 为游戏开发编写 map 编辑器

标签 c++

<分区>

我最近开始游戏开发,主要使用 C++ 和 SDL。在创建了几个简单的克隆之后,我想做一些更复杂的事情。比我习惯的物理更多的东西,以及复杂的游戏对象。

到目前为止,我一直在使用我在 SDL 中制作的基本图 block 编辑器来创建二进制 map ,但现在我想做一些更丰富的事情。我可以在其中放置对象并定义它们的属性的东西。当然是 2D,但比简单的图 block 编辑器更实用。

我一直在搜索,但我还没有真正找到任何旨在开发此类实用程序的文章。

在哪里可以找到帮助我开发此工具包的信息?我应该使用什么?我一直在看 Qt,但我不太确定。对于我的这项工作,我将不胜感激任何帮助和可能的指导。

(我知道确实存在优秀的实用程序,但我想自己开发一个,然后希望将我的基本物理引擎集成到其中。这可能是重新发明轮子,但却是一个很好的学习机会。)

最佳答案

Tiled似乎可以回答大部分(如果不是全部)问题。

Where can I find information to help me develop this toolkit?

一个好的起点是查看开源项目,例如 tile。

And what should I use? I have been looking at Qt, but I'm not really sure.

你需要更具体。你有什么要求? Tiled 似乎可以完成您所说的大部分工作,并且是用 Qt 编写的,因此 Qt 绝对可以胜任这项任务。它也是用您已经熟悉的 C++ 编写的。

我建议不要重新发明轮子,而是使用现有的开源 map 编辑器(如平铺)来完成您需要的工作。如果有功能你HAVE to have ,您可以随时贡献或扩展编辑器。

由于您要制作一款更复杂的游戏,我的建议是首先定义您的要求。完成后,编写游戏 ( not an engine )。

关于c++ - 为游戏开发编写 map 编辑器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10914667/

相关文章:

c++ - 如果我需要在我的 header 中包含另一个 header 并且我计划在我的 CPP 文件中使用它,我是否也应该将它包含在那里以提高可读性?

c++ - 如何使用正则表达式删除 std::wstring 中特定短语的所有实例?

c++ - 如何实现应用程序事件记录器

c++ - 为什么 allegro c++ 用蓝色清除屏幕?

c++ - Boost 测试库使用不同的 "parameters"运行套件两次

java - 通过套接字发送 10 MB 的缓冲区 - block 还是整个 10MB?

c++ - 按键删除 STL std::set 元素时出现编译错误

c++ - 为什么常量缓冲区在 Directx 11 中部分更新

c++ - 信号/槽连接总数?

c++ - 如何设置模板参数,灵活选择不同种类的函数