Python Pygame真的很差吗?
这个问题以前曾出现过,我对此没有采取任何措施。所以基本上我有一个简单的程序,但它落后了很多。这不是我的电脑,因为我的其他pygame程序工作正常。不管怎样,请再告诉我我做错了什么。代码如下:Python Pygame真的很差吗?,python,pygame,Python,Pygame,这个问题以前曾出现过,我对此没有采取任何措施。所以基本上我有一个简单的程序,但它落后了很多。这不是我的电脑,因为我的其他pygame程序工作正常。不管怎样,请再告诉我我做错了什么。代码如下: import pygame pygame.init() white = (255,255,255) black = (0,0,0) window_width = 800 window_height = 600 gameDisplay = pygame.display.set_mode((800,60
import pygame
pygame.init()
white = (255,255,255)
black = (0,0,0)
window_width = 800
window_height = 600
gameDisplay = pygame.display.set_mode((800,600))
clock = pygame.time.Clock()
def gameLoop():
characterx = 500
characterx_change = 0
charactery = 500
charactery_change = 0
while True:
characterimg = pygame.image.load('Character.png')
for event in pygame.event.get():
if event.type == pygame.QUIT:
False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
characterx_change += -20
charactery_change += 0
if event.key == pygame.K_RIGHT:
characterx_change += 20
charactery_change += 0
if event.key == pygame.K_UP:
charactery_change += -20
characterx_change += 0
if event.key == pygame.K_DOWN:
charactery_change += 20
characterx_change += 0
characterx += characterx_change
charactery += charactery_change
gameDisplay.fill(white)
gameDisplay.blit(characterimg, (characterx,charactery))
pygame.display.update()
clock.tick(15)
gameLoop()
pygame.quit()
quit()
不要在
while
循环中加载图像-您可以在while
之前加载一次。顺便说一句:始终添加标记python
。更多的人将看到问题a,代码将突出显示,因此更具可读性。顺便说一句:您可以使用勾选(25)
-人眼需要大约25-30 FPS才能看到平滑的动画。除了不重复从文件加载图像外,您可能还应该添加.convert()
或.convert\u alpha()
加载image.characteristmg=pygame.image.load('Character.png')后(前者比后者快得多,但后者处理透明度)应该在while循环之外(在pygame初始化tho后执行),然后还对其调用“convert()”:characteristmg=pygame.image.load('Character.png')。convert_alpha()不要在while
循环中加载图像-您可以在while
之前加载一次。顺便说一句:始终添加标记python
。更多人将看到问题A,代码将突出显示,以便更具可读性。顺便说一句:您可以使用勾选(25)
-人眼需要25-30 FPS才能看到平滑的动画。除了不从文件中重复加载图像外,您可能还应该添加.convert()
或.convert_alpha()
(前者比后者快得多,但后者处理透明度)加载image.characteristmg=pygame.image.load('Character.png')后应在while循环之外(在pygame初始化tho后执行),然后还对其调用“convert()”:characteristmg=pygame.image.load('Character.png')。convert_alpha()