自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(159)
  • 收藏
  • 关注

原创 Silverlight游戏设计(Game Design):(六)场景编辑器之开源畅想

    所有的游戏设计辅助工具都是为了提高游戏开发效率而出现的,Silverlight-2D游戏场景编辑器(QXSceneEditor)同样也不例外,虽然它不比《魔兽》、《星际》、《帝国》等大作的地图编辑器拥有强大到甚至可以通过“换肤”直接创造出一款新游戏;但是大家可以通过它,配合上前几节讲述的游戏架设方式几乎能搭建任意一款2D游戏图形框架。无论是RPG(角色扮演)、SLG(策略)、RTS(即时战

2010-03-09 17:38:00 5277 18

原创 Silverlight游戏设计(Game Design):(五)面向对象的思想塑造游戏对象

传说,面向对象的开发模式最初是因为程序员偷懒而不小心诞生的。发展至今,人们从最初的热忠于讨论某某语言是否足够面向对象到现在开始更广泛的关注面向对象的思想而不是具体内容。面向对象的思想其实并不深奥,它存在的目的只有一个:让程序开发更贴近我们的现实世界。还记得猫、猫叫;狗、狗吃东西吗?无数的程序员都喜欢将此类似的情形设计当作面向对象最好的例子。是的,非常生动且形象;但实际运用中你是否能真正做到举一

2010-03-08 21:01:00 2445 3

原创 Silverlight游戏设计(Game Design):(四)从零开始搭建游戏主体框架

思路已俨然清晰,接下来要做的是从零开始搭建游戏的主体框架。Silverlight作为RIA界的新宠儿,不仅在游戏开发方面性能优越,在企业开发领域的优异表现同样日益显著。像我们这些长期从事.NET开发的程序员们,如何顺利向Silverlight开发转型是入门时要解决的第一个难题。首先要做的是安装配置开发环境及开发工具。这里我强烈推荐.NET程序员使用windows2003或更高版本的服务器操作系

2010-03-04 23:09:00 4658 6

原创 Silverlight游戏设计(Game Design):(三)一切起源于这个真实的世界

一直以来,我不断的在思考着如何能让Silverlight在游戏制作方面更简单。《圣经》说:上帝创造了世界;“游戏”无论在何等年代,都被视为生物在一定程度上模拟真实世界而进行的特定活动。基于爱因斯坦的时空理论,存在于世界中的万物其根本结构为3维空间 + 1维时间,于是乎脑海中浮现出了一个很棒的游戏基类:GameBase。“物体”,用以形容世界中的一切对象,作为客观存在,我们无法实例化它:publ

2010-02-27 09:49:00 3206 2

原创 Silverlight游戏设计(Game Design):(二)场景编辑器让游戏开发更美好

    如果哪天光荣告诉我:《三国志》系列将终结,我会义无返顾的用余下那点青春继续诠释这部中国历史经典题材游戏,已无法细数它占据了我多少童年的回忆,就好比曾有那么一群满腔热血的《梦幻模拟战》玩家为了能再玩上一部续作而从零开始学做游戏。在感动之余时常感到庆幸,自己能掌握一些菲薄的技术为何不为大家而用。发自内心的激情点燃了新的开始,一点一滴的去拾取那重生的感觉,依然遥不可期的理想在背后助推着我继续前行

2010-02-21 22:03:00 5878 16

原创 Silverlight游戏设计(Game Design):(一)游戏中斜视角的原理与分析

“暗黑破坏神3”将采用45度斜视角设置这篇数月前貌似毫不起眼的新闻一直让我记忆深刻,不断的尝试去理解大师级的暗黑团队为何放弃目前主流的3D路线而回归到2D,B大的一句话道破天机:要实现畅快淋漓如行云流水般的RPG战斗体验,唯有采用斜视角2D表现形式,至于其中的原委,留给所有人自己去思考。不可否认,是斜视角将2D游戏的表现力激发到极致。传统意义上说,斜视角指的就是斜向俯视。俯视,最易于鸟瞰全局,

2010-02-21 22:02:00 7426 16

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(五十) 终章!新的曙光!

本节无法为大家再次呈现更多的游戏更新,仅仅是对目前引擎的一些BUG修复以及增加简单的自定义Loading界面。用最后的一点元气,我想谈谈Silverlight在游戏图片音乐等素材的资源部署方面的问题。在常规的Web网页游戏开发中,需要分清哪些资源是必须在游戏加载时就要完整下载的,哪些资源是在玩家进入游戏后才根据实际需要动态下载的。例如一个玩家刚登陆游戏,那么首先需要Loading他所处地图的Min

2010-02-01 00:57:00 4485 10

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十九) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏②

