【原神,启动!】Python-pygame实现原神启动界面

这篇具有很好参考价值的文章主要介绍了【原神,启动!】Python-pygame实现原神启动界面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

video模块(已失效)

导入图片

阿尔法(alpha)通道

播放BGM

同步播放

效果展示



前言

这是一次0基础萌新的尝试    (。・ω・)ノ゙

之前一直在学C++,但是这台电脑貌似主打一个油盐不进,Java,C++之类的语言搭建环境一直不成功,只有Python勉强能用,所以目前实践环节……只能留给Python了( ̄~ ̄;)

让程序在窗口内产生简单的动画效果,似乎比什么输密码之类的有意思多了?

video模块(已失效)

(代码块已略去import及初始化过程)

video功能是我想到的第一种比较直接的一种方法,毕竟直接拿原视频糊弄人...也不是不行?

screen = pygame.display.set_mode((640, 480))# 创建Pygame显示窗口
video = pygame.movie.Movie("video.mp4")#  加载文件
video.play()# 播放视频

while video.get_busy(): # 等待视频播放结束
    for event in pygame.event.get():    # 处理Pygame事件
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
    screen.blit(video.get_surface(), (0, 0))    # 将视频帧绘制到屏幕上
    pygame.display.flip()
 

但是video在Python3貌似已经被移除了,所以...看到“Movie”黄色高亮 的时候已经感觉大事不妙了

【原神,启动!】Python-pygame实现原神启动界面,Python,实践,python,pygame,开发语言

导入图片

文字动画效果在特殊字体缺失时,观赏性不能说大幅下降,至少也是不堪入目......(*/ω\*)

所以决定直接用图片渐变显示来达到效果

先拿张图 ↓(水印是系统加的,删不掉了)

【原神,启动!】Python-pygame实现原神启动界面,Python,实践,python,pygame,开发语言

import pygame
pygame.init()  # 初始化
window = pygame.display.set_mode((1080, 640))  # 创建自定义大小的窗口(1080*640)
pygame.display.set_caption('Genshin Impact') # 设定了一个标题
window.fill((255, 255, 255)) # 窗口背景颜色,注意是RGB格式(此处为白)

在显示图片前,应先初始化pygame并构建窗口 ,然后导入图片;

image1 = pygame.image.load('Files/SPLASH.jpg') # 加载图片
window.blit(image1, (0, 0)) # 进行渲染
pygame.display.flip() # 顺带着刷新一下

图片导入成功,不代表就能直接显示,需要使用window.blit()来对图片进行渲染,括号内格式为(渲染对象, (横坐标,纵坐标)),横纵坐标相对左上角而言,左上角为(0,0)

display.flip()仅限于第一次使用,如果是后续刷新,把flip换为update即可

w, h = image1.get_size()# 定义了w,h作为宽,高;

定义了w,h作为宽,高;在涉及坐标的计算中,也可以直接使用已定义的宽高。

(如:1280-w,720-h)

阿尔法(alpha)通道

set_alpha可用于调节图片透明度,用下方的for循环可达到图片渐变效果,最终实现图片淡入

for a in range(1000):
    clock.tick(30)
    window.fill((255, 255, 255))
    if v == 50:
        picture.set_alpha(a*2)
    else:
        picture.set_alpha(255-a*10)

播放BGM

某两字游戏的标题会在音乐达到某小节高潮时展示标题,因此我们应该使其保持同步,但当务之急是先让音乐能够正常播放

pygame.mixer.pre_init() # 初始化
pygame.mixer.music.load('Files/启动背景音乐.mp3') # 导入
pygame.mixer.music.play(-1) # 单曲循环

pygame.mixer.music.play(),括号内填写的是在播放完一次后,进行重复播放次数

如果是 -1,则为单曲循环

同步播放

pygame.time.delay()可设置在延迟一定时间(以毫秒计)后执行下一步。

这里的音频文件在第47秒才会迎来高潮,所以delay的时间应为47000ms,即47s。

clock = pygame.time.Clock()

time_passed = clock.tick(6000)
pygame.time.delay(47000)

效果展示

(其实就是最开始的动图,但是好像看不到了)

站内视频版:原神,启动!-CSDN直播文章来源地址https://www.toymoban.com/news/detail-714449.html

