0
剛開始接觸pygame的(Python 2.7版,Win7的,I3),看着教程這裏:http://www.pygame.org/docs/tut/intro/intro.htmlpygame只在鼠標活躍在遊戲窗口時更新?
當我運行的代碼示例:
import sys, pygame
pygame.init()
size = width, height = 320, 240
speed = [2, 2]
black = 0, 0, 0
screen = pygame.display.set_mode(size)
ball = pygame.image.load('ball.bmp')
ballrect = ball.get_rect()
while 1:
for event in pygame.event.get():
if event.type == pygame.QUIT: sys.exit()
ballrect = ballrect.move(speed)
if ballrect.left < 0 or ballrect.right > width:
speed[0] = -speed[0]
if ballrect.top < 0 or ballrect.bottom > height:
speed[1] = -speed[1]
screen.fill(black)
screen.blit(ball, ballrect)
pygame.display.flip()
...從空閒或PowerShell中的當鼠標在遊戲窗口上移動時,遊戲窗口只會更新。我期待着這個球只會自行反彈。由於pygame/SDL處理圖形模式的方式,這是否與鼠標位置相關的性能?它與硬件有關嗎?有沒有辦法通過代碼提高性能?我想用pygame得到衆所周知的球,這看起來很奇怪。謝謝。
編輯:
while 1:
for event in pygame.event.get():
if event.type == pygame.QUIT: sys.exit()
ballrect = ballrect.move(speed)
if ballrect.left < 0 or ballrect.right > width:
speed[0] = -speed[0]
if ballrect.top < 0 or ballrect.bottom > height:
speed[1] = -speed[1]
screen.fill(black)
screen.blit(ball, ballrect)
pygame.display.flip()
heh ...(尷尬) –
它發生在所有的時間或其他。 :) – emorphus