Vulkan-Docs/doc/specs/vulkan/man/VkBufferMemoryBarrier.txt

73 lines
2.4 KiB
Plaintext
Raw Normal View History

// Copyright (c) 2014-2016 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
2016-02-16 09:53:44 +00:00
VkBufferMemoryBarrier(3)
========================
Name
----
VkBufferMemoryBarrier - Structure specifying the parameters of a buffer memory barrier.
C Specification
---------------
// refBegin VkBufferMemoryBarrier Structure specifying the parameters of a buffer memory barrier.
2016-02-16 09:53:44 +00:00
The sname:VkBufferMemoryBarrier structure is defined as:
2016-02-16 09:53:44 +00:00
include::../structs/VkBufferMemoryBarrier.txt[]
2016-02-16 09:53:44 +00:00
Members
-------
* pname:sType is the type of this structure.
* pname:pNext is `NULL` or a pointer to an extension-specific structure.
* pname:srcAccessMask is a bitmask of the classes of memory accesses
performed by the first set of commands that will participate in
the dependency.
* pname:dstAccessMask is a bitmask of the classes of memory accesses
performed by the second set of commands that will participate in
the dependency.
* pname:srcQueueFamilyIndex is the queue family that is relinquishing
ownership of the range of pname:buffer to another queue, or
ename:VK_QUEUE_FAMILY_IGNORED if there is no transfer of ownership.
* pname:dstQueueFamilyIndex is the queue family that is acquiring
ownership of the range of pname:buffer from another queue, or
ename:VK_QUEUE_FAMILY_IGNORED if there is no transfer of ownership.
* pname:buffer is a handle to the buffer whose backing memory is affected
by the barrier.
* pname:offset is an offset in bytes into the backing memory for
pname:buffer; this is relative to the base offset as bound to the buffer
(see flink:vkBindBufferMemory).
* pname:size is a size in bytes of the affected area of backing memory for
pname:buffer, or ename:VK_WHOLE_SIZE to use the range from pname:offset
to the end of the buffer.
2016-02-16 09:53:44 +00:00
Description
-----------
2016-02-16 09:53:44 +00:00
include::../validity/structs/VkBufferMemoryBarrier.txt[]
2016-02-16 09:53:44 +00:00
See Also
--------
2016-02-16 09:53:44 +00:00
Change log for July 15, 2016 Vulkan 1.0.21 spec update: * Bump API patch number and header version number to 21 for this update. Github Issues: * Clarify how <<features-supported-sample-counts,sample count queries>> relate to the limits in slink:VkPhysicalDeviceLimits. (public issue 185). * Clarify in the <<interfaces-iointerfaces,Shader Input and Output Interfaces>> section that shader output variables have undefined values until the shader writes to them (public issue 240). * Specify the implicit value of image parameters that cannot be set in slink:VkSwapchainCreateInfo::pname:flags, pname:imageType, pname:mipLevels, pname:samples, pname:tiling, and pname:initialLayout (public issue 243). * Make use of code:NULL and code:VK_NULL_HANDLE consistent in the VK_KHR_swapchain extension (public issue 276). Internal Issues: * Clarify that presenting an image to a display surface swapchain applies the display surface's mode, and that destroying a display surface swapchain may reset the display's mode, in the VK_KHR_display_swapchain extension (internal issue 247). * Better describe what a slink:VkSurfaceKHR is, and that creating one does not set a mode, in the VK_KHR_display extension. This is a round-about way of pointing out that mode setting is not covered by the extension, but rather is performed as a side effect of presentation (internal issue 247). * Add more valid usage statements to flink:vkQueuePresentKHR command when the VK_KHR_display_swapchain extension is present (internal issue 247). * Add more includes to the VK_KHR_swapchain extension to better document interactions with VK_KHR_display_swapchain (internal issue 247). * Clarify restrictions on location aliasing in the <<fxvertex,Fixed-Function Vertex Processing>> section (internal issue 370). * Add mathematical description of blitting to flink:vkCmdBlitImage, and link it to the <<textures,Image Operations>> chapter. Use mathematical notation for ranges of texel coordinates in the <<textures,Image Operations>> chapter. Fixed miscellaneous validity statements for flink:vkCmdBlit and slink:VkImageBlit (internal issue 382). Other Commits: * Added a valid usage rule to flink:VkGraphicsPipelineCreateInfo that the ename:VK_PRIMITIVE_TOPOLOGY_PATCH_LIST topology must only be used when tessellation shaders are used. * Expand the style guide into a formal "Procedures and Conventions" document. Add a API Naming Conventions section, move most of the API Specification Appendix C (Layers and Extensions) content into the new document, and define the resulting procedures as mandatory (where relevant). This more clearly separates use vs. specification of Vulkan APIs. * Update vk_platform.h to handle 32-bit ARMv8 binaries. * Various minor cleanups to the Makefile and build process.
2016-07-16 02:05:43 +00:00
elink:VkAccessFlags, slink:VkBuffer, basetype:VkDeviceSize, elink:VkStructureType, flink:vkCmdPipelineBarrier, flink:vkCmdWaitEvents
2016-02-16 09:53:44 +00:00
Document Notes
--------------
2016-02-16 09:53:44 +00:00
For more information, see the Vulkan Specification at URL
2016-02-16 09:53:44 +00:00
https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#VkBufferMemoryBarrier
2016-02-16 09:53:44 +00:00
This page is extracted from the Vulkan Specification.
Fixes and changes should be made to the Specification,not directly.
2016-02-16 09:53:44 +00:00
include::footer.txt[]