到了这里,关于【原神,启动!】Python-pygame实现原神启动界面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • pygame 绘制爱心函数 r = 1-cos(θ). Tag: python | 图形界面 | GUI

    最近做数学题,遇到一个“爱心函数” 即 r = 1 - cos(θ) . ——极坐标下函数表达式 用参数方程表示即: x = (1 - cos(θ)) * cos(θ) y = (1 - cos(θ)) * sin(θ) 放个函数图像 函数详情点这里 代码原理很简单,采用极坐标的方式,使用一个变量 t(即 θ ),每次循环自增(充当计时器/角度

    2024年02月13日
    浏览(37)
  • 很合适新手入门使用的Python游戏开发包pygame实例教程-01[开发环境配置与第一个界面]

    我们假定你已经安装好了我们开发python程序的sublime text,如果不知道怎么安装的可以参照我前面的博文。这里只需要解决的是配置好Pygame的问题。本篇博文主要解决开发环境配置以及第一个游戏界面的显示问题。 文章原出处: https://blog.csdn.net/haigear/article/details/130173836 没有

    2024年01月25日
    浏览(94)
  • 原神启动(递推,矩阵)

    Part 1. 引子 求有多少 1 ∼ n 1sim n 1 ∼ n 的排列,满足: 进行 k k k 轮原神排序后变为升序 具体的,一轮原神排序的定义为: 指针 i i i 按 [ 1 , n ) [1,n) [ 1 , n ) 的顺序 正序 遍历,如果 a i a i + 1 a_ia_{i+1} a i ​ a i + 1 ​ ,则交换 a i a_i a i ​ 和 a i + 1 a_{i+1} a i + 1 ​ 指针 i i i 按

    2024年01月23日
    浏览(41)
  • 启动-原神-Windows提示找不到unityplayer.dll怎么办?

    最近小编发现有很多朋友,在启动\\\"原神\\\"游戏,Windows弹出提示\\\"由于找不到 UnityPlayer.dll,无法继续执行代码。重新安装程序可能会解决此问题。\\\",又或者是\\\"无法定位程序输入点到动态链接库unityplayer.dll\\\" YuanShen.exe对应的应用是游戏《原神》,由于程序漏洞出错,恶意应用删除

    2024年01月20日
    浏览(131)
  • Qt 实现软件启动界面动画

    实现软件启动界面,用到 QSplashScreen 类。 效果 启动界面 描述 QSplashScreen 小部件提供了一个可以在应用程序启动期间显示的启动画面。 启动画面通常是在应用程序启动时显示的小部件。启动画面通常用于启动时间较长的应用程序(例如需要花费一些时间来建立连接的数据库或

    2024年02月07日
    浏览(29)
  • 【Python】pygame弹球游戏实现

    游戏源码: pygame_os库:

    2024年02月12日
    浏览(66)
  • python和pygame实现烟花特效

    新年来临之际,来一个欢庆新年烟花祝贺,需要安装使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 效果图及源码 先看效果图: 源码如下: pygame在屏幕上显示字体的方法说明 使用 pygame.font.Font 函数来设置字体和大小,

    2024年02月04日
    浏览(96)
  • Python利用pygame实现飞机大战游戏

    文章目录: 一:运行效果 1.演示 2.思路和功能 二:代码 文件架构 Demo 必备知识:python图形化编程pygame游戏模块 效果图 ◕‿◕✌✌✌ Python利用pygame实现飞机大战游戏运行演示 参考:【Python游戏】1小时开发飞机大战游戏-Pygame版本(1小时40分钟) 博主提取资源: 提取

    2024年04月09日
    浏览(79)
  • 使用Pygame创建一个简单游戏界面

    首先需要安装Pygame 模块,在Python代码中添加引用。 1. 引用代码如下: 2. 定义初始化窗口函数: 在初始化窗口函数中,定义窗口大小和窗口标题。 3. 创建一个循环,不断更新界面和检测事件 加载背景图片,将背景图片对象放置在窗口上,位置(0,0) 最左角,图片有实际的

    2024年02月13日
    浏览(47)
  • python3.8.8 :pygame实现角色动画

    用途:通过不同的序列图片在界面上展示连贯的动画 结果如下:  参考文章:pygame之旅 - 知乎 (zhihu.com) 项目结构目录  角色类 角色生成类: 代码入口 结果如下:  发现出现问题,动画出现残影,看网上说需要先绘制背景,再绘制角色可以解决,随意填个颜色screen.fill(255)

    2024年02月05日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包