android SurfaceView实现人物动画

经常看到别人的游戏中有人物跑动的效果,对这个东西很好奇,刚好群里上传了“忍者突袭”的代码,我看了里面的代码,但对画人物那段还是没咋弄,所以自己写一个测试程序,程序中使用到的图片资源是来自“忍者突袭”的代码,真心的感谢写“忍者突袭”代码的人~~

人物角色使用的图片如下:


在画人物角色时会对这张图片进行剪切,使用的函数是

mCanvas.clipRect(mClipRect);
绘制人物角色的思想是使用mCanvas.clipRect(mClipRect);函数来设置画布显示的位置及大小,假设为(presentX,presentY,presentX + width/10, presentY + height)(presentX和presentY为现在图片的位置,width和height为图片的宽度和高度),然后使用mCanvas.drawBitmap来绘制图片,第一次绘制图片的位置是(presentX,presentY),然后将绘制图片的位置修改为(presentX - width / 10, presentY),第二次设置的画布显示的位置仍然是presentX,presentY,presentX + width/10, presentY + height,绘制图片的位置是(presentX - width / 10, presentY),而第二张图片的位置刚好是presentX,presentY,所以显示的是第二张图片,依次类推的实现其它图片的显示。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值