我正在为我的第一个深度 Pyglet 项目开发一种 2D Minecraft 克隆,但我遇到了一个问题。每当我在屏幕上有相当数量的块时,帧速率就会急剧下降。
这是我的渲染方法:我使用字典,键是元组(表示块的坐标),项目是纹理。
我遍历整个字典并渲染每个块:
for key in self.blocks:
self.blocks[key].blit(key[0] * 40 + sx,key[1] * 40+ sy)
Run Code Online (Sandbox Code Playgroud)
PS sx 和 sy 是屏幕滚动的坐标偏移量
我想知道是否有一种方法可以更有效地渲染每个块。