Skip to content

Commit

Permalink
Change log for August 12, 2016 Vulkan 1.0.24 spec update:
Browse files Browse the repository at this point in the history
  * Bump API patch number and header version number to 24 for this update.

Github Issues:

  * Fix type mismatch in swapchain image equivalency table (public issue
    289).
  * Fix a copy-and-paste error in the description of
    flink:vkGetSwapchainImagesKHR::pname:pSwapchainImages, that said it
    was an array of ``sname:VkSwapchainImageKHR structures'' instead of
    an array of ``sname:VkImage handles'' (public issue 292).
  * Specify that ename:VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT is only valid
    for ename:VK_IMAGE_TYPE_2D images (public issue 293).
  * Add a valid usage statement to flink:vkCmdExecuteCommands saying
    that when called outside a render pass instance, the secondary
    command buffers must not have been created with the
    ename:VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT (public issue
    297).
  * Fix description of +VK_NO_STDINT_H+ in the
    <<boilerplate-platform-macros,platform macros>> section (public
    issue 314).

Internal Issues:

  * Normalize the language for the remaining built-in variables in the
    <<interfaces-builtin-variables,Built-In Variables>> section. Fix
    code:FrontFacing and code:HelperInvocation, as they should be of
    code:boolean type rather than code:integer (internal issue 323).
  * Clarify that when ename:VK_WHOLE_SIZE is used for a buffer
    descriptor range, the effective range must still be within the max
    buffer range (internal issue 426).
  * Clarify that command buffers and descriptor sets are allocated
    rather than created. Also clarify when the recording state of a
    command buffer is relevant (internal issue 434).
  • Loading branch information
oddhack committed Aug 12, 2016
1 parent 2b7c8f3 commit 2dd2b35
Show file tree
Hide file tree
Showing 21 changed files with 609 additions and 365 deletions.
37 changes: 37 additions & 0 deletions ChangeLog.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1139,3 +1139,40 @@ Other Commits:
sname:VkPipelineInputAssemblyStateCreateInfo are described to match
their order in the structures.

-----------------------------------------------------

Change log for August 12, 2016 Vulkan 1.0.24 spec update:

* Bump API patch number and header version number to 24 for this update.

Github Issues:

* Fix type mismatch in swapchain image equivalency table (public issue
289).
* Fix a copy-and-paste error in the description of
flink:vkGetSwapchainImagesKHR::pname:pSwapchainImages, that said it
was an array of ``sname:VkSwapchainImageKHR structures'' instead of
an array of ``sname:VkImage handles'' (public issue 292).
* Specify that ename:VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT is only valid
for ename:VK_IMAGE_TYPE_2D images (public issue 293).
* Add a valid usage statement to flink:vkCmdExecuteCommands saying
that when called outside a render pass instance, the secondary
command buffers must not have been created with the
ename:VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT (public issue
297).
* Fix description of +VK_NO_STDINT_H+ in the
<<boilerplate-platform-macros,platform macros>> section (public
issue 314).

Internal Issues:

* Normalize the language for the remaining built-in variables in the
<<interfaces-builtin-variables,Built-In Variables>> section. Fix
code:FrontFacing and code:HelperInvocation, as they should be of
code:boolean type rather than code:integer (internal issue 323).
* Clarify that when ename:VK_WHOLE_SIZE is used for a buffer
descriptor range, the effective range must still be within the max
buffer range (internal issue 426).
* Clarify that command buffers and descriptor sets are allocated
rather than created. Also clarify when the recording state of a
command buffer is relevant (internal issue 434).
2 changes: 1 addition & 1 deletion doc/specs/vulkan/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ GENDEPENDS = api/timeMarker validity/timeMarker hostsynctable/timeMarker
COMMONDOCS = $(CHAPTERS) $(GENINCLUDE) $(GENDEPENDS)
# A generated included file with the spec version, date, and git commit
SPECVERSION = specversion.txt
SPECREVISION = 1.0.23
SPECREVISION = 1.0.24
SPECREMARK =

# Spec targets
Expand Down
2 changes: 1 addition & 1 deletion doc/specs/vulkan/api/defines/VK_HEADER_VERSION.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ ifdef::doctype-manpage[]
endif::doctype-manpage[]
------------------------------------------------------------------------------
// Version of this file
#define VK_HEADER_VERSION 23
#define VK_HEADER_VERSION 24

------------------------------------------------------------------------------
11 changes: 6 additions & 5 deletions doc/specs/vulkan/appendices/boilerplate.txt
Original file line number Diff line number Diff line change
Expand Up @@ -272,11 +272,12 @@ dname:VKAPI_ATTR or dname:VKAPI_CALL, depending on the compiler.

// @refBegin VK_NO_STDINT_H - control definition of +<stdint.h>+ types

