小人快跑之WPF基础——图形与动画(一)

本文介绍了如何使用WPF制作一个小人走路的动画效果。通过结合Image标签、后台线程和CompositionTarget.Rendering事件,实现基于帧的动画。虽然这种方法简单,但需要手动处理帧率控制和大量细节,可能影响性能和维护。作者分享了源代码,并预告将在下篇继续探讨其他动画方案。
摘要由CSDN通过智能技术生成

前言:

之前为了完成一些任务,因为公司只能限定一些网络访问且不能用存储设备进行拷贝,所以自己在家里写了一个demo就放到csdn的下载区回公司再下下来,令人意外的是这个非常小的demo居然两天里就有几十个下载还得到了几个评论(在我之前从来没有遇到过的大笑)。想了一下干脆分享一下自己的学习心得好了。

接下来让我们初入WPF动画的世界吧

1.任务概述:

使用WPF模拟一个小人走路的动画效果。

之前没有过WPF开发的经验,但是拿到东西后第一反应就是利用多幅图片来反复播放,如果帧率足够的话就能完成这个事情了,所以撇开技术不说,任务实际上是非常简单的,因为我们已经知道要怎么做了,有思路了。

2.本次关键知识的储备

2.1 我们需要知道Image标签,如何绘图,插入图片以及后台线程(其实就是一个控件与三个简单的方法)

2.2 WPF基于帧的动画:CompositionTarget.Rendering += new EventHandler(DoSomething)

基于帧的动画是WPF提供的一套非常低级的方法(不是指功能低级,而是要自己处理比较多的内容),这种方法只需要调用 CompositionTarget.Rendering这个静态时间,它是WPF系统默认提供给我们的事件,触发这个事件会完成一件事情,就是在WPF在组合树呈现之前瞬间渲染要显示的图形或者图像,非常方便。

其实就是程序反复的触发这个事件帮我们刷新图片,MSDN上说是以每秒60帧的速度,而想要有动画效果,让图片以一定的帧率反复刷新多张变动比较小的图片就可以了。

例如我提供的这两张图片(临时手画的)


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值