简体   繁体   English

EGL的Vulkan配件

[英]Vulkan Fitting with EGL

There seems to be lot of buzz regarding Vulkan the new graphics API - https://www.khronos.org/vulkan 似乎有很多议论关于福尔康新的图形API - https://www.khronos.org/vulkan

My question is related to - How well existing EGL interface will accommodate the Vulkan API ?, With Vulkan new stateless approach, Will EGL have to be replaced with Vulkan based alternative ? 我的问题与-现有的EGL接口将如何很好地适应Vulkan API一起使用?采用Vulkan新的无状态方法,是否必须将EGL替换为基于Vulkan的替代方法?

The three APIs that have been, until now, accessible from EGL (OpenGL, OpenGL ES and OpenVG), work with per-thread contexts , how about Vulkan ? 到目前为止,可以从EGL(OpenGL,Op​​enGL ES和OpenVG)访问的三个API可以与每个线程上下文一起使用,Vulkan怎么样?

EGL is explicitly thread-safe. EGL是明确的线程安全的。

This means that through an extension of Vulkan you could bind a EGLSurface as a rendertarget in a pipeline or use it as a parameter for a bufferswap. 这意味着通过扩展Vulkan,您可以将 EGLSurface绑定为 EGLSurface中的渲染目标,也可以将其用作bufferswap的参数。 This EGLSurface would be created through the normal way and the eglQueryString(display, EGL_CLIENT_APIS) of the creating EGLDisplay must then include "Vulkan". EGLSurface将通过常规方式创建,然后创建的 EGLDisplayeglQueryString(display, EGL_CLIENT_APIS)必须包含“ Vulkan”。

\n

The context bit is trickier though. 上下文位比较棘手。 I expect that there will be a dummy (zero state) context used to mark the thread as using Vulkan to render. 我希望将有一个虚拟(零状态)上下文用于将线程标记为使用Vulkan进行渲染。

EGL will not even come into the picture. EGL甚至不会出现。 You get the instance from scratch using the loader. 您可以使用加载器从零开始获取实例。 And there is a set of extensions that will take a window handle from the OS and provide a vkSwapchain with several vkImage that you can render to and send to the monitor. 并且有一组扩展将从操作系统获取窗口句柄,并提供带有多个vkImage的vkSwapchain,您可以将其渲染并发送到监视器。

No EGL with Vulkan. 没有Vulkan的EGL。 New stuff will be there Vulkan Window System Integration Vulkan Window System Integration将会出现新的东西

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

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