本节,我将完成本教程示例游戏的最终两个魔法:传说中的连锁闪电与暴风雪。如此经典与华丽的家伙无论在哪款好游戏中都少不了它们的踪影。首先是连锁闪电,在《英雄无敌》中体现得尤为出色,击中一个怪物后,闪电会继续向它周围延续,连锁到下一个怪物并对其进行第二次攻击,接着重复前面步骤往周围延续,直到次数达到连锁次数上限或周围已没有其他怪物为止。当然,每一次攻击产生的伤害及附加属性都会少于前一次,例如在本教程

2010-01-18 16:07:00 3473 2

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十八) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏①

    是否还记得《传奇》中那一道道从天而降落的闪电,《笑傲江湖网络版》中娥眉救死扶伤的治疗,《剑侠世界》中五毒神出鬼没般的陷阱,《英雄无敌》中超经典的连锁闪电以及《魔兽争霸》中法师之终极魔法-暴风雪。这些家伙都曾在当年的玩家们心中打下深深的烙印,如能将此些经典之作添加进游戏中,毫无疑问将大幅提升游戏的华丽度与趣味性,战斗不就涂个爽快吗?这才是魔法的终极魅力!首先来看闪电(落雷类型)魔法的制作

2010-01-15 16:26:00 4359 11

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十七)远距离单体攻击与单体魔法

到目前为止,主角能使用的魔法均为群攻型魔法,群攻魔法的原理相对简单,常见如圆形范围,矩形范围,扇形范围等等,当魔法释放后可以按照本教程的做法对所有坐标处于相应范围内的怪物进行伤害处理,这是直观的处理方式;如果你最求更专业的,可以通过创建一个新的数组副本来记录伤害坐标是否与怪物所处的坐标匹配从而进行相应处理。至于单体魔法呢?它虽然没有群攻华丽的外表,可是实际制作中却需要考虑许多额外的问题。那么本节我

2010-01-12 11:37:00 2089

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十六)飞行模式 – 自由VS天空

曾几何时开始迷恋无垠的天际,幻想着插上翅膀去飞翔。《天翼之链》、《奇迹》、《梦幻诛仙》向无数玩家展示了飞行的世界。翅膀,常常是一种身份的象征,但如能再赋予它自由的含义,好比《永恒之塔》中如履空气般畅快淋漓,游戏魅力自然无可阻挡。如何让游戏中的角色自由飞翔?角色飞行时有何特殊之处这是游戏在设计需求时最需要考虑的问题。在如《星钻物语》、《天翼之链》等Q版网络游戏中,翅膀仅仅作为一种美丽的装饰品,强

2010-01-10 11:46:00 3217 6

原创 WPF/Silverlight深度解决方案:(十四)重写控件样式

在实际开发应用中,Silverlight默认控件样式并不能满足我们所有的需求,特别是对华丽界面的构造,需要对现有控件进行皮肤重写。WPF/Silverlight中使用xaml描述界面,类似Css,它们同样有Style和Template。目前微软开源工具包中集成的均是复杂类型控件,如何修改它们的样式确实难倒了不少朋友,那么本节以分析为主,结合对常用的NumericUpDown控件向大家讲解如何对现有

2010-01-04 16:25:00 2353 1

原创 2009最后一天,为了期盼而祝福

2009年的最后一天,这是我第一次在BLOG中抒写心声,希望给迷茫的朋友们带来一丝光芒,希望为2010年的开始注入春天的活力,我一直坚信我不是一个人在战斗,时代是需要团结的力量,与Silverlight一路走来,感受的风和雨,感慨的世态与人生不在老赵之下。这些是我收集的目前大多数朋友的种种困惑,其中的回答都为我个人想法,不代表微软,也不代表任何团体,我就是我。困惑1:Silverlight技术

2009-12-31 14:07:00 2016 19

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十五)制作精美的可任意拖放对象的物品栏及装备栏

本节的内容很酷哦,作为圣诞礼物送给大家~嘿嘿在通常的网络游戏中,物品、装备、技能、快捷按钮等窗口中的图标都是可以相互拖放的,不同的栏目有着不同的限制,例如技能图标不能拖放到物品栏及装备栏中,且不是所有的魔法技能都可以拖放(如被动技能等);而非装备类的所有物品则无法拖放到角色的装备栏中。那么本节我将向大家讲解如何在本教程示例游戏中添加物品栏及装备栏,并实现它们之间双向物品交换的两种模式:拖放模式

2009-12-24 11:42:00 2326 5

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十四)制作主角属性面板及加点器

