基于XNA图文演示系统设计与应用.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于XNA图文演示系统设计与应用

基于XNA图文演示系统设计与应用   摘要:分析了通用的演示系统缺少互动性和美观性的现状,提出了基于XNA游戏平台的演示系统。该演示系统使用了状态机机制来实现区分阶段,实现游戏平台内的桌面逻辑块,又为页面设计了常用的页面元素及其简单动画,然后内置了40种页面过渡效果,最后实现了一个系统外的内容录入和结构编排系统,再在演示系统内设计了一个控制台,实现页面微调。实践表明,该系统具有一定的通用性和灵活性,可用于多数场合的演示。   关键词:XNA;演示系统;状态机;页面元素;过渡效果;内容录入;控制台   中图分类号:TP319 文献标识码:A 文章编号:1009-3044(2013)24-5524-04   当前,电脑已经非常普及,在此基础上的多媒体技术更是应用到了生活的各个方面。在进行授课、演讲时,许多人都会利用电脑软件播放一些图片、音频、视频等,以增加演说的效果[1]。最常用的软件是微软的PowerPoint及其兼容产品[2],将要演示的内容以一张张幻灯片的形式组织起来,编辑的时候可直接在幻灯片上进行编辑。PowerPoint方便易用,并且具有丰富的过渡特效和图文出现特效,使演说过程富含动态效果。然而,如果想使效果更复杂一点,PowerPoint就感到比较吃力了。此外还有Prezi[3]和VHCapture[4]等通用演示软件,以及演示算法的专用演示软件[5-8]和其它领域的专用演示软件[9],同样在互动性上支持得不够。   在多媒体展示领域,游戏在互动性和画面效果方面具有天然的优势,可以比PowerPoint等软件做得更好。李悦乔尝试了在RPGMaker游戏引擎的支持下演示计算机语言的思想,取得了一定的成果[10]。该文将利用XNA游戏平台,实现一个有丰富的动画效果的图文演示系统,为演说过程提供更丰富、更灵活的动画支持。   XNA是微软旗下的游戏平台,它支持Windows、Xbox、WinPhone上的游戏开发,而且可以轻易将游戏从一个平台移植到另外两个平台,因此开发出来的演示系统可以方便地编译成PC版本、WinPhone手机版本、Windows平板电脑版本等。   1 状态机结构   XNA主架构由两个循环组成,一个是逻辑循环,另一个是绘图循环。我们都知道,计算机应用程序或者游戏程序的结构,实质上是一个无限循环。一般游戏引擎都将逻辑和绘图工作放在一个帧循环中,这样容易造成逻辑和绘图的混淆。XNA的两个独立循环的结构不但结构清晰,也不会因为程序员的疏忽导致因语句先后顺序而引发的潜在Bug的出现。   对于稍微大型的程序来说,将所有内容写在一个逻辑循环中也是很麻烦的。参照计算机体系结构中的“状态机”的概念,这个系统将整个过程分成许多个状态,每个状态的逻辑结构应该尽可能简单,每个时刻系统处于且仅处于一种状态当中。设立有限状态机来管理各个状态,它在系统一开始时就运行,在每一次逻辑更新时检查是否需要切换状态以及如何切换状态,它随着系统的退出而结束。这样,在逻辑更新中几乎只有常规性、通用性的逻辑代码,而具体代码可以分散到各个状态中。这样的结构可以保证系统的灵活性。当状态数量比较多的时候,需要设立状态组来对状态进行分类,状态组中也可以包含其它状态组,但每个状态/状态组只存在于一个状态组之中。状态与状态组的关系类似于Windows系统中的文件与文件夹的关系。   具体实现的时候,将系统的开始画面和每个页面都定义为一个状态组,每个状态组有三个状态:进入、维持、退出。“进入”和“退出”状态是用于画面过渡的,一般只维持零点几秒到1秒,而“维持”状态用于长期显示一个页面,该页面中有文字、图片、音乐、视频的播放,也有互动元素的实现。属于画面过渡阶段的进入和退出状态是比较固定的一类状态,可变的元素主要是进入或退出的时间和过渡方式,因此再设置一种从基本状态派生出来的“演示状态”,它默认不接受互动,用户可以设置它的演示时长和过渡方式。进入状态和退出状态都是属于演示状态。   2 页面内容   作为演示系统,最主要的是演示功能,演示的内容主要包括图片信息、文字信息、视频、以及过程信息。同一类的内容通常都在一个画面当中,这里称为页面。如前所述,与每个页面相关的状态有三个:进入状态、维持状态和退出状态,它们组成一个状态组。   页面的内容丰富多变,如果针对每次演示的内容而在代码中实现它,无疑能最大程度地实现灵活性,能具备最丰富的效果,但是却非常麻烦,因此必须对每个页面的内容进行标准化限制。在这个系统里,每个页面只支持文字、图片和视频信息,系统里用“页面元素”把它们显示出来。显然,页面元素分成三类,分别是文字元素、图片元素和视频元素。   2.1 页面元素的共同属性   只要文字的字体大小和内容确定了,它就有了确定大小的包围框;

文档评论(0)

189****7685 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档