If the +VK_NO_STDINT_H+ macro is defined at compile time, it indicates that
the system +<stdint.h>+ does not define some required integer types, and
+vk_platform.h+ will declare fallback definitions of those types. This is
included for backwards compatibility with very old compilers, such as
Microsoft Visual Studio version 2008 or before.
If the +VK_NO_STDINT_H+ macro is defined by the application at compile time,
extended integer types required by +vulkan.h+, such as +uint8_t+, must: also
be defined by the application. Otherwise, +vulkan.h+ will not compile. If
+VK_NO_STDINT_H+ is not defined, the system +<stdint.h>+ is used to define
these types, or there is a fallback path when Microsoft Visual Studio
version 2008 and earlier versions are detected at compile time.

// @refEnd VK_NO_STDINT_H

Expand Down
2 changes: 1 addition & 1 deletion doc/specs/vulkan/appendices/glossary.txt
Original file line number Diff line number Diff line change
Expand Up @@ -394,7 +394,7 @@ Image View::

Immutable Sampler::
A sampler descriptor provided at descriptor set layout creation time,
and that is used for that binding in all descriptor sets created from
and that is used for that binding in all descriptor sets allocated from
the layout, and cannot be changed.

Implicitly-Enabled Layer::
Expand Down
30 changes: 16 additions & 14 deletions doc/specs/vulkan/chapters/cmdbuffers.txt
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ include::../api/enums/VkCommandPoolCreateFlagBits.txt[]
only be reset in bulk by calling fname:vkResetCommandPool.
* pname:queueFamilyIndex designates a queue family as described in section
<<devsandqueues-queueprops,Queue Family Properties>>. All command
buffers created from this command pool must: be submitted on queues
buffers allocated from this command pool must: be submitted on queues
from the same queue family.

include::../validity/structs/VkCommandPoolCreateInfo.txt[]
Expand Down Expand Up @@ -327,18 +327,21 @@ be inherited from the primary command buffer:

include::../api/structs/VkCommandBufferInheritanceInfo.txt[]

* pname:renderPass is a sname:VkRenderPass object that must: be
<<renderpass-compatibility, compatible>> with the one that is bound when
the sname:VkCommandBuffer is executed if the command buffer was
allocated with the
ename:VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT set.
* pname:renderPass is a sname:VkRenderPass object defining which
render passes the sname:VkCommandBuffer will be
<<renderpass-compatibility, compatible>> with and can: be executed
within. If the sname:VkCommandBuffer will not be executed within a
render pass instance, pname:renderPass is ignored.
* pname:subpass is the index of the subpass within pname:renderPass that
the sname:VkCommandBuffer will be rendering against if it was allocated
with the ename:VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT set.
* pname:framebuffer refers to the sname:VkFramebuffer object that the
sname:VkCommandBuffer will be rendering to if it was allocated with
the ename:VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT set. It can:
be dlink:VK_NULL_HANDLE if the framebuffer is not known.
the sname:VkCommandBuffer will be executed within. If the
sname:VkCommandBuffer will not be executed within a render pass
instance, pname:subpass is ignored.
* pname:framebuffer optionally refers to the sname:VkFramebuffer
object that the sname:VkCommandBuffer will be rendering to if it is
executed within a render pass instance. It can:
be dlink:VK_NULL_HANDLE if the framebuffer is not known, or if the
sname:VkCommandBuffer will not be executed within a render pass
instance.
+
[NOTE]
.Note
Expand Down Expand Up @@ -543,8 +546,7 @@ primary command buffer with the command:
include::../api/protos/vkCmdExecuteCommands.txt[]

* pname:commandBuffer is a handle to a primary command buffer that the
secondary command buffers are submitted to, and must: be in the
recording state.
secondary command buffers are executed in.
* pname:commandBufferCount is the length of the pname:pCommandBuffers
array.
* pname:pCommandBuffers is an array of secondary command buffer handles,
Expand Down
16 changes: 15 additions & 1 deletion doc/specs/vulkan/chapters/descriptorsets.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1433,7 +1433,21 @@ include::../api/structs/VkDescriptorBufferInfo.txt[]
* pname:range is the size in bytes that is used for this descriptor
update, or ename:VK_WHOLE_SIZE to use the range from pname:offset to the
end of the buffer.

+
--
[NOTE]
.Note
====
When using ename:VK_WHOLE_SIZE, the effective range mustnot: be larger
than the maximum range for the descriptor type
(<<features-limits-maxUniformBufferRange, maxUniformBufferRange>> or
<<features-limits-maxStorageBufferRange, maxStorageBufferRange>>). This
means that ename:VK_WHOLE_SIZE is not typically useful in the common
case where uniform buffer descriptors are suballocated from a buffer
that is much larger than pname:maxUniformBufferRange.
====
--
+
For ename:VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC and
ename:VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC descriptor types,
pname:offset is the base offset from which the dynamic offset is applied and
Expand Down
Loading

0 comments on commit 2dd2b35

Please sign in to comment.