-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Please provide Stuffs needed cube to run on wayland linux #64
Comments
@neurlang mind creating a simple PR pls? :) |
Please don't merge yet, Big problem is there are now two vkCreateInstance, the old one CreateInstance and a new one I renamed as WaylandCreateInstance. The behavior of the old one needs to support both cases. |
I'd say the old CreateInstance should not be auto generated anymore, and it should iterate InstanceCreateInfo.PpEnabledExtensionNames to see if there's string "VK_KHR_wayland_surface\000". When that string is found, it could trigger the wayland behavior. But I'm no expert on the matter. |
Hi, I think there is some confusion between I don't see that create instance function has anything specific to Wayland. So, the platform-dependent workflow is like this:
Within VK package I am providing some platform-dependent code:
I think the approach of having the support of Wayland is following:
|
Also, there is a high-level abstraction over platform init that I made: Specifically, your App has to implement a single interface, for example, there is an Android app that creates own surface: So Asche app is platform-agnostic, but your specific app that implements the interface can initialize platform-dependent surfaces. |
Yeah I didn't do anything platform specific in vkCreateInstance. |
What remains needed is the following:
Optionally also these two vars, they are difficult to make in go: var NilPipeline = (*Pipeline)(unsafe.Pointer(&C.nilPipeline)) |
Done. vkGetPhysicalDeviceFeatures2 also isn't strictly needed, and will be added by other's effort. Pls have a look: |
Any feedback for the PR? Any possible problems? Is the approach of setting the build define VK_USE_PLATFORM_ANDROID_KHR using -tags wayland ok with you? Users who don't use this tag will be unaffected by this merge. And vkGetPhysicalDeviceFeatures2 can be done later by upgrading to newer vulkan. |
Everything looks fine, I merged! :) |
Recently I got running the go-wayland-cube demo on Nvidia on Wayland Ubuntu Linux. This fixed the last big gpu vendor (Intel, Amd worked fine).
I've used egl-wayland-1.1.11, and driver was 515.65.01
The things missing from your awesome vulkan package to make this work are available in the vulkan/ subdir of my repo github.com/neurlang/wayland/tree/master/vulkan
Please consider adding those things to your repo, because it's really vulkan related and should be provided by you. Thanks.
The text was updated successfully, but these errors were encountered: