XNA微软官方模板:RolePlayingGame编程解读

(此文原作于2011年8月,有所删改)

前言

本次解读的是XNA Game Studio的一个微软官方模板——RolePlayingGame。

这个模板应用于2D的角色扮演游戏,平台对应Windows PC和XBOX 360,版本为XNA Framework 4.0,编程语言使用C# 4.0,集成开发环境为Visual Studio 2010。本文以Windows平台为主。

本人初学XNA,本文难免有错漏之处,仅供学习交流。

解决方案与项目的关系

解决方案的属性(设置)

启动项目:单启动项目:RolePlayingGameWindows

配置:活动(Debug)

平台:活动(Mixed Platforms)

项目的属性(设置):RolePlayingGameWindows.csproj

XNA Game Studio - Game profile:Reach或HiDef均可

XNA Game Studio - Game thumbnail:GameThumbnail.png

应用程序–程序集名称:RolePlayingGame

应用程序–默认命名空间:RolePlaying

应用程序–目标框架:.NET Framework 4 Client Profile

应用程序–输出类型:Windows应用程序

应用程序–资源–图标:Game.ico

生成–条件编译符号:WINDOWS

生成–定义DEBUG常量:勾选

生成–定义TRACE常量:勾选

项目的属性(设置):RolePlayingGameProcessors.csproj

应用程序–程序集名称:RolePlayingGameProcessors

应用程序–默认命名空间:RolePlayingGameProcessors

应用程序–目标框架:.NET Framework 4

应用程序–输出类型:类库

生成–定义DEBUG常量:勾选

生成–定义TRACE常量:勾选

项目的属性(设置):RolePlayingGameDataWindows.csproj

XNA Game Studio - Game profile:Reach或HiDef均可

应用程序–程序集名称:RolePlayingGameDataWindows

应用程序–默认命名空间:RolePlayingGameData

应用程序–目标框架:.NET Framework 4 Client Profile

应用程序–输出类型:类库

生成–条件编译符号:WINDOWS

生成–定义DEBUG常量:勾选

生成–定义TRACE常量:勾选

功能

音频管理AudioManager,屏幕管理ScreenManager,输入管理InputManager,(图层)块引擎TileEngine,会话状态Session,战斗引擎CombatEngine,队伍Party,字体Fonts,物品Gear,内容处理扩展库RolePlayingGameProcessors,数据RolePlayingGameData等。

运行流程

主循环流程

主要的类图

类及其成员

小结

在使用了该模板后发现,该模板在架构上做得很不错,扩展性很好。

使用该模板进行开发时,改动比较大的地方有:

1.TileEngine的移动方式;

2.CombatEngine的战斗形式,改变原有的经典回合制;

3.各种Screen的调整。

新增的内容主要有:

1.文本管理,支持大量文本以及多种语言;

2.GameSettings项目,将游戏的一些基本设置集中到该项目中,方便管理。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容