我花了几个月的时间打造了Orbis,这是一款大型战略游戏,它在163,000个原生C++编写的、手工绘制的Vulkan渲染引擎的星球上模拟了整个文明的历史。这个游戏不依赖任何引擎,仅在Windows和Linux上运行。
163K个地块是一个庞大的数字,而游戏能保持流畅的性能是因为模拟和渲染是完全分离的,各自在不同的线程中运行。这样一来,星球就可以在各个地块上进行贸易、战争和迁徙,而不影响帧率。实现这一点需要正确使用原始C++进行线程安全编程,而这通常会让单人开发者感到头疼。但是,伴随着一个理解内存顺序的AI,事情就变得更加容易了。
保持游戏不变形的原因是几乎所有系统最初都是一个失败的集成测试,所有的代码都没有被写出来。所以,贸易、外交、战争、工人分配等系统都有一个保护机制。当一个代理在三个文件之外悄悄地破坏了某些东西时,测试就会立即显示红色,而不是一个月后才发现问题。每天我都在四个git工作树上运行四个代理,以确保它们不会互相干扰,各自在一个单独的分支上,所有的代理都经过了审查和测试后才会合并,而不是一次性地合并所有的代码。
游戏的玩法:人口是唯一的货币,没有黄金和没有科技树。城市的增长依赖于实际的人口,而不是黄金和科技。城市之间会因为土地而争夺,因为更多的农田意味着更少的住房,而你不能无限制地扩张。AI的状态也使用行为树来控制战争、外交和生产。你的任务是影响,而不是命令,目的是让几千年的历史在你眼前展开。
它是免费的,下载大小为3.7MB,仅有一个exe文件,无需安装,支持Windows和Linux。它现在仍然是alpha版本,更多地是一种沙盒游戏。感谢你提供反馈!如果你感兴趣,请访问:https://magistairs.itch.io/orbis
评论 (0)