寻找下载网站或任何可用于将精灵分开的工具。请让我知道你有什么想法我一直在使用一个名为sprite splitter的下载,但它不再适用于包含10个以上图像的精灵表...谢谢!
应该添加香港专业教育学院一直使用spriters-resources获取我的精灵表。
答案 0 :(得分:2)
在pygame中,您可以加载一个具有多个精灵的图像,然后使用它来创建许多子表面并将其用作分离的图像。因此,您不必在许多文件中拆分一个工作表。
你可以使用pygame函数将任何子表面保存为分隔文件。
修改强>
用于动画的一张图片。
import pygame
import pygame.locals
pygame.init()
screen = pygame.display.set_mode((300,300))
# one image -> 7 subsurfaces
sheet = pygame.image.load('explosed-sprite.png').convert_alpha()
imgs = []
for x in range(7):
imgs.append( sheet.subsurface((20*x,0,20,20)) )
current_img = 0
# clock - FPS
clock = pygame.time.Clock()
# mainloop
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_ESCAPE:
running = False
# next image modulo 7
current_img = ( current_img + 1 ) % 7
screen.fill( (0,0,0) )
screen.blit( imgs[current_img], (150-10,150-10) )
pygame.display.flip()
clock.tick(12)
# save subsurfaces as separated images
for x in range(7):
name = 'frame_' + str(x) + '.png'
pygame.image.save( imgs[x], 'frame_' + str(x) + '.png' )
print name, 'saved'
# the end
pygame.quit()
使用python脚本将此图像另存为explosed-sprite.png
。