2016-02-08 2 views
0

Я пытаюсь повернуть спрайт для моей игры, написанной в PygamePygame, пытаясь повернуть спрайт

Я не получаю ошибку CONSOL, но мой спрайт оставаться точно так же и не вращается :(?

Любая идея

perso.image = pygame.image.load("sprites/[shadow]main_char_sprite.png").convert_alpha() 
perso.image = pygame.transform.scale(perso.image, (53,60)) 
perso.rect = perso.image.get_rect() 
perso.rect.x = 200 
perso.rect.y = 200 
perso.add(perso_group) 

while 1: 
    screen.fill(white) 
    pygame.transform.rotate(perso.image,30) ########not working :(





    all_group.add(statique_group, zombie_group, perso_group) 
    all_group.draw(screen) 


    pygame.display.flip() 

ответ

1

documentation для функций преобразования говорит:

Все это весело ctions берут поверхность, чтобы работать и возвращать новую поверхность с результатами.

Таким образом, вы должны присвоить возвращаемое значение rotate переменной:

perso.image = pygame.transform.rotate(perso.image,30) 

Однако документация также говорит:

Некоторые из преобразований считаются разрушительными. Это означает, что каждый раз, когда они выполняются, они теряют пиксельные данные. Общими примерами этого являются изменение размера и поворот. По этой причине лучше ретранслировать исходную поверхность, чем преобразовывать изображение несколько раз.

Таким образом, вы можете сохранить оригинал и вместо этого увеличить угол поворота.

Смежные вопросы