pygame用blit()实现动画效果的示例代码

 更新时间:2020年05月28日 11:14:45   作者:国产跑车  
这篇文章主要介绍了pygame用blit()实现动画效果的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

pygame的的实现动画的方法有很多,但是都是围绕着表面进行的,也就是说实现动画的方式不同,但是本质其实都是对表面的不同处理方式而已。

原理其实很简单,有点像我们做地铁的时候隧道里的广告一样。我们设置一个窗口。然后让窗口在一个画着很多帧图像的图上面移动,当我们透过这个窗口去观察这幅图的时候,只要窗口沿着一个方向去运动,那么就会产生动画效果。

今天我介绍的是通过块传输的方法去实现。

surface.blit(image,(x,y),rect)  在这里surface.blit()这个方法应该大家都很熟悉了,我们就是利用第三个参数,也就是绘制区域的变化实现的动画.我们将图像的一部分绘制出来。如果加上一个简单的循环,让绘制区域的位置发生变化。那么就可以实现动画效果啦。

这个方法实现的精灵动画很简单.

完整代码如下:

import pygame,sys
screen = pygame.display.set_mode((600,800))
pygame.display.set_caption('动画测试')
image = pygame.image.load('boss.png')
rect = image.get_rect()
rect2 = pygame.Rect(0,0,rect.width // 4,rect.height)
tick = pygame.time.Clock()
 
while:
  
  for event in pygame.event.get():
    if event.type == pygame.QUIT:
      sys.exit()
 
  
  for n in range(4):
    tick.tick(4)
    rect2.x + = n * rect2.width 
    if rect2.x> 1000:
      rect2.x = 0
    screen.fill((255,255,255))
    screen.blit(image,(0,0),rect2)#这里给了3个实参,分别是图像,绘制的位置,绘制的截面框
    pygame.display.flip()

其实还有一种方式实现动画,就是surface.subsurface(),明天我会介绍这个方法.

到此这篇关于pygame用blit()实现动画效果的示例代码的文章就介绍到这了,更多相关pygame blit()动画内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python正则抓取新闻标题和链接的方法示例

    Python正则抓取新闻标题和链接的方法示例

    这篇文章主要介绍了Python正则抓取新闻标题和链接的方法,结合具体实例形式分析了Python正则匹配页面元素及文件写入相关操作技巧,需要的朋友可以参考下
    2017-04-04
  • Python 单元测试(unittest)的使用小结

    Python 单元测试(unittest)的使用小结

    Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,本篇文章主要介绍了Python 单元测试(unittest)的使用小结,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • python实现指定ip端口扫描方式

    python实现指定ip端口扫描方式

    今天小编就为大家分享一篇python实现指定ip端口扫描方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python中scatter函数参数及用法详解

    Python中scatter函数参数及用法详解

    这篇文章主要介绍了Python中scatter函数参数及用法详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Python logging管理不同级别log打印和存储实例

    Python logging管理不同级别log打印和存储实例

    这篇文章主要介绍了Python logging管理不同级别log打印和存储实例,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 基于python的七种经典排序算法(推荐)

    基于python的七种经典排序算法(推荐)

    本篇文章主要介绍基于python的七种经典排序算法(推荐),具有一定的参考价值,这里整理了详细的代码,有需要的小伙伴可以参考下。
    2016-12-12
  • 使用python读取csv文件快速插入数据库的实例

    使用python读取csv文件快速插入数据库的实例

    今天小编就为大家分享一篇使用python读取csv文件快速插入数据库的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python+Selenium实现短视频热点爬取

    Python+Selenium实现短视频热点爬取

    随着短视频的大火,不仅可以给人们带来娱乐,还有热点新闻时事以及各种知识,刷短视频也逐渐成为了日常生活的一部分。本文将通过Pyhton依托Selenium来爬取短视频热点,需要的可以参考一下
    2022-04-04
  • Python文件的操作示例的详细讲解

    Python文件的操作示例的详细讲解

    本问重点讲解了Python文件的读写原理、常用文件打开模式、文件对象的常用方法和目录的相关操作详细讲解,对Python文件操作相关知识感兴趣的朋友跟随小编一起看看吧
    2021-04-04
  • PyTorch 如何检查模型梯度是否可导

    PyTorch 如何检查模型梯度是否可导

    这篇文章主要介绍了PyTorch 检查模型梯度是否可导的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06

最新评论