繁体   English   中英

vulkan api会处理窗口创建吗?

[英]Will vulkan api handle window creation?

我听说过vulkan会统一不同操作系统的初始化。 这是否意味着vulkan创建窗口,处理鼠标/键盘事件,以便我可以避免使用特定于os的编程?

它不会。 窗口创建将是特定于平台的,并且WSI扩展将允许您将窗口链接到可以推送到屏幕的可渲染图像。

根据已经给出的演示文稿中收集的信息,我希望您将使用特定于平台的WSI扩展来为您的窗口创建Swapchain。

然后,每当你想将一个框架推到屏幕上时,你需要从交换链中获取一个可呈现的图像; 渲染它然后呈现它。

从幻灯片109向前看这个幻灯片包

不,Vulkan是用于访问GPU的低级API。 它不处理窗口和输入。 事实上,它可以很容易地以“无头”的方式使用而根本没有视觉输出。

可能不是,Vulkan API是一个很像OpenGL的图形库。

在Linux中的位置Ubuntu OpenGL用于Unity中桌面的动画效果,可以用Vulkan替换以获得更好的性能。

但我不认为Windows会改变它,因为他们拥有自己的DirectX图形库,如果他们使用别的东西而不是他们自己的软件会很奇怪。

大多数将从Vulkan中受益的应用程序是Games和其他使用2D或3D渲染的软件。 大多数游戏很可能会改为Vulkan,因为它是跨平台的,因此他们将获得更多的用户,这相当于更多的利润。

Khronos(Vulkan API开发人员)也推出了大量将应用程序从OpenGL或DX12移植到Vulkan的工具,因此需要从软件开发人员那里进行较少的开发/移植。

所以...可能会创建窗口。 (虽然窗口后面的代码是CPU端,但是在屏幕上绘制窗口的库可能正在使用Vulkan) - 这与您正在处理的操作系统,发行版和版本有很大不同。

鼠标/键盘事件,不,因为这不需要任何图形计算,但CPU计算。

窗口(框架)是一般桌面管理器控件; 您可以在客户区显示vulkan应用程序的内容,否则vulkan必须提供桌面管理器的界面以创建窗口(GUI库)。 有人可以简单地创建一个设备上下文(Windows中的DC,类似于X服务器),然后手动管理“vulkan app”,就像没有chrome(无框架)的窗口游戏一样,但现在这将是一项很大的工作。

旧手Windows开发人员圣经解决设备上下文和渲染等许多方面: 编程Windows®,第五版(开发人员参考)第5版 非常好的阅读和从不可知论的观点提供了大量的承载知识松散适用于大多数系统。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM