在Swing中显示vulkan渲染

时间:2018-06-21 14:37:24

标签: java jogl vulkan

我目前正在寻找一种在Swing上下文中显示Vulkan渲染的方法

我已经注意到,JOGL的GLJPanel允许我获得基础的原生表面,这是为Vulkan提供要渲染的表面所必需的,我以为可以在其中显示Vulkan,但我当我调用vkGetPhysicalDeviceSurfaceFormat时,在vulkan-1.dll中获得EXCEPTION_ACCESS_VIOLATION

显然我不认为会这么简单,但是仍然令我惊讶的是,当我处理一个本机表面时,会发生此问题,而本机表面例如由glfw生成时效果很好

有什么我想念的吗?

1 个答案:

答案 0 :(得分:1)

  

JOGL允许我获取基础的原生表面,这是将曲面提供给Vulkan渲染所需要的

...

  

vkGetPhysicalDeviceSurfaceFormat

您是否建议您将JOGL所获得的表面信息直接传递给vkGetPhysicalDeviceSurfaceFormat?那行不通。您需要使用列出的here中的一种表面创建功能,并且需要确保在创建实例时,您请求了适当的扩展,即VK_KHR_SURFACE_EXTENSION_NAME以及您需要的平台特定扩展,例如{{1 }}或VK_KHR_WIN32_SURFACE_EXTENSION_NAME

不包括您正在使用的代码,即可创建表面并将其传递给VK_KHR_ANDROID_SURFACE_EXTENSION_NAME,因此无法进行更多的诊断。