如何将 SDL_Surface 嵌入到 GTK+ 中

Alb*_*nek 5 gtk sdl

我正在使用 SDL 编写游戏,但想使用 GTK+ 进行控制。因此,我需要将 SDL_Surface 嵌入到 GTK+ 中。我该怎么做?

编辑

该游戏将是一个基于图块的传输模拟器(如OpenTTD),但我不会使用 SDL 来显示游戏 UI(屏幕截图),而是使用 GTK+。

(我发现 OpenTTD 的基于 SDL 的 GUI 相当笨拙,因为它没有与操作系统集成,因此不支持复制粘贴、使用箭头和 Tab 键进行控制等功能。)

在此输入图像描述

小智 1

由于不太了解您当前正在尝试做什么,我怀疑 SDL 和 GTK+ 可能有很多重叠,因此我不确定同时使用两者会有多大用处。

编写游戏时,任何工具包的目的通常都是简单地与窗口系统对话并管理输入,因为所有绘图都是使用 GL 完成的。

如果您还计划使用 GTK+ 进行控制,我建议仅使用 GTK+,而不是混合使用两者。

对于 GTK+,使用 GL 的最佳方法是使用GtkGLArea 小部件,它为您提供了一个画布,可以在其中使用标准 GL 调用进行绘制。

如果您不打算使用 GL 而只是想在软件中绘图,那么适合该目的的小部件将是GtkDrawingArea

通过加入服务器#gnome-games 上的 IRC 频道,irc.gnome.org您可能会发现比我更有知识的人可以更好地指导您。:)