pygame 中的 Pixilating 精灵
Pixilating sprite in pygame
在每次更新中,我的精灵会根据变量 (OBJECT_X) 自行调整大小,但是当 OBJECT_X 发生变化时,精灵会变得更加像素化。我曾尝试在每次更新时重新加载图像,但这确实滞后于游戏。有什么建议么?
import pygame
screen = pygame.display.set_mode((1000, 600))
background = pygame.Surface((1000, 600))
OBJECT_SIZE = 500
Tree = pygame.image.load("Resourses/Objects/Tree.png").convert_alpha()
while True:
Tree = pygame.transform.scale(Tree, (OBJECT_SIZE, OBJECT_SIZE)
screen.blit(Tree, 500, 300))
pygame.display.flip()
如果您想避免质量损失,请不要修改原始 pygame。Surface/image。 transform.scale
函数 returns 原始图像的新缩放版本(在缩放期间不会被修改),因此您可以为其指定一个新名称:
TREE = pygame.image.load("Resourses/Objects/Tree.png").convert_alpha()
while True:
scaled_tree = pygame.transform.scale(TREE, (OBJECT_SIZE, OBJECT_SIZE)
screen.blit(scaled_tree, 500, 300))
PEP 8建议常量使用大写字母,变量使用小写字母。
在每次更新中,我的精灵会根据变量 (OBJECT_X) 自行调整大小,但是当 OBJECT_X 发生变化时,精灵会变得更加像素化。我曾尝试在每次更新时重新加载图像,但这确实滞后于游戏。有什么建议么?
import pygame
screen = pygame.display.set_mode((1000, 600))
background = pygame.Surface((1000, 600))
OBJECT_SIZE = 500
Tree = pygame.image.load("Resourses/Objects/Tree.png").convert_alpha()
while True:
Tree = pygame.transform.scale(Tree, (OBJECT_SIZE, OBJECT_SIZE)
screen.blit(Tree, 500, 300))
pygame.display.flip()
如果您想避免质量损失,请不要修改原始 pygame。Surface/image。 transform.scale
函数 returns 原始图像的新缩放版本(在缩放期间不会被修改),因此您可以为其指定一个新名称:
TREE = pygame.image.load("Resourses/Objects/Tree.png").convert_alpha()
while True:
scaled_tree = pygame.transform.scale(TREE, (OBJECT_SIZE, OBJECT_SIZE)
screen.blit(scaled_tree, 500, 300))
PEP 8建议常量使用大写字母,变量使用小写字母。