All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[3.1.1-v1.2.198] - 2022-10-24 vk
- Define
wl_display
andwl_surface
as pointers.
[3.1.0-v1.2.198] - 2022-10-24 vk
vk
now exposes a platform dependent typenon-dispatchable-handle
(see #10).
- Translation of
immutable-samplers
member ofdescriptor-set-layout-binding
is now fixed (see #11).
[3.0.1-v1.2.198] - 2022-05-07 vk
- Translation of all members representing fixed sized arrays now uses
cffi:lisp-array-to-foreign
on the slot pointer directly.
[3.0.0-v1.2.198] - 2022-02-06 vk
- Structure types now have pretty printers.
- Errors and conditions are exposed by the
vk-errors
package, which doesn't shadow any symbols inCL-USER
. - All version constants and functions packing or unpacking version numbers in the C API are now represented in
vulkan
andvk
.
- Functions in
vk
which return structure types with apNext
member that can be used to query extension-specific information now take an instance of such a structure as optional input argument. - Handle types are now wrapped in
vk
. This affects all function taking handles as arguments or returning handles. vk:make-api-version
takes an additional argumentvariant
.- All types and keywords with an
-i-os
suffix now have an-ios
suffix instead. - All wrapper functions in
vk
now use a local hash map to store intermediate pointers during translation instead of the global one provided byvk-alloc
.
- Functions in
vk
now accept arrays as arguments (they arecoerce
d to lists, though). - Returned-only structure type slots in
vk
are not filled by default bymake
-style constructors, and not translated if they arenil
. KHR
extension functions that are not part of the WSI extensions are now treated as extension functions.uint
struct members that are split up into multiple smaller members (e.g. theuint32_t
composed ofuint32_t instanceCustomIndex:24
anduint32_t mask:8
inVkAccelerationStructureInstanceKHR
) are now correctly translated.
[2.2.0-v1.2.189] - 2021-09-15 vk
vk
now hasmake
-style constructors for all its classes.%vk
andvk
now exposeextension-loader-instance
andextension-loader-device
.
- Fixed
with
-style wrappers which callvk
functions (with-descriptor-sets
&with-command-buffers
).
[2.1.1-v1.2.182] - 2021-08-27 vk
- Fixed default arguments in
with
-style wrapper invk-utils
such that they can be dumped into.fasl
files.
[2.1.0-v1.2.182] - 2021-08-27 vk
vk-utils
now exportswith
-style wrappers for most handles in the Vulkan API.
- Fixed translation of VkPipelineMultisampleCreateInfo.pSampleMask.
[2.0.1-v1.2.179] - 2021-06-05 vk
- Fixed translation of unions when used as function arguments directly.
[2.0.0-v1.2.178] - 2021-05-12 vk
- Experimental NVIDIA extensions now have their proper suffix
-NVX
instead of-NV-X
.
[1.0.1-v1.2.177] - 2021-05-01 vk
- Fixed typos in README.
- Fixed
extension-loader
argument for extension functions without other optional arguments. - Fixed optional arguments for functions filling buffers (e.g.
get-query-pool-results
). - Fixed functions returning multiple non-array values.
- Fixed functions returning an array and a non-array value.
- Fixed functions enumerating two arrays.
- Fixed style warning in
vk-alloc:foreign-allocate-and-fill
. - Refactored
vk-alloc:with-foreign-allocated-object
such that SBCL can infer the correct type of thecontent
argument. - Give symbols in macros more meaningful names.