Текстуры пимунка

Я пишу небольшую демонстрацию, используя pymunk и pygame, где я хочу применить "текстуры" к фигурам в пространстве pymunk. У меня есть класс под названием PhysicsSprite, который берет изображение и формирует его в правильную форму и пытается нарисовать его в правильном месте. К сожалению, смещение по y не работает, и когда я пытаюсь изменить его, вращение портится.

Это мой класс физики спрайт

class BaseSprite():
def __init__(self, img, size = None):
    self.imgFile = img
    self.img     = image.load(img)
    self.size    = size

    #if size:
    #    self.img = transform.smoothscale(self.img, self.size)



class PhysicsSprite(BaseSprite):
    def __init__(self, img, body, size = None):
        BaseSprite.__init__(self, img, size)

        self.body = body

        for shape in self.body.shapes:
            vertices = shape.get_vertices()
            maxX = 0
            for vert in vertices:
                vert += self.body.position
                vert[0] = 500 - vert[0]
                if vert[0] > maxX: maxX = vert[0]

            self.surf = Surface([500, 500], SRCALPHA)

            polygon(self.surf, [255, 255, 255], vertices)

        self.surf.blit(self.img, self.body.position - [maxX, 0], None, BLEND_RGB_MULT)
        self.img = self.surf




    def calculateOffset(self, img):
        size = img.get_size()
        return [size[0] / 2, size[1] / 2]

    def getImage(self):
        angle = degrees(self.body.angle) + 180
        img   = transform.rotate(self.img, angle)

        offset = self.calculateOffset(img)

        position = self.body.position
        position = flipY(self.body.position, 500)
        position = [position[0] - offset[0], position[1] - offset[1]]



        return img, position

def flipY(pos, size):
    return [pos[0], -pos[1] + size]

В каждом игровом цикле вызывается функция getImage, чтобы получить новое повернутое изображение и его положение, которое будет скрыто. Это то, что на самом деле происходит введите описание изображения здесь

0 ответов

Другие вопросы по тегам