资源描述:
《二d赛车游戏的设计与实现本科学位论文.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、计算机信息工程学院毕业设计说明书2D赛车游戏的设计与实现摘要随着电脑的普及,游戏已成为大多数年青人的主要休闲方式,赛车价格比较昂贵,而赛车游戏则可以让那些想玩赛车却没法玩的人体验一把。爱好赛车竞速游戏的玩家们以体验比赛中的刺激为乐趣,玩家唯一的真实目的就是“最快”。本设计所实现的赛车游戏是基于C语言设计开发的,所选用的游戏引擎是基于Directx8.0编写的。能进行赛车、赛道以及各种图片的绘制,实现各种游戏音效,获取键盘输入,单人游戏时,可与电脑控制的赛车竞速,多人游戏时可与其他玩家或电脑AI竞速。与其他
2、类似游戏相比,本设计所采用的碰撞检测算法,像边界矩形盒算法和颜色识别算法,不仅速度快,而且检测灵敏。多人游戏的实现是靠socket网络编程与多线程的联用,socket提供C/S模式下数据的可靠传输,多线程解决了socket等待问题,两者结合使得在局域网内的多人游戏运行比较流畅。关键词:2D,DirectX,赛车,游戏计算机信息工程学院毕业设计说明书DesignandImplementationof2DRacingGameAbstractWiththepopularityofcomputergameshas
3、becomeamajorleisureactivityformostyoungpeople,carsareexpensive,andracinggamesforthosewhowanttoplaycanplayracingwhohadnoopportunitytoexperienceone.Hobbycarracinggameplayerstoexperiencethegameforfunstimulation,playersonlyrealpurposeisthe"fastest."Thisdesign
4、isrealizedracinggamebasedontheClanguagedesignanddevelopment,thechoiceofthegameengineisbasedonDirectx8.0written.Capableofracing,trackanddrawvariouspictures,soundeffectstoachieveavarietyofgamestogetkeyboardinput,single-playergame,withcomputer-controlledcarr
5、acing,multiplayergameswithotherplayersorcomputerAIracing.Comparedwithothersimilargames,collisiondetectionalgorithmsusedinthedesign,liketheboundingrectangleboxalgorithmandcolorrecognitionalgorithm,notonlyfast,butalsodetectionsensitivity.Multiplayerisachiev
6、edbythesocketnetworkprogrammingandmulti-threadedMS,socketprovidesreliabledatatransmissionunderC/Smode,multi-threadedsocketwaitingtosolvetheproblem,acombinationthatmakestheLANmultiplayergamesrunmoresmooth.Keywords:2D,DirectX,racing,game计算机信息工程学院毕业设计说明书目录第一
7、章绪论11.1研究背景及意义11.2赛车游戏开发环境和语言11.3赛车游戏的主要功能11.4赛车游戏开发的主要步骤2第二章DIRECTX、游戏引擎和游戏结构32.1DirectX概述32.2游戏引擎32.2.1选用的游戏引擎结构42.3游戏结构52.4本章小结6第三章游戏逻辑83.1游戏主逻辑83.2单人游戏逻辑93.3多人游戏逻辑133.3.1多人游戏服务器端逻辑133.3.2多人游戏客户端逻辑153.4显示游戏胜利153.5本章小结16第四章赛车碰撞检测技术174.1边界矩形盒方法174.2颜色识别算
8、法194.3本章小结24第五章SOCKET网络通信实现多人游戏255.1Socket简介255.1.1什么是Socket2543计算机信息工程学院毕业设计说明书5.1.2WindowsSocket编程模型255.1.3游戏所使用的Socket模型315.2粘包问题325.2.1粘包出现的原因325.2.2粘包问题解决办法335.2.3关闭优化算法345.3多线程与Socket组合实现多人游戏345.3.1多线程的使用345.3