Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 当看到游戏中的物体时,游戏会变慢_Python_Pygame - Fatal编程技术网

Python 当看到游戏中的物体时,游戏会变慢

Python 当看到游戏中的物体时,游戏会变慢,python,pygame,Python,Pygame,我正在制作一个Flappy Bird游戏,每当小鸟独自一人且画面中没有管道时,游戏速度就会快得多,我试着降低屏幕分辨率,但还是一样。当鸟在管道之间移动时,游戏以正常速度进行,并在之后立即减速 尺寸: 背景-700x1000, 伯德-100x56, 管道-150x525, 反向管道-150x525 import pygame import random pygame.init() win = pygame.display.set_mode((700, 1000)) pygame.display

我正在制作一个Flappy Bird游戏,每当小鸟独自一人且画面中没有管道时,游戏速度就会快得多,我试着降低屏幕分辨率,但还是一样。当鸟在管道之间移动时,游戏以正常速度进行,并在之后立即减速

尺寸: 背景-700x1000, 伯德-100x56, 管道-150x525, 反向管道-150x525

import pygame
import random 
pygame.init()

win = pygame.display.set_mode((700, 1000))
pygame.display.set_caption("Flappy Bird")


pipe_x = 1000
pipe_y = 500
movement = 0


x = 200
y = 500
gravity = 3
rotation = 30
rv_pipe = pygame.image.load(r'pipe_reversed.png')
pipe = pygame.image.load(r'pipe.png')
bg = pygame.image.load(r'background.jpg')
bird = pygame.image.load(r'bird.png')
icon = pygame.image.load(r'icon.jpg')

pygame.display.set_icon(icon)



while True:
    win.blit(bg, (0,0))
    pygame.time.delay(1)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit() 
        keys = pygame.key.get_pressed() 

        if keys[pygame.K_ESCAPE]:
               pygame.quit() 

        if event.type == pygame.KEYDOWN:
               gravity -= 10
               if rotation > 70:
                   rotation = 45
               
    #gravity
    gravity += 0.1
    y += gravity
    if gravity >= 4:
        gravity = 4
    if gravity <= -3:
        gravity = -3
    
    #rotation  
    if rotation >= 20:
        rotation = 20
    if rotation <= -90:
        rotation = -90
    if gravity < 0: 
        rotation += 2
    if gravity > 1: 
        rotation -= 0.5
    
    #pipe 
    pipe_x -= 1
    if pipe_x == -150:
        pipe_x = 700
    


    bird2 = pygame.transform.rotate(bird, rotation)
    print (gravity)

    win.blit(pipe, (pipe_x, pipe_y))    
    win.blit(rv_pipe, (pipe_x, pipe_y - 700))
    win.blit(bird2, (x, y))
    pygame.display.update()
    
导入pygame
随机输入
pygame.init()
win=pygame.display.set_模式((7001000))
pygame.display.set_标题(“Flappy Bird”)
管道x=1000
管道y=500
移动=0
x=200
y=500
重力=3
旋转=30
rv_pipe=pygame.image.load(r'pipe_reversed.png')
pipe=pygame.image.load(r'pipe.png')
bg=pygame.image.load(r'background.jpg')
bird=pygame.image.load(r'bird.png')
icon=pygame.image.load(r'icon.jpg')
pygame.display.set_图标(图标)
尽管如此:
温·布利特(背景,(0,0))
pygame.time.delay(1)
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
pygame.quit()
keys=pygame.key.get_pressed()
如果键[pygame.K_ESCAPE]:
pygame.quit()
如果event.type==pygame.KEYDOWN:
重力-=10
如果旋转>70:
旋转=45
#重力
重力+=0.1
y+=重力
如果重力>=4:
重力=4
如果重力=20:
旋转=20
如果旋转1:
旋转-=0.5
#烟斗
管道x-=1
如果管道x==-150:
管道x=700
bird2=pygame.transform.rotate(鸟,旋转)
打印(重力)
win.blit(管道,(管道x,管道y))
win.blit(rv_管道,(管道x,管道y-700))
win.blit(bird2,(x,y))
pygame.display.update()

最好设置时钟滴答声频率来解决此问题

这与其说是答案,不如说是评论。