使用SDL2进行软件开发

时间:2015-08-04 15:32:18

标签: c++ cross-platform sdl-2 software-design

今天早上我正在网上冲浪,我读到了关于c ++的SDL2游戏编程库。看看SDL2如何工作,我想知道是否可以使用像SDL2这样的游戏编程库来开发实际的软件应用程序。为什么或为什么不能真正帮助我理解为什么你会这样做的原因。谢谢!

2 个答案:

答案 0 :(得分:2)

  

Simple DirectMedia Layer是一个跨平台开发库,旨在通过OpenGL和Direct3D提供对音频,键盘,鼠标,操纵杆和图形硬件的低级访问。

我强调低级别

  • 图形:您可以做的唯一事情是绘制像素或图像/纹理。除非你对它们进行编码,否则你将无法使用菜单,按钮等。可能会有点油腻。

  • 鼠标:您只能访问事件,这意味着您需要自行检查点击哪个区域,并在按下按钮时自行监控

    < / LI>
  • 键盘:同样的事情,你只知道按下/释放触摸的时间。例如,文本输入可以是油漆。

这样做的结果是使用它的应用程序是那些不关心菜单,按钮等并且需要对键盘/鼠标事件进行低级访问的应用程序:视频游戏是其中很重要的部分。它

  

它被视频播放软件,模拟器和流行游戏使用。

所以,如果通过软件开发你的意思是可以像记事本一样复杂,那就忘了SDL吧! Qt,WxWidgets,GTK等是您的朋友。

一个反例可能是一个科学研究计划,你通常不关心人体工程学,有时更喜欢低级别的访问。

答案 1 :(得分:1)

首先,SDL2不是游戏编程库&#34;它是一个多媒体库。但当然它可以用于游戏开发。

  

我想知道是否可以使用SDL2等[多媒体库]开发实际的软件应用程序。

但是如果您正在使用C ++,那么您想要使用SFML而不是SDL,因为SDL只有一个C接口,它与现代C ++并不能很好地结合在一起。