Documentation
¶
Index ¶
Constants ¶
const ( // ExtensionName is "VK_KHR_bind_memory2" // // https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_bind_memory2.html ExtensionName string = C.VK_KHR_BIND_MEMORY_2_EXTENSION_NAME // ImageCreateAlias specifies that two Image objects created with the same creation parameters // and aliased to the same memory can interpret the contents of the memory consistently each // other // // https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkImageCreateFlagBits.html ImageCreateAlias core1_0.ImageCreateFlags = C.VK_IMAGE_CREATE_ALIAS_BIT_KHR )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BindBufferMemoryInfo ¶
type BindBufferMemoryInfo struct { // Buffer is the Buffer to be attached to memory Buffer core1_0.Buffer // Memory describes the DeviceMemory object to attach Memory core1_0.DeviceMemory // MemoryOffset is the start offset of the region of memory which is to be bound to the Buffer MemoryOffset int common.NextOptions }
BindBufferMemoryInfo specifies how to bind a Buffer to DeviceMemory
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkBindBufferMemoryInfo.html
type BindImageMemoryInfo ¶
type BindImageMemoryInfo struct { // Image is the image to be attached to DeviceMemory Image core1_0.Image // Memory describes the DeviceMemory to attach Memory core1_0.DeviceMemory // MemoryOffset is the start offset of the region of DeviceMemory to be bound to the Image MemoryOffset uint64 common.NextOptions }
BindImageMemoryInfo specifies how to bind an Image to DeviceMemory
type Extension ¶
type Extension interface { // BindBufferMemory2 binds DeviceMemory to Buffer objects // // device - The core1_0.Device which owns the core1_0.DeviceMemory and core1_0.Buffer // // options - A slice of BindBufferMemoryInfo structures describing Buffer objects and memory to bind // // https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkBindBufferMemory2.html BindBufferMemory2(device core1_0.Device, options []BindBufferMemoryInfo) (common.VkResult, error) // BindImageMemory2 binds DeviceMemory to Image objects // // device - The core1_0.Device which owns the core1_0.DeviceMemory and core1_0.Buffer // // options - A slice of BindImageMemoryInfo structures describing Image objects and memory to bind // // https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkBindImageMemory2.html BindImageMemory2(device core1_0.Device, options []BindImageMemoryInfo) (common.VkResult, error) }
Extension contains all the commands for the khr_bind_memory2 extension
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_bind_memory2.html
type VulkanExtension ¶
type VulkanExtension struct {
// contains filtered or unexported fields
}
VulkanExtension is an implementation of the Extension interface that actually communicates with Vulkan. This is the default implementation. See the interface for more documentation.
func CreateExtensionFromDevice ¶
func CreateExtensionFromDevice(device core1_0.Device) *VulkanExtension
CreateExtensionFromDevice produces an Extension object from a Device with khr_bind_memory2 loaded
func CreateExtensionFromDriver ¶
func CreateExtensionFromDriver(driver khr_bind_memory2_driver.Driver) *VulkanExtension
CreateExtensionFromDriver generates an Extension from a driver.Driver object- this is usually used in tests to build an Extension from mock drivers
func (*VulkanExtension) BindBufferMemory2 ¶
func (e *VulkanExtension) BindBufferMemory2(device core1_0.Device, options []BindBufferMemoryInfo) (common.VkResult, error)
func (*VulkanExtension) BindImageMemory2 ¶
func (e *VulkanExtension) BindImageMemory2(device core1_0.Device, options []BindImageMemoryInfo) (common.VkResult, error)