如果我想在我的SFML窗口中显示精灵和/或纹理,并在按下按键时移动它,我最好使用OpenGL将精灵绘制到屏幕上(如果可能,我只是开始研究这个问题)或者使用SFML会更好吗?
答案 0 :(得分:2)
这是一个难以回答的问题,因为它取决于各种各样的事情。
OpenGL(开放图形库)是一个巨大而先进的跨平台API,用于渲染2D和3D图形。 API主要致力于使用GPU来实现硬件加速渲染。
SFML(简单快速多媒体库)是一种便携且易于使用的2D渲染API。 API运行在OpenGL之上,因此SFML也是硬件加速的。
编辑:SFML是一种多媒体,便携且易于使用的API,适用于各种用途。 API由5个不同的模块组成,用于控制 - 系统,窗口,图形,音频和网络。
首先,您需要问自己一些问题。
如果您使用过这两种API中的任何一种,您只需选择使用您已知道的API即可。因为将知识附加到你已经知道的图书馆,通常比学习一些全新的东西容易得多。
如果您不了解OpenGL或SFML,那么选择可能会有点困难,但请记住以下几点。
当你第一次了解OpenGL时,它真的很容易。虽然在OpenGL中了解大部分或全部事物都不知道,但需要时间!
因此,如果你想从简单的东西开始使用SFML,因为加载Textures并使用它比使用纯OpenGL容易得多,因为在OpenGL中你需要创建自己的Texture类来处理纹理的加载和创建。在SFML中,已经存在纹理类以及加载它们的方式等。
答案 1 :(得分:0)
基本上SFML使用OpenGL,SFML只是一种更简单的方式来访问OpenGL实现的一些功能