使用Python的pygame庫(kù)實(shí)現(xiàn)下雪的效果
關(guān)于Python中pygame游戲模塊的安裝使用可見(jiàn)?https://blog.csdn.net/cnds123/article/details/119514520
先給出效果圖:
源碼如下:
import pygame
import random
# 初始化pygame
pygame.init()
# 設(shè)置屏幕尺寸
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
# 設(shè)置雪花屬性
snowflakes = []
for i in range(50):
x = random.randrange(0, width)
y = random.randrange(0, height)
speed = random.uniform(1, 3)
size = random.randint(3, 6) # 雪花大小參數(shù)
snowflakes.append([x, y, speed, size])
# 循環(huán)直到用戶關(guān)閉窗口
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 填充屏幕顏色
screen.fill((200, 200, 200)) # (0, 0, 0)黑色;(200, 200, 200)陰天
# 繪制雪花
for flake in snowflakes:
pygame.draw.circle(screen, (255, 255, 255), (int(flake[0]), int(flake[1])), flake[3]) # 使用大小參數(shù)繪制雪花
flake[1] += flake[2] # 移動(dòng)雪花
if flake[1] > height:
flake[1] = random.randrange(-50, -10)
flake[0] = random.randrange(0, width)
# 更新屏幕
pygame.display.flip()
# 控制幀率
pygame.time.Clock().tick(30)
# 退出pygame
pygame.quit()
下面給出改進(jìn)版
效果圖:
使用一張背景圖片(我這里文件名:snow_background.jpg),和代碼文件放在同一目錄下
?源碼如下:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-806437.html
import pygame
import random
# 初始化pygame
pygame.init()
# 設(shè)置屏幕尺寸
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
# 加載背景圖片
background = pygame.image.load('snow_background.jpg')
background = pygame.transform.scale(background, (width, height))
# 設(shè)置雪花屬性
snowflakes = []
for i in range(50):
x = random.randrange(0, width)
y = random.randrange(0, height)
speed = random.uniform(1, 3)
size = random.randint(3, 6) # 雪花大小參數(shù)
snowflakes.append([x, y, speed, size])
# 循環(huán)直到用戶關(guān)閉窗口
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 填充屏幕顏色
#screen.fill((200, 200, 200)) # (0, 0, 0)黑色;(200, 200, 200)陰天
# 繪制背景圖片
screen.blit(background, (0, 0))
# 移動(dòng)雪花并重新繪制
for flake in snowflakes:
pygame.draw.circle(screen, (255, 255, 255), (int(flake[0]), int(flake[1])), flake[3]) # 使用大小參數(shù)繪制雪花
flake[1] += flake[2] # 移動(dòng)雪花
if flake[1] > height:
flake[1] = random.randrange(-50, -10)
flake[0] = random.randrange(0, width)
# 更新屏幕
pygame.display.flip()
# 控制幀率
pygame.time.Clock().tick(30)
# 退出pygame
pygame.quit()
附:RGB 顏色表 ? https://www.codeeeee.com/color/rgb.html
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-806437.html
到了這里,關(guān)于使用Python的pygame庫(kù)實(shí)現(xiàn)下雪的效果的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!