在pygame中继承Sprite类和使用组是否使游戏更快?



这是否有助于游戏的表现?或者我应该直接把图片抹掉?在pygame官方纪录片中,它说"它(pygame.sprite.Sprite)是可视游戏对象的基类。"one_answers"它(pygame.sprite.Group)是雪碧对象的简单容器。"现在以子弹为例,我有两个选项:
1。继承类并在触发

2时将其添加到组中。不要手动继承和创建一个列表,并在某些触发时将其添加到列表中。

我对一个群体的看法是,它会毁掉群体中的一切。那么这个和screen.blit()在每一类中的区别是什么呢?

如果没有差异,那么pygame.surface.GroupSingle确实没有任何用处。所以我不确定我应该用什么
(U+1F937)

pygame.sprite模块使代码更短,更容易理解,并为您提供pygame.sprite.spritecollide,pygame.sprite.LayeredUpdates等功能。底层代码经过了高度优化,可以与pygame所基于的SDL 2一起使用。然而,这背后并没有神奇的推动力。pygame的部分是用C/c++编写的(参见GitHub - pygame)(. 所以没有python for循环在后台为每个精灵调用.blit。使用群组绘制精灵比使用pythonfor-loop和blit绘制精灵更有效。无论如何,如果你知道你在做什么,你可以编写有效的代码没有pygame.sprite模块。
pygame.surface.GroupSingle并非无用。它可以像任何其他组一样使用,也可以与pygame.sprite.spritecollide等一起使用。

相关内容

最新更新