游戏中会使用大量的菜单面板,而这些面板往往都带有选项卡。如果用Silverlight工具中的TabControl,则需要通过复杂的xaml重写模板来实现自定义样式,这一点时常让开发者头疼,毕竟界面的东西应该属于美工的范畴,这也是我所发现在目前Silverlight中唯一一处只能通过xaml而无法用代码实现的地方。当然,如果您对此特别感兴趣,同样可以到http://www.codeplex.com/

2009-12-17 22:36:00 3076 3

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十三)制作游戏主菜单面板及鼠标左右键快捷技能栏

每款MMORPG都有一个主菜单,通常置于窗口的底部。游戏中主角大部分的设置操作都从这里开启。如人物属性、物品(包裹)、技能、任务、队伍、地图、家族、门派、商城、系统设置等等;当然,还包括快捷自定义菜单栏,以及类似《暗黑破坏神》中经典式的左右键快捷技能栏。这些内容在不同的游戏中往往会根据自身的特性稍做调整,但整体上大同小异。本节,我将同样以《剑侠世界》的游戏主界面为例,向家讲解如何在Silverli

2009-12-08 18:32:00 2620 3

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十二)制作精美的Mini地图②

前面章节中讲解的包括对象头像面板、Mini雷达地图等窗体都是位置固定的,在处理起来方式多样且简单;而RPG、SLG、休闲养成等类型的游戏中往往会大量使用到悬浮且可自由拖动的窗体,比如包裹面板、武器装备面板、个人属性面板、技能面板、系统设置面板等等,这就要求我们必须为游戏量身定做一个通用且易用的ChildWindow控件。那么本节我将为大家讲解如何制作一个包含可拖动头部、关闭按钮及内容主体3大部件高

2009-11-30 16:41:00 2260

原创 WPF/Silverlight深度解决方案:(十三)完美自定义之ChildWindow

ChildWindow在所有应用领域中都是必不可缺的好工具,小到一个弹出的确认对话框;大到包含众多复杂参数、选项及数据列表的资源窗口,都可以通过它来分类实现。ChildWindow的好处是可以实现拖动及伸缩达到随意布局,更高级的同样可以实现类似最大化、最小化等高级布局功能。目前Silverlight3.0中自带的ChildWindow感觉仅仅是作为一个富Dialog的范畴应用,我们可以通过在项

2009-11-23 21:38:00 3285 4

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十一)制作精美的Mini地图①

  Silverlight4 Bata1发布了,在无数银光FANS的期待中悄悄的诞生了。如大家所愿,MS几乎满足了所有我们之前在Silverligh3中抱怨且无法做到的一切。它是一个极具里程碑意义的版本,从功能范围上讲,它已经开始有超越Flash的苗头;而从性能上说,官方公布的图形渲染速度将大幅度提升更是给目前本身性能就不是非常好的FLASH当头一棒;外加Silverlight在内存管理方面的优异

2009-11-20 19:21:00 2429 2

原创 WPF/Silverlight深度解决方案:(十二)制作Silverlight专属的动态链接库(DLL)

 在我的教程里一直未公开的QX.dll以及QXGameEngine开源后,大家讨论得比较多的QXGame_Silverlight3.dll。它俩到底是何方神圣,在引擎中起着何种作用;为什么就它俩不开源,莫非核心代码都在里面?本节我将就如上问题给予大家一个答案,揭开长久以来被尘封的种种谜团。    事情的起因缘于教程第七节中那对牛人老外用C#写的A*算法,一句话:相当的牛。于是乎我忍不住了,这么

2009-11-12 11:54:00 1994 3

原创 QXGameEngine:Silverlight – MMORPG游戏引擎开源

2009-11-10 22:23:00 1439 8

原创 QXGameEngine:Silverlight – MMORPG游戏引擎开源

 历时半年之久如火如荼般的教程编写,在所有朋友的支持与帮助下,本教程的Silverlight移植版终于迎来了开源的日子。心理埋藏着太多牢骚想发泄,但是想想其实又何必呢。所谓内行人看门道,外行人看味道,前进的道路只有虔诚者能领悟。开源序言:本引擎的所有素材均来源于网络,仅供学习与练习使用,不作任何商业用途。所有代码均为“深蓝色右手”编写,代码所有权归“深蓝色右手”所有,在作者批准范围内使用。

2009-11-10 17:21:00 2814 16

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十)向Silverlight移植②

三、新增功能:1)新增游戏的音乐及音效对象:public static MediaElement gameMusic, gameAudio;2)新增游戏鼠标光标://设置游戏鼠标光标GameCursor.Stretch = Stretch.Fill;GameCursor.Source = Super.GetImage("/Image/Cursor/0.png");在鼠标

