有没有办法将一大堆小图像绘制成一个更大的图像,所以只需要移动大图像?具体来说,我正在制作一个自上而下的基于瓷砖的 rpg,并且我正在尝试使用地图滚动。移动每个图块比移动一个大图像要慢得多,所以我正在寻找一种将所有图块绘制到一个图像上的方法(我查看了纹理,但找不到任何示例或教程)这是最好的方法吗?有可能吗?
问问题
1787 次
1 回答
6
您应该检查AbstractImage.blit_into()(以及此类的衍生物)。这是一个基本上可以满足您需求的示例,其中 img1.png 和 img2.png 只是 pyglet 源代码示例文件夹中的 pyglet.png 的副本:
import pyglet
window = pyglet.window.Window()
image = pyglet.image.Texture.create(256,128)
img1 = pyglet.image.load('img1.png')
img2 = pyglet.image.load('img2.png')
image.blit_into(img1,0,0,0)
image.blit_into(img2,128,0,0)
@window.event
def on_draw():
window.clear()
image.blit(0,0)
pyglet.app.run()
于 2012-08-05T06:00:09.243 回答