iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python pygame项目实战英雄动画特效实现
  • 823
分享到

Python pygame项目实战英雄动画特效实现

2024-04-02 19:04:59 823人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录1. 英雄的简单动画实现2. 代码演示1. 英雄的简单动画实现 需求: 在游戏初始化定义一个pygame.Rect的变量记录英雄的初始位置在游戏循环中每次让英雄的y-1--向上移

1. 英雄的简单动画实现

需求:

  • 在游戏初始化定义一个pygame.Rect的变量记录英雄的初始位置
  • 在游戏循环中每次让英雄的y-1--向上移动(y值减1相当于向屏幕上方上移动1)
  • y<=0将英雄移动到屏幕的底部

友情提示:

  • 每一次调用update()方法之前,需要把所有的游戏图像都重新绘制一遍
  • 而且应该最先重新绘制背景图像

2. 代码演示

案例大体思路概括:

  • 在游戏循环上方,定义rect记录飞机的初始位置
  • 在游戏循环内部,修改飞机位置:让飞机的y属性-1
  • 调用blit方法绘制图像(注意:绘制图像的时候,每一次循环都要先绘制背景图在绘制飞机,这样背景图就会把上一次绘制的飞机遮挡住,所以就不会在屏幕上留下上一次飞机的剪影)
  • 调用update方法更新显示,就能看到连贯的动画效果了

具体代码演示如下所示:

import pygame
pygame.init()
# 创建游戏的窗口 640*642
screen = pygame.display.set_mode((640, 642))
# 绘制背景图像
bg = pygame.image.load("./飞机大战资料包/images/background1.jpg")
screen.blit(bg, (0, 0))
# 绘制英雄的飞机
hero = pygame.image.load("./飞机大战资料包/images/me1.png")
screen.blit(hero, (300, 500))
# 可以在所有绘制工作完成之后,统一调用update方法
pygame.display.update()
# 创建时钟对象
clock = pygame.time.Clock()
# 游戏循环->意味着游戏的正式开始
# 1. 定义rect记录飞机的初始位置
hero_rect = pygame.Rect(300, 500, 102, 126)
# 游戏循环->意味着游戏的正式开始
while True:
    # 希望无限循环内部的代码每秒钟重复循环60次
    # 可以指定循环体内部的代码执行的频率
    clock.tick(60)
    # 2. 修改飞机的位置
    hero_rect.y -= 1
    # 3. 调用blit方法绘制图像
    # 先绘制背景,在绘制飞机,就不会留下残影(背景把上一次的飞机遮挡)
    screen.blit(bg, (0, 0))
    screen.blit(hero, hero_rect)
    # 4. 调用update方法更新显示
    pygame.display.update()
pygame.quit()

代码运行结果如下图所示:运行结果为动画效果,大体概括如下:在屏幕上方可以看到,英雄飞机不断向上移动,每次移动距离1,慢慢移动到屏幕上方,最终移出屏幕。

以上就是python pygame项目实战英雄动画特效实现的详细内容,更多关于Python pygame英雄动画的资料请关注编程网其它相关文章!

--结束END--

本文标题: Python pygame项目实战英雄动画特效实现

