- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
200905070201刘宇-游戏程序设计课程设计
游戏程序设计课程设计
学院:信息科学与技术学院
专业:软件工程
班级:09级软件(二)班
姓名:刘宇
学号:200905070201
摘要
娱乐一直是计算机的一大应用。在中国,随着网络的发展,休闲化游戏拥有了大量的玩家,且逐渐发展出棋牌类、音乐类、竞速类、体育类、格斗类和益智类等多种游戏类型。 最常见的竞速类游戏就是,玩家可从疾驰的速度中获得刺激感,而从高超技巧带来的流畅性操作中还可获取一定的满足感。
当前随着计算机的深入普及,越来越多的人有了个人电脑,人们运用计算机完成许多重要的工作,计算机在人们的生活中变得越来越重要。随着计算机的应用和发展计算机已经不单纯是一个工作工具,人们越来越重视计算机的娱乐性。今年来游戏产业规模持续成长,全球每年游戏业总产值已经突破200亿美金,远远超越好莱坞电影产业以及音乐娱乐事业,而成为目前娱乐事业的最大主流。不过游戏产业光鲜亮丽的背后却隐含着高风险、高成本的危机,显示游戏产业慢慢步入微利时代。
在这种趋势下各种小型的低成本的游戏软件应运而生。这些小游戏都以益智和娱乐为目的,不仅给紧张工作的人们以轻松,还可以让人们的大脑得到开发。
关于本课题
使用游戏软件自然是为了满足人们对娱乐性的要求,本次课程设计是采用3D设计,对系统配置有一定的要求。
作为本系统的开发工具,Microsoft Visual C++成为首选。它具有可视化的编程界面、详细的提示、以及完善的帮助文档,使得软件开发人员感到无比的亲切感。另外,还需要配置OpenGL。
一、游戏的总体分析与设计
1.1游戏的功能简介
通过仿真游戏地图和游戏场景,完成本系统后,能通过W、A、D、S键控制赛车行驶方向。
1.2系统设计
1.2.1模块与流程规划
1.2.2系统流程图
初始化:这部分执行与其他任何程序类似的标准操作,如内存分配,资源获取,从磁盘加载数据等;
进入游戏循环:这部分进入游戏循环,用户将在这里不断地执行动作,知道退出主循环为止;
接收玩家输入:这部分处理玩家输入,或将其存储到缓冲区,供游戏逻辑使用;
执行游戏逻辑:这部分包含游戏代码的主体部分,将执行人工智能,物理系
统和通用游戏逻辑,并根据结果在屏幕上绘制下一帧;
图形渲染:在这一部分中,讲根据玩家输入以及逻辑的执行结果,生成下一个游戏动画帧。
关闭:退出游戏;
1.2.3各类的设计
1)GGameMap
方法:(1)载入位图高程
static bool loadHightMap(const char *fileName, int **ymap, int w, int h);
(2)构造地图单例对象
static GGameMap * create();
(3)释放地图单例对象
static void destroy();
(4)得到地图单例对象指针
static GGameMap * getCurrent()
(5)检测指定点与赛道是否发生碰撞
bool isCollision(double x, double z);
(6)清空数据结构, 释放资源
void clear();
(7)载入地图
bool load(const char *fileName, GTreeBillboard *pTreeBillboard);
Gpool
方法:(1)池塘构造函数, 传入池塘地面纹理和水波纹理
GPool(GTexture2D *pLandTex, GTexture2D *pWaterTex);
(2)绘制池塘
virtual void draw();
GSkyDome
方法:(1)初始化
GSkyDome(GTexture2D *pTex, double r=1000);
(2)绘制
virtual void draw();
GTree
方法:(1)从文件流中载入树木
bool load(FILE *fp);
(2)根据视点坐标更新旋转角度和距离
void update(double cx, double cz);
(3)绘制树木
virtual void draw();
(4)根据视点到树木的距离反比较树木对象指针
int gCompareTreePtr(const void *ptr1, const void *ptr2);
GCurvedRoad
方法:(1)得到旋转角
double getRotAngle()
(2)设置旋转角
void setRotAngle(double rot)
(3)绘制直赛道(调用前, 请先设置正确的旋转角度和顺时针标志)
virtual void draw();
GCar
方法:(1)判断是否刹车
bool isBreak()
(2)设置状态为刹车
您可能关注的文档
- 07-高速铁路设计规范条文(桥梁).doc
- 08513125_王宇喆_论文.doc
- 08级英语教育 论文.doc
- 08计科数据结构课程设计题目(.26).doc
- 08级单片机课程设计.doc
- 09级毕业设计任务书(曾燕2011).doc
- 09-高速铁路设计规范条文(9轨道).doc
- 1.论文发表:2012年全国各地高考成绩查询时间和查询方式.doc
- 09软工计算机网络安全课程论文.doc
- 100140_水泵性能综合测试实验台设计说明书.doc
- 2025年无人机低空医疗物资投放社会效益报告.docx
- 2025年再生塑料行业包装回收利用产业链重构研究.docx
- 《AI眼镜周边产品市场机遇:2025年终端销售与需求增长洞察》.docx
- 2025年坚果加工行业深加工技术突破与市场拓展策略报告.docx
- 2025年通信芯片行业技术竞争与未来趋势报告.docx
- 《2025年生鲜电商配送冷链事故分析与预防措施》.docx
- 《商业航天融资新趋势2025民营卫星企业资本涌入估值分析市场动态》.docx
- 2025年能源绿色健康行业创新技术与市场应用报告.docx
- 2025年无人机低空医疗救援通信方案分析报告.docx
- 2025年烹饪机器人行业市场集中度分析报告.docx
最近下载
- 中国马克思主义与当代 2024版 教材课后思考题答案.docx
- 人工智能推动医学研究的创新突破.pptx VIP
- 玄隐遗密(含黄帝内经).pptx VIP
- 《社会调查研究与方法》期末复习考试题库(带答案).docx VIP
- 创业基础(暨南)中国大学MOOC慕课 章节测验期末考试答案(期末考试题目从章节测验中选出,题目没对上,可以在章节测验中查找).docx VIP
- 消防中级维保考试题库2000题.pdf
- 眼的解剖与生理.ppt VIP
- 上汽荣威R550维修手册1_描述与运作 ——原厂 2009 390 页 pdf.pdf VIP
- 学习华为:以客户为中心的营销体系.pptx VIP
- 家长会心得体会五年级简短9篇.docx VIP
原创力文档


文档评论(0)