我正在使用pyglet编写游戏(2D)并遇到问题 - 我需要使用单个批次按照y值的顺序将精灵绘制到屏幕上。这是为了实现深度感,例如应首先绘制具有较高y值的对象(意味着它们在屏幕上方较高);自上而下从最高到最低。
我有一个类的字典(没有特定的顺序),以及相同类的列表,按每个类的y值的顺序排序。每次绘制屏幕时都会生成此列表。每个类包含对象的精灵,坐标等作为属性。所有的精灵都在同一批次。
我已经查看了OrderedGroups等选项,但这似乎不是最佳选择 - 我可能需要一个未定义数量的组(它们需要动态生成?)。我找不到很多关于如何以我需要的方式实现它的相关示例。
我想要实现的目标,但使用可能无限数量的层: