摘要:
我在silverlight游戏设计(一)主程序加载器这篇文章中写的那个加载器中其实已经包含了一个下载器。不过本篇需要的是一个在游戏运行时动态执行的下载器,这两者有什么区别呢?一方面在于前篇的那个下载器是串行下载所有文件,而对于一个正在运行的网游,因为我们对大部分资源(比如图片、脚本等)采取动态加载的策略,所以它随时都有可能去请求下载,也就是需要同时进行更多的下载任务;二是我们这个下载器与接下来资源... 阅读全文
阅读排行榜
silverlight游戏设计(四)角色/精灵篇之 -- 精灵的设计
2010-12-26 19:06 by 姜 萌@cnblogs, 1513 阅读, 收藏,
摘要:
精灵的呈现基础 silverlight的那套api并不是一个为游戏设计的,你找不到现成的”精灵”相关的类。 最简单的精灵用一个Image就可以充当,但游戏中总是存在各式各样的精灵,不同精灵又有不同的逻辑,为了方便设计我们有必要定义一些接口。 呈现器接口—IPresenter IPresenterCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--namespaceSopaco.Silverlight.GameFramewrok.Sprite{// 阅读全文
What is “Mock You”系列之(四):自定义Mock对象行为 & MockFactory
2010-02-21 17:16 by 姜 萌@cnblogs, 1417 阅读, 收藏,
摘要:
何谓Mock对象行为? 由于模拟出的对象终究是用来“糊弄人”的。我们在UnitTest中不一定会将一个对象的所有方法都Mock掉。而且如果一个Mock对象中有还有用接口/抽象类表示的对象,那么我们不一定就要将它们一起Mock掉。Moq为我们提供了自定义配置这些细节规则的办法。 MockBehavior Moq有个枚举类型MockBehavior,有三个值Strict,Loo... 阅读全文
silverlight游戏设计(二)资源管理篇(下)--资源的状态通知、管理与缓存
2010-12-24 19:18 by 姜 萌@cnblogs, 1262 阅读, 收藏,
摘要:
在上篇中,我们实现了一个带有池化、并发连接限制能力的资源下载器,虽然这个下载器能够使我们的游戏动态加载资源并在加载完毕/失败后调用回调方法。但是还是缺乏一些智能。比如我要加载一个game_role_petegg.zip的资源包,如我们有需求:1.对已经下载过的资源不再重复下载。2.下载过的资源要缓存,一方面存在内存中,一方面存在isolatedstorage中。实现这些功能会极大的提高用户体验,所我们有必要设计一个带有缓存控制能力的资源管理器。复用已有的DownloadDelegater搞开发的嘛,不可能每一个需求都单独写一片代码,这要将对象的职责分离清楚,复用还是很容易的。我们定义需求接口: 阅读全文
silverlight游戏设计(七)--项目组织
2010-12-24 16:30 by 姜 萌@cnblogs, 1161 阅读, 收藏,
摘要:
组织项目结构总揽 完成一个好的项目就像盖房子,光有一流的工人师傅还不够,还需要将他合理分工,这样才能确保工程的有序进行,各负各的职责。一起的一个项目大致是这样的结构: GameLibrary:作为整个游戏所需要的基础库和游戏引擎。当然实际中的会包括许多library。 GameBiz:游戏的逻辑,并作为游戏执行入口,它向UI注册事件,通过基础库和游戏引擎构建业务逻辑。引用GameLibrary等基础库和GameUI。 GameUI:只引用silverlight本身必须的库以及项目的自定义控件库 GameLoader:游戏的引导器或者叫做加载器,参见之前的文章:silverlight游戏 阅读全文
浙公网安备 33010602011771号