@hackage vulkan2.1.0.0
Bindings to the Vulkan graphics API.
Installation
Dependencies (3)
- base >=4.9 && <5
- cpphs
- vector-sized >=0.1 && <1.1 Show all…
Dependents (10)
@hackage/keid-core, @hackage/VulkanMemoryAllocator, @hackage/dear-imgui, @hackage/acme-everything, @hackage/keid-frp-banana, @hackage/keid-ui-dearimgui, Show all…
Package Flags
xlib
(on by default)
Enable xlib specific extensions
xlib_xrandr
(on by default)
Enable xlib_xrandr specific extensions
xcb
(on by default)
Enable xcb specific extensions
wayland
(on by default)
Enable wayland specific extensions
mir
(on by default)
Enable mir specific extensions
android
(on by default)
Enable android specific extensions
win32
(on by default)
Enable win32 specific extensions
vi
(on by default)
Enable vi specific extensions
ios
(on by default)
Enable ios specific extensions
macos
(on by default)
Enable macos specific extensions
safe-foreign-calls
(off by default)
Do not mark foreign imports as unsafe. This means that
callbacks from Vulkan to Haskell will work. If you are using
these then make sure this flag is enabled.
Vulkan
Haskell bindings to the Vulkan graphics API
Building
This package requires GHC 8.0 or higher due to the use of the
DuplicateRecordFields and Strict language extensions.
Current Status
All the core Vulkan 1.0 and 1.1 functionality is here as well as all the extensions.
This is currently a 64 bit only library.
Examples can be found here
Differences from the vulkan API
Bools are strongly typed, this doesn't prevent any valid usage apart from
passing the numeric literals 0 and 1 to functions.
Ideas
TODO: Move these to issues:
Wrappers for passing in size, pointer pair Wrappers for passing in null terminated list
withXXX functions for create/destroy pairs.
Haddock tables soon: https://github.com/haskell/haddock/pull/718