中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pygame實現煙雨蒙蒙下彩虹雨

發布時間:2020-09-09 05:31:28 來源:腳本之家 閱讀:144 作者:HelloWorld! 欄目:開發技術

學習了一天的深度學習,略有疲憊,我們用pygame搞個小游戲放松放松吧。今天我們的游戲主體是煙雨蒙蒙下彩虹雨,仿佛置身江南水鄉。

游戲描述

我們希望看到江南水鄉下起彩虹雨。這里背景是江南水鄉,煙雨蒙蒙,雨滴顏色五顏六色,大小不一。

解決思路

煙雨蒙蒙彩虹雨的意思很明確,有幾個主要元素,那就是煙雨蒙蒙,彩虹雨滴,下雨幾個元素和動作。那么,基本思路如下

1.找一張江南水鄉煙雨蒙蒙的圖片作為背景
2.用圓圈代表雨滴,并把圓圈的大小,顏色進行隨機設置,出現五彩斑斕的效果。
3.下雨,即雨滴從上而下持續不斷的落下,這就需要pygame里把圓圈放在不同的坐標下繪制出來。

代碼實現

具體的實現代碼如下:

import pygame
import random
pygame.init()
#加載圖片
pic=pygame.image.load('raining.jpg')
#獲取圖片的長寬
screen_width=pic.get_width()
screen_height=pic.get_height()
#根據圖片大小來設置屏幕大小
screen=pygame.display.set_mode([screen_width,screen_height])
#設置彩虹雨的雨滴個數,顏色,位置,大小,落下的速度
numbers=50
colors=[0]*numbers
location_x=[0]*numbers
location_y=[0]*numbers
sizes=[0]*numbers
speed=[0]*numbers
#初始化彩虹雨滴
for i in range(numbers):
 colors[i]=(random.randint(0,255),random.randint(0,255),random.randint(0,255))
 location_x[i]=random.randint(0,screen_width)
 location_y[i]=-random.randint(0,screen_height)
 sizes[i]=random.randint(5,20)
 speed[i]=random.randint(1,5)

keep_going=True
#用Clock實現來控制動畫的速度
timer=pygame.time.Clock()

while keep_going:
 for event in pygame.event.get(): #監聽事件
 if event.type==pygame.QUIT:
  keep_going=False
 #把圖片繪制到屏幕
 screen.blit(pic,(0,0))
 for i in range(numbers):
 pygame.draw.circle(screen,colors[i],(location_x[i],location_y[i]),sizes[i]) #讓雨滴畫在屏幕上
 location_y[i]=location_y[i]+speed[i]   #雨滴落下,y軸方向

 if location_y[i]>screen_height:    #如果雨滴落到看不見,即超出屏幕的高度
  location_y[i]-=screen_height   #重新設置雨滴的參數
  location_x[i]=random.randint(0,screen_width)
  speed[i] = random.randint(1, 5)
 timer.tick(100)# timer每秒鐘滴答100次,因此幀率為100fps
 pygame.display.update() #刷新屏幕

pygame.quit()

效果展示

運行可以看到下圖,還是有點那個意思的,靜靜地看著五彩斑斕的雨滴落下,一身的疲憊也減輕了不少。

pygame實現煙雨蒙蒙下彩虹雨

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

金门县| 老河口市| 元谋县| 绥滨县| 呼和浩特市| 平顺县| 九龙城区| 彭阳县| 五华县| 含山县| 柞水县| 乐平市| 马公市| 义乌市| 平江县| 华蓥市| 西乌珠穆沁旗| 天柱县| 清苑县| 额尔古纳市| 通州区| 东莞市| 新乡市| 乐业县| 濮阳县| 潢川县| 洪雅县| 汝阳县| 元谋县| 额敏县| 诏安县| 乐安县| 罗平县| 航空| 牡丹江市| 东乡族自治县| 慈利县| 安塞县| 怀仁县| 若羌县| 许昌县|