我目前正在开发一个跨平台游戏引擎,我准备将整个开发过程通过博客记录下来。欢迎各位朋友提出宝贵意见。


下面是我的设计文档初稿。


项目名称

Portable Game Engine (PGE )


目标

  • 跨平台,希望能支持Windows,Linux,Mac OSX,iPhone,WinCE, Android, Blackberry, Symbian phone 等
  • 简单,尽量简化编程接口
  • 2D和3D
  • 组件可选,以减小目标代码
  • 支持Unicode


组件

  • 核心:游戏主循环,线程,垃圾收集,插件等
  • 图形系统(采用OpenGL或OpenGL ES):图像(纹理),动画,字体
  • 声音系统(采用OpenAL):音效,音乐,乐器
  • 资源管理器:压缩/解压,加密/解密
  • 输入:键盘,鼠标及触摸屏(重力感应)
  • 网络:Tcp/ip,Http, UDP
  • GUI(用户接口):菜单,文本,按钮,列表框,下拉框,选择框
  • 游戏AI
  • 游戏Physics


开发按阶段进行。第一阶段开发Windows下的OpenGL 2D引擎,然后移植到iPhone下。