2009-11-03 14:29:00 2009 1

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十九)向Silverlight移植①

一、主要改进:1)Silverlight3.0上的右键实现://注册右键事件HtmlPage.Document.AttachEvent("oncontextmenu", Game_MouseRightButtonDown);//鼠标右键事件private void Game_MouseRightButtonDown(object sender, HtmlEventArgs e)

2009-11-03 12:25:00 2081

原创 超越!!无止境的银翼:Silverlight-MMORPG游戏引擎第二阶段移

2009-11-01 09:15:00 1015 9

原创 超越!!无止境的银翼:Silverlight-MMORPG游戏引擎第二阶段移植

     还是这个地址:http://silverfuture.cn/博客中就不在上传了,因为无法使用右键。说明:此引擎基于Silverlight3.0开发,语言:纯C#。如果需要观看,您必须安装Silverlight3.0网页插件,您进入上面给的地址后会提示安装,如果您原先装的版本低于3.0,建议您最好先卸载掉旧版本,然后再安装最新的版本。特别申明:引擎中的素材均来源于网络,不做

2009-10-31 17:32:00 786 2

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十八)地图间的传送与切换

终于到了地图处理的最后一节,本节我将为大家讲解如何通过传送点实现主角在地图间的传送以及地图之间的切换。地图转换的关键在于把握好移除与添加:即移除之前地图上除主角之外的所有对象,然后再重新加载新地图上的所有对象。本教程示例游戏中,每张地图的信息都详细的记录于Config.xml配置文件中,包括每张地图的表层、遮挡层、障碍物层等等,然后再附加上本节后面将向大家讲解的传送点信息;这样,在地图转换时,我们

2009-10-25 20:16:00 2177 4

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十七)地图自适应区域加载

目前地图编辑器已经能够对地图图片进行切片了,那么接下来我们需要做的是对切好的地图片进行拼装从而取代整张大地图。需要特别说明的是,如果一次性将所有的切片加载进游戏中并显示出来,那么效果与使用一张整的地图几乎没区别,性能上甚至可能会更差;本节我们最终要达到的目的是利用这些切片自适应的填充游戏窗口区域,即用最少的地图片实现窗口的无缝填充,从而提升游戏的整体性能。教程示例游戏窗口模式时的窗体尺寸为80

2009-10-20 19:24:00 2918 6

原创 WPF/Silverlight深度解决方案:(十一)与嵌入式脚本语言Lua & JavaScript的交互(下)

本节,我首先想说明一下为什么选择Lua和JavaScript,因为(1)文章标题写的是它们……汗一个先(2)它们都属于嵌入式脚本语言,主要服务于前端(客户端)。(3)语言方面有诸多相似,且在各自的专长领域都称得上“王者”。(4)体积小,Lua仅仅不到300K;而调用JavaScript更无需额外的资源引用。由于是嵌入式脚本,因此它们在客户前端可以表现得极其灵活。通过将配置参数及实现具体功能的方

2009-10-14 19:48:00 2301

原创 WPF/Silverlight深度解决方案:(十)与嵌入式脚本语言Lua & Javascript的交互(上)

嵌入式脚本语言能赋予我们系统程序更加强大的灵活性与拓展性,以魔兽级的Lua为例,不过200多K的体积却拥有极快的运算速度。在.NET开发应用中,它可以被广泛的应用到允许Unsafe Code诸如:WinForm、WebForm、WPF等领域,其表现出来的易用性(无须考虑核心模块复杂的逻辑,只需要用最简单的脚本去完成指定任务即可)、跨平台性(一次编译通过的正确脚本可以随意移植到其他语言系统中)、需求

2009-10-12 19:21:00 2239 1

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十六)地图自定义切片与导出

做为提升游戏性能的一个重要环节就是地图的优化,作为基于Web的游戏来说,可以通过将地图切成若干同尺寸的片后,根据主角的位置进行时时的按需加载。举个简单例子,好比一幅20000*20000的地图,我们将之以400*400像素为一个地图片单位切成2500片,假若游戏窗口尺寸为800*600,那么我们每次只需加载以主角为中心的周围9块地图片(1200*900像素)即可实现填充,这比起一次性加载诺大一张地

2009-10-08 22:45:00 3288 5

原创 WPF/Silverlight深度解决方案:目录

    介于目前WPF/Silverlight技术资料在国内相当稀缺,仅有的也是一些很基础的教程。为了更深度的剖析WPF/Silverlight的技术内涵,解决开发过程中的疑难杂症,分解实际应用案例的特色细节,“WPF/Silverlight深度解决方案”系列由此孕育而生。整个系列的所有文章均为原创,由本人的个人开发经验结合相关资料编写而成,过程中难免有错漏或不妥当的地方还望各位读者友善的指出。我

