python - Pyglet 将一组图像绘制成更大的图像

标签 python pyglet

有没有什么办法可以把一大堆小图画成大图,这样只需要移动大图?具体来说,我正在制作一个自上而下的基于图 block 的角色扮演游戏,并且我正在尝试 map 滚动。移动每个图 block 比移动一个大图像慢得多,所以我正在寻找一种方法将所有图 block 绘制到一个图像上(我查看了纹理但找不到任何示例或教程)这是最好的方法吗?可能吗?

最佳答案

你应该看看 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()

关于python - Pyglet 将一组图像绘制成更大的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11814179/

相关文章:

python - 如何在给定条件下生成所有可能的组合以使其更有效?

python - Pyglet 大 Sprite 故障

python - OpenGL:模型在 python 中加载时看起来不正确

python - 如何在 Python 中拆分字符串,直到从右到左出现特定字符之一?

python - Numpy 矢量化以提高性能

python-3.x - Pyglet 中的相机行为

python - 中止陷阱 : 6 when running a python script

python - 如何使用 pyglet 中的函数画线?

python - numpy中任意函数的按行广播

python - Django,保存模型窗体