SDL 2.0.22 带来 Wayland 改进和新功能

SDL_标志

发布新版 SDL 2.0.22, 对 Wayland 进行了各种兼容性改进的版本,以及各种改进等。

不熟悉 SDL 库的你应该知道, 提供诸如硬件加速的2D和3D图形输出之类的工具,输入处理,音频播放,通过OpenGL / OpenGL ES进行3D输出以及许多其他相关操作。

SDL 类似于 DirectX, 可以说 DirectX 模拟是 OpenGL。 DirectX 也适用于输入设备和声音。 当 Loki Software 开始在 Linux 上移植 AAA 游戏时,它用 OpenGL 替换了 Direct3D,并且没有替代所有其他东西,因为目前即使在 X11 API 中使用 WinAPI 也很难在“X”中编写应用程序,但在 WinAPI 中使用 DirectDraw 已经一个问题,这就是 SDL 是如何诞生的。

SDL 2.0.22 的主要新特性

在呈现的这个新版本中, Wayland 协议兼容性改进,所以最初, 计划默认切换到使用 Wayland 协议da 在同时支持 Wayland 和 X11 的环境中, 但由于问题 与NVIDIA游戏和驱动程序中的Wayland相关, 决定推迟过渡 (在带有 XWayland 组件的 Wayland 环境中,输出仍然使用 X11 协议。)

要使用 Wayland, 必须设置环境变量 "SDL_VIDEODRIVER=wayland" 在启动应用程序之前,或在调用 SDL_Init() 之前将函数 'SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11")' 添加到代码中。 使用 Wayland 编译至少需要 libwayland-client 1.18.0。

另一个引人注目的变化是 添加了一组函数来操作矩形区域 (确定点的出现,删除,比较,合并等),基于浮点数的坐标和大小进行操作。

对于 Linux,添加了 SDL_HINT_X11_WINDOW_TYPE 标志 在 Windows 上设置 _NET_WM_WINDOW_TYPE 参数,还为 Linux 添加了 SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR 标志,以便将 libdecor 与支持 xdg-decoration 的复合服务器一起使用。

对于 Android,SDL_AndroidSendMessage() 函数用于向 Java SDL 控制器发送任意命令。

其他变化 脱颖而出:

  • 添加了 SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE 标志以在最后一个应用程序窗口关闭时启用 SDL_QUIT 事件的传递。
  • 添加了 SDL_HINT_JOYSTICK_ROG_CHAKRAM 特征来像操纵杆一样处理 ROG Chakram 鼠标。
    添加了 SDL_RenderGetWindow() 函数以获取与 SDL Renderer 关联的窗口。
  • 添加了 SDL_IsTextInputShown() 函数来检查文本输入区域是否显示。
  • 添加了 SDL_ClearComposition() 函数以在不禁用输入法 (IME) 的情况下清除文本输入区域。
  • 添加了 SDL_TEXTEDITING_EXT 事件以处理长文本输入区域和 SDL_HINT_IME_SUPPORT_EXTENDED_TEXT 标志以启用此事件。
  • 添加了 SDL_HINT_MOUSE_RELATIVE_MODE_CENTER 标志以在启用相对模式时启用鼠标限制到窗口的中心而不是整个窗口。
  • 单击鼠标按钮时启用自动鼠标捕获。 建议禁用 SDL_HINT_MOUSE_AUTO_CAPTURE 属性。

最后 如果您有兴趣了解更多有关它的信息 这个新版本,您可以检查 以下链接中提供了详细信息。

如何在Linux上安装Simple DirectMedia Layer?

在Linux上安装此库非常简单,因为大多数Linux发行版都在其存储库中包含该库。

在这种情况下 Debian,Ubuntu及其衍生的发行版,您只需运行 终端中的以下命令:

sudo apt-get install libsdl2-2.0
sudo apt-get install libsdl2-dev

而对于那些是你的人Arch Linux suarios我们只需要运行以下命令:

sudo pacman -S sdl2

对于那些是 Fedora,Centos,RHEL或基于它们的任何发行版, 他们只需要运行以下命令:

sudo yum install SDL2
sudo yum install SDL2-devel

对于所有其他Linux发行版,他们可以搜索软件包“ sdl”或“ libsdl”进行安装或下载并编译源代码。

他们这样做:

git clone https://hg.libsdl.org/SDL SDL
cd SDL
mkdir build
cd build
./configure
make
sudo make install

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。