“模拟宇宙”(SIMulated Universe)是一个基于 OpenGL 和 UDP(Pyrite 协议)物理引擎实现。
本项目名称来源,伟大的黑塔女士
-
高性能
直接基于 OpenGL,用 C++ 编写,并且在开发过程中尽可能避免使用 RTTI 机制,以实现更好的性能。
-
多端同步
SIMU 可以以服务器模式启动,并开任意数量的客户端。引擎跑在服务器和所有客户端上,通过 UDP(Pyrite 协议)保持同步,并以服务端的宇宙数据为准。
SIMU 本身的定位是一个模板项目。通过实现各种模拟对象,可以创作出不同的效果。
模拟天体 (astro 分支)
SIMU 的 asto
类实现了万有引力机制,所有 astro
对象之间会互相吸引。
astro 分支设计了一个初始条件,可以模拟三体运动。
模拟对战
human
对象可以为用户所操纵,并以 SIMU 体系内高效的通信协议向所有客户端同步操作指令。以此为基础,可以实现一些联机游戏。