wpf是什么做cs结构,silverlig...

花了一个月夜晚时间,就为了自己儿时的一个理想。最近比较看好WPF,所以就用WPF开发了个A·RPG游戏引擎,先发几张截图吧:(特别申明一下,游戏里面用了很多其他网络MMORPG的素材,如地图是金庸的,主角是破天一剑的,怪物是剑侠世界的,技能是轩辕剑5的,此软件只做练习用。嘿嘿,目前完成度40%,但是只要您***有.库了,难道不是伟大的革命吗?

最后提一下:此游戏纯C#开发,我的电脑团伙中没有装VISTA的更没有WINDOWS7 的,所以暂时分别在4台XP或2003系统的电脑上进行了测试,测试数据如下:

花了一个月夜晚时间,就为了自己儿时的一个理想。最近比较看好WPF,所以就用WPF开发了个A·RPG游戏引擎,先发几张截图吧:(特别申明一下,游戏里面用了很多其他网络MMORPG的素材,如地图是金庸的,主角是破天一剑的,怪物是剑侠世界的,技能是轩辕剑5的,此软件只做练习用。嘿嘿,目前完成度40%,但是只要您***有.库了,难道不是伟大的革命吗?

最后提一下:此游戏纯C#开发,我的电脑团伙中没有装VISTA的更没有WINDOWS7 的,所以暂时分别在4台XP或2003系统的电脑上进行了测试,测试数据如下:

    第二种方法我称之为图片截取法,准备工作:这里我以创建主角向右方向施法动画为例。首先需要将10帧150*150的图片通过Photoshop或其他方式合成为一张的大图,如下图:

    从图上可以很清晰的看出主角的整个流畅的施法流程。接着,我将该文件取名叫PlayerMagic.png保存。然后在上一节中建立的Player文件夹上点鼠标右键->添加->现有项->找到PlayerMagic.png图片后并加入进Player文件夹。接下来的就是重点了,如何才能使该图片被WPF/Silverlight程序识别呢?我们可以在这张图片上点右键->属性,接着将以下两个属性①复制到输出目录->改为“如果较新则复制”②生成操作->改为“嵌入到资源”,如下图:

    从上面代码可以看出前半部分和上一节的一样,这里就不累述了,精华就在后面的cutImage方法,该方法可谓集天地之精华,日月之灵气。。。扯远了,该方法的详细描述已经写在上面,大家可以慢慢体会应该不难。

    有了该尚方宝剑,那么大家应该也多少有点感觉了吧,最后在dispatcherTimer_Tick方法中,我们即调用该方法实现时时的图片截取来循环生成动画,Ctrl+F5看看,呵呵,主角会放魔法啦!

到此,我分别介绍了图片切换法和图片截取法两种动态创建角色动画的方法,这两种方式都是很高效快速的,WPF在这两种方法的取舍上更倾向于后者,后者更加灵活多变,但是需要事先将N多的图片合成,这就涉及到一个预备工作量的问题,当然如果您有好的函数,图片集的名字取得有序,直接就可以通过函数合成,我曾试过用函数直接将488张150*150图片在<3秒合成一张的成品图,当然,这需要精致的算法。

    下一节我将继续介绍如何将角色自身动画与移动动画相结合,创建完美的鼠标点击实现2D人物移动动画。敬请关注。

本文版权归作者和CSDN共有,欢迎转载。但未经作者同意必须保留此段声明,且在文章页面显著位置给出原文连接,否则保留追究法律责任的权利。

参考资料

 

随机推荐