整理report结构 创建list
This commit is contained in:
@@ -0,0 +1,110 @@
|
||||
# 项目开发阶段划分
|
||||
|
||||
本项目可以按开发过程拆分为 6 个阶段完成,符合“分阶段实现程序”的写法,也便于后续直接写入实验报告。
|
||||
|
||||
## 第一阶段:窗口创建与程序框架搭建
|
||||
|
||||
本阶段需要完成的内容:
|
||||
|
||||
- 创建 Windows 程序入口。
|
||||
- 注册窗口类并创建主窗口。
|
||||
- 建立消息循环和基础消息处理机制。
|
||||
- 完成程序启动、关闭、重绘等基础框架。
|
||||
- 为后续游戏逻辑和绘图模块提供运行环境。
|
||||
|
||||
本阶段目标:
|
||||
|
||||
- 程序能够成功启动。
|
||||
- 能显示游戏主窗口。
|
||||
- 窗口能正常响应关闭和刷新操作。
|
||||
|
||||
## 第二阶段:游戏区域与方块数据结构设计
|
||||
|
||||
本阶段需要完成的内容:
|
||||
|
||||
- 定义游戏区域的宽度、高度和网格大小。
|
||||
- 设计方块坐标结构和不同类型方块的数据表示方式。
|
||||
- 建立游戏地图数组,用于保存已落地方块状态。
|
||||
- 定义当前方块、下一方块、分数、暂停、结束标志等全局状态。
|
||||
- 准备颜色数据和基础常量。
|
||||
|
||||
本阶段目标:
|
||||
|
||||
- 程序内部具备完整的游戏状态表示能力。
|
||||
- 可以为后续方块运动和碰撞判断提供数据基础。
|
||||
|
||||
## 第三阶段:方块生成、移动与旋转功能
|
||||
|
||||
本阶段需要完成的内容:
|
||||
|
||||
- 实现新方块生成。
|
||||
- 实现方块自动下落。
|
||||
- 实现左移、右移操作。
|
||||
- 实现方块旋转。
|
||||
- 实现快速下落或直接落到底部的功能。
|
||||
- 保证键盘输入可以正确控制当前方块。
|
||||
|
||||
本阶段目标:
|
||||
|
||||
- 方块可以正常出现。
|
||||
- 玩家可以通过键盘控制方块移动和旋转。
|
||||
- 方块运动过程符合基本游戏规则。
|
||||
|
||||
## 第四阶段:碰撞检测与方块固定逻辑
|
||||
|
||||
本阶段需要完成的内容:
|
||||
|
||||
- 判断方块是否可以继续下落。
|
||||
- 判断方块左右移动时是否越界或与已有方块冲突。
|
||||
- 判断旋转后是否发生重叠或越界。
|
||||
- 当方块落到底部或接触已有方块时,将其固定到游戏区域中。
|
||||
- 实现游戏结束判定。
|
||||
|
||||
本阶段目标:
|
||||
|
||||
- 方块不会穿过边界。
|
||||
- 方块不会与已固定方块错误重叠。
|
||||
- 游戏在堆叠到顶部时能够正确结束。
|
||||
|
||||
## 第五阶段:消除逻辑与分数系统
|
||||
|
||||
本阶段需要完成的内容:
|
||||
|
||||
- 检测某一行是否已被填满。
|
||||
- 实现整行消除。
|
||||
- 在消除后更新上方方块数据。
|
||||
- 设计分数统计规则。
|
||||
- 在界面中显示当前分数或游戏状态。
|
||||
|
||||
本阶段目标:
|
||||
|
||||
- 玩家完成满行后可以正确消除。
|
||||
- 分数能够随着游戏进展更新。
|
||||
- 游戏具备基本反馈机制。
|
||||
|
||||
## 第六阶段:界面完善与创新功能扩展
|
||||
|
||||
本阶段需要完成的内容:
|
||||
|
||||
- 完善游戏界面绘制效果。
|
||||
- 显示下一个方块、暂停状态、结束提示等信息。
|
||||
- 加入资源文件,如图标、菜单、关于框。
|
||||
- 优化构建脚本和工程配置,确保项目可稳定运行。
|
||||
- 根据课程设计要求加入创新功能。
|
||||
|
||||
可选创新功能示例:
|
||||
|
||||
- 预览下一方块
|
||||
- 阴影落点提示
|
||||
- 暂停与继续
|
||||
- 重新开始
|
||||
- 难度提升
|
||||
- 背景图或界面美化
|
||||
- 音效或动画效果
|
||||
|
||||
本阶段目标:
|
||||
|
||||
- 程序界面更加完整。
|
||||
- 功能更加接近完整游戏。
|
||||
- 项目达到课程大作业展示要求。
|
||||
|
||||
Reference in New Issue
Block a user