中山大学硕士学位论文一个基于Unity3d游戏引擎的体感游戏研究与实现中山大学硕士学位论文一个基于Unity3d游戏引擎的体感游戏研究与实现专业名称:软件工程作者姓名:吴志达指导老师:陈有青二○一二年六月论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。学位论文作者签名:日期:年月日一个基于Unity3d游戏引擎的体感游戏研究与实现摘要I论文题目:一个基于Unity3d游戏引擎的体感游戏研究与实现专业:软件工程硕士生:吴志达指导教师:陈有青副教授摘要近年来,游戏的形式越来越丰富,作为其中之一的体感游戏逐渐受到人们的关注。体感游戏一出现就颠覆了游戏单调的操作,使得人机互动的模式展现得更完美。微软推出的XBOX360体感外设Kinect,已经在家用机上取得巨大的成功。玩家在玩游戏时不再需要外部控制器的支持,Kinect可以依靠摄像头捕捉玩家在三维空间的运动,这大大简化了游戏的操作。当前,体感游戏还没能够在投币游戏机和家庭游戏机中推广,原因在于体感游戏在这些平台上还没有丰富的游戏产品,绝大部分的体感游戏都依赖于XBOX360主机。微软在2012年初发布了供PC平台商用的开发工具包,不少开发者已经使用OpenNI为Kinect提供了驱动支持,但是现在还没有出现成熟的游戏。为了解决这些问题,本文使用Unity3d开发一款使用Kinect外设的体感游戏,为使用Kinect开发体感游戏的开发者提供参考。在基础研究部分,阐述了使用Unity3d开发游戏需要的设计方法和美术效果;探讨了游戏设计的知识要点;类比了体感游戏不同的实现方法,得出他们的优劣。在实现部分,结合Unity3d引擎设计了游戏的主要框架结构,设计了不同游戏模块的具体实现;研究了游戏高级图形用户界面的实现、游戏补间动画的内部实现;对传统游戏的开发方法进行了改进,并针对体感游戏提出了不同的开发方法;最后把Kinect和Unity3d完美地结合起来,同时支持OpenNI和KinectSDK。本文设计和实现了一个体感游戏,经过测试,使用Unity3d结合Kinect实现体感游戏是可行的,同时表明使用其他设备实现体感游戏也是可行的,本文可以为希望使用Unity3d进行体感游戏开发的开发者提供实例参考。关键词:Kinect、体感游戏、Unity3d、游戏系统、游戏引擎一个基于Unity3d游戏引擎的体感游戏研究与实现AbstractIIITitle:ResearchandImplementationofaSomaticGameBasedontheUnity3dGameEngineMajor:SoftwareEngineeringName:ZhidaWUSupervisor:Prof.ChenyouQingAbstractInrecentyears,theformofplayinggamesbecamemoreandmorerich.PeoplepaymoreattentiontotheSomaticgamegradually.Somaticgameappearedtosubvertthegame’smonotonousoperations,makinghuman-computerinteractionconceptsbecomemoreperfect.Microsoft'sXBOX360SomaticperipheralKinect,hasbeenahugesuccesssinceitreleased.Theplayersplayingthegamenolongerneedthesupportofanexternalcontroller.Kinectcanrelyonthecameratocapturethemovementofplayersinthethree-dimensionalspace,whichgreatlysimplifiestheoperationofthegame.Somaticgamehavenotbeenabletopromoteincoin-operatedgamesandhomeconsolesbecauseoftheSomaticgamesontheseplatformsdonothaveawealthofgameproducts,mostoftheSomaticgamearedependentontheXBOX360console.Microsoftinearly2012releasetheKinectdevelopmentkitforthePCplatform,however,thetoolkitisnotyetcomplete.ManydevelopersarealreadyusingOpenNItoprovidedriversupportfortheKinect,butthishasnotyetbeenappliedtoamaturegame.Tosolvetheproblemsmentionedabove,thispaperuseunitytodevelopaSomaticgameusingtheKinectsensor.ThispaperfirstdiscussesthebasicmethodstodesignaSomaticgameandthearteffectsusedinthesomaticgame.Thearticleexplainsthebasicknowledgeofkeypointsofthegamedesign,andthewaysonhowtocombineUnity3dtocarryoutonthesepoints.Inthespecificgame,discussthemoduledesignofthesomaticgame,anduseanalogyanalysismethodtodrawtheirstrengthsandweaknesses.Inthespecificmoduledesignpart,combinesUnity3d一个基于Unity3d游戏引擎的体感游戏研究与实现AbstractIVenginetodesigntheframeworkofthegame,andachievethebasicfunctionalityofthegame,includingthephysicssystem,particlesystemandtheanimationsystem.ThissomaticgameuseOpenNIasaframeworktodrivetheKinectsensor.However,italsosupporttheMicrosoftKinectSDK.Thispaperinvestigatesthepossibilitytomakeitrunnable.Thispaperdiscussestheprocesstomakeasomaticgamebasedonunity3d.Thegameusesthekinectsensorasaninputdevice,whichcanbedrivenbyOpenNIorKinectSDK.Thispaperputforwardviewsonthegame'sadvancedfeaturesmoduleandbringforwardthewaytomakeunity3dtouseKinectasasensorforplayinggame.Mostimportantly,thispaperprovidesareferencefordeveloperswhowanttouseUnity3dtodevelopsomaticgames.Keywords:Kinect,somaticgame,Unity3d,gamesystem,gameengine一个基于Unity3d游戏引擎的体感游戏研究与实现目录V目录摘要.....................................................................................................................IAbstract.................................................................................................................III目录....................................................................................................................V第一章绪论...........................................................................................................11.1课题背景和研究意义.................................................................................11.2项目背景介绍............................................................................................21.3论文主要工作............................................................................................31.4论文的组织结构........................................................................................4第二章开发游戏所需的知识系统.........................................................................72.1游戏策划的重要性.....................................................................................72.2制作游戏使用的程序技术........................................................................112.3提升游戏的美术效果...............................................................................172.4游戏音效..................................................................................................29第三章Unity3d体感游戏设计............................................................................313.1框架结构..................................................................................................313.2基础功能系统.............................