本文链接: https://www.lsjlt.com/news/119942.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python pygame项目实战英雄动画特效实现
    目录1. 英雄的简单动画实现2. 代码演示1. 英雄的简单动画实现 需求: 在游戏初始化定义一个pygame.Rect的变量记录英雄的初始位置在游戏循环中每次让英雄的y-1--向上移...
    99+
    2024-04-02
  • Python+Pygame实现代码雨动画效果
    pygame实现代码雨动画 如视频所示 利用pygame库实现了一个代码呈雨状下落的视觉效果 部分代码如下 import sys import random import py...
    99+
    2024-04-02
  • Python+Pygame实战之英文版猜字游戏的实现
    目录导语一、运行环境二、素材(图片等)三、代码展示四、效果展示导语 当下的孩子们多少会被电子产品“侵袭”,那么既然都要玩游戏,为什么不选既能玩又能收获知识的呢...
    99+
    2024-04-02
  • Python pygame项目实战监听退出事件
    目录1. 事件监听2. 案例演示2.1 案例大体思路2.2 代码演示2.3 运行结果1. 事件监听 首先,我们简单回顾一下事件监听,可以简单概括如下: 在游戏循环中,我们希望判断用户...
    99+
    2024-04-02
  • Flutter实现心动的动画特效
    目录实现动画混入 SingleTickerProviderStateMixin创建动画抽离成小组件完整代码为了追求更好的用户体验,有时候我们需要一个类似心跳一样跳动着的控件来吸引用户...
    99+
    2024-04-02
  • WPF实现流光动画特效
    一、代码 <Window.Resources> <!--外--> <Storyboard x:Key="Storyboar...
    99+
    2024-04-02
  • Python实现飞机大战项目
    本文实例为大家分享了Python实现飞机大战的具体代码,供大家参考,具体内容如下 plane_main.py import pygame from 飞机大战.plane_spri...
    99+
    2024-04-02
  • 怎么用css实现3d动画特效
    小编给大家分享一下怎么用css实现3d动画特效,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   属性   perspect...
    99+
    2024-04-02
  • css3怎么实现3d旋转动画特效
    这篇文章主要介绍“css3怎么实现3d旋转动画特效”,在日常操作中,相信很多人在css3怎么实现3d旋转动画特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”css3怎么实现...
    99+
    2024-04-02
  • HTML5实现的齿轮动画特效代码
    这篇文章主要介绍“HTML5实现的齿轮动画特效代码”,在日常操作中,相信很多人在HTML5实现的齿轮动画特效代码问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTML5实现的...
    99+
    2024-04-02
  • CSS3如何实现单选框动画特效
    这篇文章主要讲解了“CSS3如何实现单选框动画特效”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3如何实现单选框动画特效”吧!HTML 代码<d...
    99+
    2024-04-02
  • CSS3怎么实现3D星空动画特效
    这篇文章主要介绍“CSS3怎么实现3D星空动画特效”,在日常操作中,相信很多人在CSS3怎么实现3D星空动画特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS3怎么实现3D星空动画特效”的疑惑有所帮助!...
    99+
    2023-06-04
  • Python 实现图像特效中的油画效果
    目录一 基本原理二 代码实现三 总体实现代码以及保存 在前面的文章 Python 计算机视觉(十五)—— 图像特效处理 中我已经介绍了大部分的图像的特效处理,但还是忽略了油画特效的处...
    99+
    2024-04-02
  • Python用selenium实现自动登录和下单的项目实战
    目录前言前期准备代码实现思路配置浏览器驱动确定浏览器版本下载驱动测试是否成功代码实现最后前言 学python对selenium应该不陌生吧 Selenium 是最广泛使用的开源 We...
    99+
    2023-02-22
    selenium自动登录 selenium自动下单
  • Python实战项目用PyQt5制作漫画脸GUI界面
    目录最终效果前言1.PyQt5的安装。1.PyQt5库的安装。2.qt designer 布局的使用。1:打开这个设计师2:创建一个窗口3:设计界面,用鼠标拖动左边的控件。4:ui转...
    99+
    2024-04-02
  • 原生JS实现目录滚动特效
    分享一个用原生JS实现的文字滚动效果,这种效果通常用在网页中一些局部展示信息,如新闻、动态、充值记录等,效果如下: 实现代码如下: <!DOCTYPE html> ...
    99+
    2024-04-02
  • Python如何实现飞机大战项目
    这篇文章主要介绍Python如何实现飞机大战项目,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下plane_main.pyimport pygamefrom 飞机大战.plane_spr...
    99+
    2023-06-20
  • 通过CSS数学函数实现动画特效
    目录前言CSS 数学函数绝对值中位数数轴上两点距离三角函数例子一维交错动画初始状态应用动画交错动画二维交错动画初始状态应用动画交错动画另一种动画余弦波动动画初始状态余弦排列波动动画交...
    99+
    2024-04-02
  • CSS3中怎么实现复选框动画特效
    CSS3中怎么实现复选框动画特效,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。实例代码代码如下:<!DOCTYPE ht...
    99+
    2024-04-02
  • CSS3如何实现loading预加载动画特效
    小编给大家分享一下CSS3如何实现loading预加载动画特效,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!该loading特效...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作