




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1基于windows平台DirectX视频加速技术的连连看游戏详细设计总页数 37 正文 34 附录 1 生效日期 2014-3-11编制 批准南昌航空大学东软班 详细设计报告 版本:0.1.02修 改 履 历修改编号 日期 修改人 版本号 修改内容1 0.1.0 初始做成南昌航空大学东软班 详细设计报告 版本:0.1.03目 录1 文档概述 .41.1 文档目的和范围 .41.2 术语/缩略语 .41.3 参考文档 .42 处理 .42.1 模块数据结构定义 .42.1.1 全局变量定义 .42.2 模块功能实现 .52.2.1 GameWord 类成员函数.52.2.2 InputSystem 类成员函数.102.2.3 UiSystem 类成员函数.122.2.4 SceneSystem 类成员函数.182.2.5 RenderSystem 类成员函数.292.2.6 Texture 类成员函数.302.2.7 Sprite 类成员函数.322.2.8 Check 类成员函数.33南昌航空大学东软班 详细设计报告 版本:0.1.041 文档概述1.1 文档目的和范围此文档是对基于 windows 平台 DirectX 视频加速技术的连连看游戏详细设计描述,主要是描述了本程序接口函数和内部接口函数以及内部函数的定义、流程图和构成图以及测试项目的记述。1.2 术语 /缩略语序号 术语/缩略语 说明1 DirectX 视频加速器技术1.3 参考文档2 处理2.1 模块数据结构定义#define GAME_SCREENWIDTH 800 窗口宽#define GAME_SCREENHEIGHT 600 窗口高#define DeleteObj(p)if (p != NULL) delete p;p = NULL; #define ReleaseCOM(p) if (p != NULL) p-Release();p= NULL; 释放空间#define FIRST 1 表示主界面第一个按钮id南昌航空大学东软班 详细设计报告 版本:0.1.05#define SECOND 2 表示主界面第二个按钮id#define THREE 3 表示主界面第三个按钮id#define EXIT 4 表示主界面第四个按钮 id#define BLANK_GRID 0 2.2 模块功能实现2.2.1GameWord 类成员函数2.2.1.1 MsgProc函数名 MsgProc()文件名 GameWord.cpp功能概要 窗口过程函数记述形式 LRESULT CALLBACK MsgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)参数 HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam类型 变量名 I/O 说明HWND hWnd - 窗口句柄UINT WPARAM _ 消息 ID类型 LRESULT 说明返回值值详细说明 鼠标按关闭窗口键,窗口将关闭。 按 ESC 键窗口关闭使用注意事项南昌航空大学东软班 详细设计报告 版本:0.1.06【函数处理流程】流程图 12.2.1.2 Run函数名 Run()文件名 GameWord.cpp功能概要 消息循环记述形式 VOID GameWord:Run(VOID)参数 VOID类型 变量名 I/O 说明南昌航空大学东软班 详细设计报告 版本:0.1.07Void - - -类型 VOID 说明返回值值详细说明消息循环,调用一个函数在空闲处理期间显示场景使用注意事项【函数处理流程】流程图 2南昌航空大学东软班 详细设计报告 版本:0.1.082.2.1.3 GameUpdate函数名 GameUpdate()文件名 GameWord.cpp功能概要 更新窗口记述形式 BOOL GameWord:GameUpdate(VOID)参数类型 变量名 I/O 说明Void - - -类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明根据对窗口的操作对窗口进行更新使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.09流程图 32.2.1.4 GameRender函数名 GameRender ()文件名 GameWord.cpp功能概要 Direct 渲染和显示场景记述形式 BOOL GameWord:GameRender(VOID)参数 char *err类型 变量名 I/O 说明Void - -南昌航空大学东软班 详细设计报告 版本:0.1.010类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明该函数调用所有渲染函数和显示函数使用注意事项【函数处理流程】流程图 4南昌航空大学东软班 详细设计报告 版本:0.1.0112.2.2InputSystem 类成员函数2.2.2.1 Initalize函数名 Initialize ()文件名 InputSystem.cpp功能概要 初始化鼠标设备记述形式 BOOL InputSystem:Initialize()参数类型 变量名 I/O 说明Void - -类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明该函数用于创建一个 DirectInput8 对象,创建一个 DirectInput 设备,设置数据格式,设置协作级使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.012开始创建D i r e c t I n p u t 8对象 是否成功创建 D i r e c t I np u t 设备 是否成功Y设置数据格式是否成功Y结束S e t C o o p e r a t i v eL e v e l ( m _ h w n d , D I S C L _ N O N E X C L US I V E | D I S C L _ F O RE G R O U N D )Y流程图 52.2.3UiSystem 类成员函数2.2.3.1InitResource函数名 InitResource()文件名 ManagerSystem.cpp功能概要 设置游戏主界面的数据记述形式 BOOL UiSystem:InitResource(RenderSystem* renderSystem)参数 RenderSystem* renderSystem类型 变量名 I/O 说明南昌航空大学东软班 详细设计报告 版本:0.1.013RenderSystem renderSystem - DirectX 类的对象类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明创建纹理和精灵,设置原图片和目标图片的坐标,对按钮设置矩形框坐标使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.014流程图 62.2.3.2 Update函数名 Update()文件名 ManagerSystem.cpp南昌航空大学东软班 详细设计报告 版本:0.1.015功能概要 当点击按钮时记录按钮编号 m_id记述形式 BOOL UiSystem:Update(VOID) 参数类型 变量名 I/O 说明-类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明当点击按钮时记录按钮编号 m_id使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.016流程图 72.2.3.3 Render函数名 Render()南昌航空大学东软班 详细设计报告 版本:0.1.017文件名 ManagerSystem.cpp功能概要 显示游戏主界面和一系列操作后画面记述形式 BOOL UiSystem:Render(VOID)参数类型 变量名 I/O 说明-类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明该函数主要调用精灵显示函数来显示界面,当光标停留在按钮上时将调用函数改变按钮图片和光标形状使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.018开始m _ i n p u t S y s t e m - G e t M o u s e P o s ( )i t e r = m _ b u t t o n .b e g i n ( )i t e r ! = m _ b u t t o n . e n d( )i t e r + +T e s t B u t t o n ( po i n t )t e m p V a l = = 0YNt e m p V a l ! = 0S e t S r c P o s ( t e x tu r e S r c P o s . x , t ex t u r e S r c P o s . y - 3 6 )YS e t S r c P o s ( t e x tu r e S r c P o s . x , t ex t u r e S r c P o s . y + 3 6 )Y确定光标的形状N R e n d e r ( i t e r - s e c o n d - G e t T e x t u r e I n fo ( ) )N结束流程图 8南昌航空大学东软班 详细设计报告 版本:0.1.0192.2.4SceneSystem 类成员函数2.2.4.1 InitResource函数名 InitResource()文件名 ManagerSystem.cpp功能概要 对游戏界面的数据设置记述形式 BOOL SceneSystem:InitResource(RenderSystem* renderSystem,std:string fileBackName,std:string mainName,UINT step) 参数 RenderSystem* renderSystem,std:string fileBackName,std:string mainName,UINT step类型 变量名 I/O 说明RenderSystem* renderSystem - DirectX 类的对象std:string fileBackName - 背景图片的路径std:string mainName - 游戏方块图片路径UINT step - 每个游戏方块的变化个数类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明该函数主要调用设置原图片位置和目标图片位置,还有目标位置的矩形框坐标。使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.020流程图 92.2.4.2Random函数名 Random()文件名 ManagerSystem.cpp功能概要 设置游戏方块随机分布在游戏界面上的数据南昌航空大学东软班 详细设计报告 版本:0.1.021记述形式 std:vector SceneSystem:Random(UINT length)参数 UINT length类型 变量名 I/O 说明UINT Lengtn - 游戏方块的总数类型 std:vector 说明tempV 存储游戏方块在原图片的位置返回值值详细说明调用该函数将会得到游戏界面中游戏方块的图片在原图片中的位置的一个容器使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.022流程图 102.2.4.3Update函数名 Update()文件名 ManagerSystem.cpp南昌航空大学东软班 详细设计报告 版本:0.1.023功能概要 游戏进行时的一些数据判断记述形式 BOOL SceneSystem:Update(VOID)参数类型 变量名 I/O 说明-类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明该函数主要是在游戏进行时对方块的选取是否正确使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.024流程图 112.2.4.4Render函数名 Render()文件名 ManagerSystem.cpp功能概要 游戏场景的显示记述形式 BOOL SceneSystem:Render(VOID) 南昌航空大学东软班 详细设计报告 版本:0.1.025参数 UINT length类型 变量名 I/O 说明-类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明调用该函数主要是对游戏场景在不同情况下的显示使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.026流程图 122.2.4.5 GetArrayPos函数名 GetArrayPos()文件名 ManagerSystem.cpp功能概要 获取玩家选定的方块 ID南昌航空大学东软班 详细设计报告 版本:0.1.027记述形式 UINT SceneSystem:GetArrayPos(int x, int y) 参数 int x, int y类型 变量名 I/O 说明int x - 点击方块的 x 坐标int y 点击方块的 y 坐标类型 UINT 说明val 获取到方块的 ID返回值值m_num 没有获取到新的 ID 返回原先的详细说明调用该函数主要是获取玩家正确点击方块的 ID 如果玩家点击的位置错误将原来的 ID 返回使用注意事项【函数处理流程】流程图 13南昌航空大学东软班 详细设计报告 版本:0.1.0282.2.4.6CheckLink函数名 CheckLink()文件名 ManagerSystem.cpp功能概要 判断选取的两个方块是否可以消除记述形式 BOOL SceneSystem:CheckLink(UINT first,UINT second)参数 UINT first,UINT second类型 变量名 I/O 说明UINT first - 选取的第一个方块UINT second 选取的第二个方块类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明调用该函数主要是通过调用函数来判断选取的两个方块是否可以被消除使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.029流程图 142.2.5RenderSystem 类成员函数2.2.5.1InitializeDevice函数名 InitializeDevice()文件名 RenderSystem.cpp功能概要 Direct3D 初始化记述形式 BOOL RenderSystem:InitializeDevice(VOID) 参数类型 变量名 I/O 说明-类型 BOOL 说明返回值值 TRUE 成功返回 TURE南昌航空大学东软班 详细设计报告 版本:0.1.030FALSE 反之返回 FALSE详细说明Direct3d 初始化使用注意事项【函数处理流程】流程图 152.2.6Texture 类成员函数2.2.6.1LoadTexture函数名 LoadTexture()文件名 ResourceFactory.cpp南昌航空大学东软班 详细设计报告 版本:0.1.031功能概要 加载纹理记述形式 BOOL Texture:LoadTexture(std:string fileName)参数 std:string fileName类型 变量名 I/O 说明std:string fileName - 图片路径类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明调用该函数加载纹理使用注意事项【函数处理流程】流程图 16南昌航空大学东软班 详细设计报告 版本:0.1.0322.2.7Sprite 类成员函数2.2.7.1Render函数名 Render()文件名 ResourceFactory.cpp功能概要 显示精灵记述形式 BOOL Sprite:Render(TextureInfo info, DWORD color)参数 TextureInfo info, DWORD color类型 变量名 I/O 说明TextureInfo info 原图片和目标的位置DWORD color-颜色类型 BOOL 说明TRUE 成功返回 TURE返回值值FALSE 反之返回 FALSE详细说明调用该函数将加载完纹理和设置好位置的图片显示到屏幕上使用注意事项【函数处理流程】南昌航空大学东软班 详细设计报告 版本:0.1.033流程图 172.2.8Check 类成员函数2.2.8.1DirecLink函数名 DirectLink()文件名 Scene.cpp功能概要 连连看算法,在同一行或在同一列的情况记述形式 BOOL Check:DirectLink(UINT first,UINT second) 参数 UINT first,UINT second南昌航空大学东软班 详细设计报告 版本:0.1.034类型 变量名 I/O 说明UINT first 选取的第一个方块 IDUINT second-选
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司每月娱乐活动方案
- 公司组织义工活动方案
- 公司组建舞蹈队活动方案
- 公司研学策划方案
- 公司组织烧烤策划方案
- 公司派对活动方案
- 公司节后收心会活动方案
- 2025年心理健康教育辅导考试试题及答案
- 滨海生态补偿机制-洞察及研究
- 2025年食品科学与工程专业考试试卷及答案
- 第四版(2025)国际压力性损伤溃疡预防和治疗临床指南解读
- 山东省2024年艺术类专科批美术与设计类第1次志愿投档情况表(公布)
- 《道德经》的智慧启示智慧树知到期末考试答案2024年
- 工作作风方面和问题和不足(宗旨意识和群众感情淡漠脱离群众、脱离实际调查研究不经常、不深入)15篇
- 2023年无锡宜兴市小升初英语考试模拟试题及答案解析
- 沃尔玛收货规定
- 小学道德与法治人教五年级上册(统编)第三单元我们的国土我们的家园-爱国教案
- GB∕T 2518-2019 连续热镀锌和锌合金镀层钢板及钢带
- 土地项目测算表_模板
- 教育培训机构辅导老师月度绩效考核表(KPI)
- 立式水轮机组轴线调整及导轴承的间隙分配ppt课件
评论
0/150
提交评论