冰球游戏的初步设计

冰球游戏的初步设计

简介

这个游戏要实现的功能:简单描述为在在一个范围内用两个击球器,击打一个冰球,并模拟出接近现实的物理运动规律。

主要模块及其功能

  • gui模块:
    这个模块是负责与用户交互的:包括图形输出与用户操作的输入
    可以利用qt进行UI和图形的绘制;
    qt的窗体程序是事件响应的机制,对应于用户的输入
  • 物理引擎模块
    计划使用Box2d完成物理引擎的功能:Box2d是一个单纯的仿真刚体平面运动的平台无关的物理引擎库,可以实现,速度,加速度,碰撞,摩擦等特性,很多2d游戏引擎都使用Box2d作为物理引擎。
    物理引擎抽象出一个物理世界管理者的概念,用于管理所有的运动。它应当接收外部控制信号(再这里即是给击球器设定速度,加速度等信息),不断更新所有对象的运动状态。
    所有物理对象的状态有都会开放给GUI模块,用于输出图形。
  • 实时控制系统
    该模块是在Xenomai实时环境下,更新物体的运动目标和计算相应的运动状态,传递给物理引擎。控制系统与物理引擎相结合,完成对物体运动的全部控制。
  • 游戏策略系统
    我理解为一个AI击球手,它向控制系统发出控制命令。
    这一系统的功能也可由用户代替。

软件基本架构

原文地址:https://www.cnblogs.com/lvjw/p/6237311.html