2009-10-03 17:30:00 6501 9

原创 WPF/Silverlight深度解决方案:(九)HLSL自定义渲染特效之完美攻略(下)

本想只用两节来完成关于HLSL自定义渲染相关知识的讲解,鉴于最近非常的多的朋友对此相当感兴趣,想知道最多关于这些特效在实际开发中该如何使用及性能相关问题。那么本节我将以一个比较完整的游戏场景为例,向大家讲解HLSL自定义渲染特效的综合应用。布置一个游戏场景首先要做的是准备素材,这些素材包括地图背景、天气背景、主角、对象及其他的等物体:素材有了,接下来我们需要定义如何渲染,首当其冲的当然

2009-10-03 15:14:00 2061

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十五)地图编辑器的初步使用

上一节我们制作好了地图编辑器,并初步实现了导出地图中的障碍物信息及实现A*模拟寻路。那么当我们得到了包含有障碍物数据信息的xml文件后,又该如何将之应用到本教程的示例游戏中呢?本节还是以上一节的那幅地图为例,我们首先通过编辑器载入该地图并在上面描绘出所有障碍物:然后点击导出障碍物按钮,我们将得到一个包含有类似如下信息的xml障碍物数据文件:Item ID="Obstruction"

2009-10-01 22:38:00 3008 2

原创 WPF/Silverlight深度解决方案:(八)誓将内存释放到底

WPF/Silverlight应用程序长时间运行后会产生非常多的内存垃圾(内存泄露例外),特别是在经常需要进行Remove操作的粒子、动画、游戏等方面的应用,国外高手们提出的方案我归纳了一下主要有:1)  UIElement控件实例= null2)  定时调用GC.Collect()3)  让控件继承Idisposable接口,并实现相应逻辑这三种方法都有一定的作用,但是实际使用中

2009-10-01 01:08:00 4750 7

原创 WPF/Silverlight深度解决方案:(七)HLSL自定义渲染特效之完美攻略(中)

通过上一节的解说,大家是否已经对HLSL有了较深刻的认识和理解,HLSL的渲染不仅仅局限于静态处理,通过时时更新HLSL代码的各全局变量值同样可以实现动画形式的渲染,非常Cool对吧~。那么本节我将向大家介绍如何在Silverlight平台上实现HLSL动画渲染特效。以BandedSwirl(螺旋波纹)渲染特效为例,我们首先要做的是按照上一节的方法将BandedSwirl.ps文件添加进项目中

2009-09-28 23:09:00 4239 7

原创 WPF/Silverlight深度解决方案:(六)HLSL自定义渲染特效之完美攻略(上)

Shader Effect中文名称为“渲染特效”或“滤镜”,WPF中自带有5种位图特效及2种渲染特效,而Silverlight中仅有这2种渲染特效: BlurEffect(模糊渲染)和 DropShadowEffect(投影渲染)。由于目前WPF/Silverlight被应用的领域还不是很多,大多数开发者仅仅是将之作为Winform/Webform的替代品,那么现成的这几种渲染特效已足够应付大多数

2009-09-28 09:04:00 4594 10

原创 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十四)地图编辑器诞生啦!

没有地图编辑器的游戏不是好游戏--至理明言。到目前为止,教程示例游戏中虽然实现了A*,但是还无法轻松的为地图设置障碍物;并且游戏所有地图均为一张整的大图片,主角的移动会导致窗体对地图的不停切割,越大的地图带来的负面性能损耗越明显。对地图进行切片处理则可达到性能的最大优化:载入的时候按需加载,地图根据主角的位置仅显示特定部份;并且如果还能配上任意勾勒的遮挡物,那么这一切的一切将更能完美的诠释我们

2009-09-25 23:31:00 8223 9

原创 Silverlight游戏引擎

2009-09-21 21:48:00 1529 13

原创 WPF/Silverlight深度解决方案:(五)基于像素的图像合成(For Silverlight)

  本节我将为大家讲解如何在Silverlight平台上实现上一节中的纸娃娃系统,即WPF->Silverlight的移植。众所周知Silverlight是WPF的子集,Silverlight对像素位图的处理是在3.0版本之后才开始支持,本节我将大量的用到它: WriteableBitmap – 传说中神话的代言人。移植过程分两步。首先移植表现层xaml,大家需要特别注意的是Sil

2009-09-21 07:09:00 2434

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除