代码之家  ›  专栏  ›  技术社区  ›  Scetra

使用不带X11的Vulkan创建功能性Linux GUI[关闭]

  •  2
  • Scetra  · 技术社区  · 7 年前

    我想创建自己的用户界面,运行在一个基本的Linux发行版上。GUI将使用Vulkan呈现,我希望在没有X11的情况下获得用户输入。GUI将在操作系统加载后立即呈现,并成为主要上下文。

    问题 :

    • 这样做意味着什么?
    • Vulkan不适合这种情况吗?
    2 回复  |  直到 7 年前
        1
  •  1
  •   krOoze    7 年前

    Vulkan的设计是无头的。至少可以在其中渲染一些内容,然后将其复制到原始字节(即使用 vkMapMemory VK_KHR_external_*

    不过,Vulkan只是一个渲染API。它是 开窗系统 .是的 X11(或Wayland、Mir或其他)的竞争对手。这样做意味着使用类似Wayland的替代方案(如果您的牛肉是专门针对X11的)或实现您自己的。

    我如何获得用户输入?

    也不在Vulkan的范围内。同样,可能意味着重新实现类似X11的东西。

    如何配置GUI应用程序以正确加载?

    如果你指的是新的应用程序,那么这是特定于你打算创建的窗口管理器API的,不是吗?

    这对于这个场景来说可能是好的(可能比OpenGL更合适)。但这可能也是这个想法最简单的方面。最难的是Vulkan做的所有事情

        2
  •  0
  •   user149341 user149341    7 年前

    你不能,因为这不是Vulkan的工作方式。

    在Linux上,Vulkan是OpenGL的替代品,而不是X11。(类似地,在Windows上,它替代DirectX或OpenGL,而不是 Desktop Window Manager