Commit Graph

8 Commits

Author SHA1 Message Date
Jon Leech e2d981c029 Change log for July 10, 2016 Vulkan 1.0.20 spec update:
* Bump API patch number and header version number to 20 for this
    update.

Github Issues:

  * Replaced existing reference pages by text automatically extracted
    from the specification source, or generated from vk.xml in some
    cases. This isn't a complete solution for the reference pages, but
    puts them in a much better state. The ref pages (only) are now
    placed under a CC BY open source license, which is more current than
    the obsolete license previously used.

    Further improvements to the pages should not edit them directly, but
    instead concentrate on the specification source from which the ref
    pages are being extracted (public issues 44, 55, 160; internal issue
    389).
2016-07-10 18:13:41 -07:00
Jon Leech e5b16130fe Change log for July 1, 2016 Vulkan 1.0.19 spec update:
* Bump API patch number and header version number to 19 for this
    update.

Github Issues:

  * Clarified how flink:vkGetImageSubresourceLayout interacts with image
    layouts (public issue 247).
  * Remove ename:VK_IMAGE_LAYOUT_PREINITIALIZED from valid usage rule for
    slink:VkImageMemoryBarrier::pname:oldLayout. It is only valid if it is
    the current layout (public issue 248).
  * Modify valid usage for flink:vkBindBufferMemory so implementations are
    free to require a different backing memory size than the buffer size
    (public issue 251).
  * Clarify that filtering rules for flink:vkCmdBlitImage always apply, and
    are usually no-ops if the formats are the same (public issue 253).
  * Remove 'non-sparse' from description of
    flink:vkGetBufferMemoryRequirements and
    flink:vkGetImageMemoryRequirements (public issue 257).
  * Remove ename:VK_ERROR_LAYER_NOT_PRESENT error code from
    flink:vkCreateDevice (public issue 259).
  * Change "must not" to "should not" in constraint on when
    flink:vkAcquireNextImageKHR is called in the +VK_KHR_swapchain+ branch
    (public issue 262).
  * Change type of flink:vkCmdUpdateBuffer::pname:pData from
    basetype:uint32_t* to basetype:void* (public issue 263).
  * Change should: to must: in description of where additional segments are
    placed in the <<[tessellation-tessellator-spacing,Tessellator Spacing>>
    section (public issue 264).

Internal Issues:

  * Normalize the language of all the compute shader built-ins in the
    <<interfaces-builtin-variables,Built-in Variables>> section (internal
    issue 323).
  * Remove definition of presentation engine internal queue lengths
    associated with ename:VK_PRESENT_MODE_FIFO_KHR and
    ename:VK_PRESENT_MODE_FIFO_RELAXED_KHR in the <<Window System
    Integration,wsi>> chapter (internal issue 374).
  * The language of a Note was too broad, and implied that loaders for a
    given OS would statically export functions for WSI extensions that
    weren't relevant to (or supported on) the OS. Also, removed
    "Khronos-provided" since the Android loader isn't (internal issue 380)

Other Commits:

  * Add ename:VK_INCOMPLETE to list of return values for
    flink:vkGetPipelineCacheData. Spec says this value is returnable, but it
    wasn't listed in the error codes.
  * Fix "correponds" typo in member definitions for
    slink:VkSubpassDescription.
2016-06-30 19:34:54 -07:00
Jon Leech 5de77cf663 Change log for June 10, 2016 Vulkan 1.0.16 spec update:
* Bump API patch number and header version number to 16 for this
    update.

Github Issues:

  * Clarify that integer border values are meant to be 0/1, and that
    integer texture lookups are sign-extended in the
    <<textures-format-conversion,Format Conversion>> and
    <<textures-texel-replacement,Texel Replacement>> sections (public
    issue 52).
  * Add logic to generate spec boilerplate without using the 'git'
    command-line client, needed when building from a tarball or another
    source of the Vulkan tree rather than a cloned git repo. Remove
    boilerplate as part of 'clean' target (public issue 195).
  * Document that color writes and clears to unused attachments have no
    effect for slink:VkClearAttachment and
    elink:VkColorComponentFlagBits (public issue 198).
  * Fixed flink:vkCmdExecuteCommands validity statement for
    sname:VkCommandBufferInheritanceInfo::pname:framebuffer. If used, it
    must match the framebuffer in the current renderpass instance
    (public issue 226).
  * Added valid usage language to require for all functions that set
    dynamic state that the currently bound graphics pipeline has the
    corresponding dynamic state enabled (public issue 235).

Internal Issues:

  * Clarify for flink:vkEnumerateInstanceExtensionProperties, in the
    <<extended-functionality-instance-extensions-and-devices, Instance
    Extensions and Device Extensions>> section, and in the
    <<glossary,Glossary>> section when functionality should be exposed
    as an instance extension, as a device extension, or as both
    (internal issue 109).
  * Place WorkgroupSize in alphabetical order in the
    <<interfaces-builtin-variables,Built-in Variables>> section
    (internal issue 323).
  * Corrects valid usage in vkEndRenderPass to only affect primary
    render passes, as secondaries may be entirely within a render pass,
    and should be able to be ended (previous language disallowed that)
    (internal issue 338).
  * Fix relational operator from <= to >= in the
    <<features-extentperimagetype,Allowed Extent Values>> section
    (internal issue 343).
  * Disallow recursion under SPIR-V entry points in the
    <<spirvenv-module-validation,Validation Rules within a Module>>
    section (internal SPIR-V issue 37).

Other Commits:

  * Use standard Python ElementTree package instead of lxml.etree in
    header / validation layer / include autogeneration from XML,
    reducing platform dependencies.
2016-06-10 15:49:54 -07:00
Jon Leech 75bbb5f4d5 Change log for April 29, 2016 Vulkan 1.0.12 spec update:
* Bump API patch number and header version number to 12 for this
    update.

Github Issues:

  * Change valid usage statements intended to be "sub-points" to
    be actual sub-points (public issue 66).
  * Replace double negation in description of
    slink:VkRenderPassBeginInfo::pname:pClearValues (based on public
    merge 142).
  * Cleanup minor typos in spec, ref pages and XML, including those
    proposed in public pull requests 144, 150, 151, 167, 168, 181, and
    186.
  * Use *strict subset* in describing the partial order of memory
    property types for slink:VkMemoryType, and update the style guide
    accordingly (public issue 190).
  * Fix various "a image" -> "an image" typos (public issue 191).
  * Note in the <<fundamentals-validusage,Valid Usage>> and
    <<extensions-interactions,Extension Interactions>> sections that
    structures defined by extensions which may be passed in structure
    chains using the ptext:pNext member must: include initial
    ptext:sType and ptext:pNext members (public issue 192).

Internal Issues:

  * Remove duplicate language from the description of the pname:fence
    parameter to flink:vkQueueSubmit and improve validity language
    (internal issue 91).
  * Added documentation for "optional" attribute to XML readme.tex/pdf
    (internal issue 149).
  * Clarify the host-side data validity rules and behavior of
    flink:vkFlushMappedMemoryRanges and
    flink:vkInvalidateMappedMemoryRanges (internal issue 266).

Other Commits:

  * Added clarification to flink:vkCmdFillBuffer regarding the use of
    ename:VK_WHOLE_SIZE.
  * Fixed and documented implementation of "validextensionstructs"
    attribute. in XML processing scripts and readme.tex/pdf.
  * Add missing validity statements to flink:vkResetEvent and
    flink:vkCmdResetEvent.
  * Fix validity for the
    ename:VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag.
    Correct all the draw/dispatch commands to mention optimally tiled
    images as well as linear tiled images, and say image VIEWS instead
    of images. Add validity statement to flink:vkCmdBlitImage
  * Replace the {apiname} macro with hardcoded "Vulkan", now that we've
    committed to that name.
  * Add the VK_AMD_rasterization_order extension to vk.xml.
2016-04-29 14:53:46 +02:00
Jon Leech 6db51e9241 Change log for April 22, 2016 Vulkan 1.0.11 spec update:
* Bump API patch number and header version number to 11 for this
    update.

Github Issues:

  * Clarify the WSI extension language by switching from the fuzzier
    "ownership" language to more-consistent "acquire" language (public
    issue 117).
  * Clarify that memory barriers apply to all commands in the dependency
    chains in the flink:vkGetRenderAreaGranularity command and the
    <<synchronization-execution-and-memory-dependencies,Execution And
    Memory Dependencies>> section (public issue 132).
  * Clarify that a queue family is a set of queues in the
    <<fundamentals-execmodel,Execution Model>> section (public issue
    166).
  * Removed requirement from valid usage language that
    VkPresentInfoKHR::waitSemaphoreCount must be greater than 0 (public
    issue 171).
  * Fix broken internal links, describe structures consistently, use
    consistent style for SPIR-V codewords, and tag normative terms that
    were missing asciidoc tags (public issue 183 and ancillary
    markup/normative language fixes).
  * Fix typos for slink:VkPhysicalDeviceLimits member names in
    slink:VkImageCreateInfo validity language (public issue 184).

Internal Issues:

  * Document that the requested patch version number specified as part
    of slink:VkApplicationInfo::pname:apiVersion is ignored when
    creating an instance (internal issue 176).
  * Clarify handling of extension structs in the
    <<fundamentals-validusageValid Usage>> section (internal issue 254).
  * Update required slink:VkImageFormatProperties::pname:maxMipLevels to
    be limited to the maximum allowed mipmap pyramid size corresponding
    to the actual maximum supported size for the format (internal issue
    256).
  * Modify the <<features-extentperimagetype,Allowed Extent Values Based
    On Image Type>> section so the allowed maximum extent is the maximum
    image dimension supported for each dimension of the type of texture
    being queried (internal issue 257).
  * Clarify in the <<spirvenv-module-validation,Validation Rules within
    a Module>> section that at least one of the code:LocalSize execution
    mode or code:WorkgroupSize decoration is required for each compute
    shader entry point in a shader module (internal issue 279).
  * Add validity rules for formats in flink:vkCmdClearColorImage and
    flink:vkCmdClearDepthStencilImage (internal issue 283).
  * Clarify that slink:VkImageFormatProperties::pname:maxResourceSize is
    an upper bound, and that it may not be possible to create an image
    anywhere near that size (internal issue 284).

Other Commits:

  * Fix various minor markup errors reported by validation scripts.
  * Change copyright from Khronos Free Use License to Apache 2.0 license
    on relevant script/XML/header files. This does not affect the
    specification source copyright.
2016-04-21 01:08:38 -07:00
Jon Leech 3b32b240f6 Change log for April 15, 2016 Vulkan 1.0.10 spec update:
* Bump API patch number and header version number to 10 for this
    update.

Github Issues:

  * Slightly tweak the <<memory-allocation,Host Memory>> allocator language
    so that an application wrapping the standard C alloc/free/realloc
    functions is still correct - the previous language was too strong with
    regards to freeing memory. Also made certain scenarios clearer - an
    implementation may now continue without error if an allocation failed
    and it is able to continue correctly (public issue 21).
  * Require that etext:VK_*_CREATE_SPARSE_BINDING_BIT is set when the
    corresponding etext:VK_*_CREATE_SPARSE_RESIDENCY_BIT is used, in the
    <<sparsememory-miptail,Mip Tail Regions>> section and related commands
    flink:vkCreateBuffer and flink:vkCreateImage (public issue 84).
  * Update the <<features,Features, Limits, and Formats>> chapter to clarify
    interactions between optional features and dynamic state for the
    pname:depthBiasClamp and pname:wideLines features (public issue 89).
  * Describe the code:WorkgroupSize builtin in the
    <<interfaces-builtin-variables,Built-In Variables>> section, and update
    the <<compute-shaders,Compute Shaders>> section to further clarify how
    to set the number of workgroups to execute in a compute shader (public
    issue 145).
  * Use the term *image subresource* everywhere instead of *subresource*,
    except for the special case of *host-accessible subresource*, which may
    be either an image subresource or buffer range (public issue 120)
  * Add a note to the <<features,Features, Limits, and Formats>> section
    about extensibility of structures (Public issue 165).
  * Fix return code flink:vkAcquireNextImageKHR when the timeout parameter
    is 0 to ename:VK_NOT_READY instead of ename:VK_TIMEOUT (public issue
    170).
  * Fix typo in slink:VkLayerProperties::pname:apiVersion field (public
    issue 172).

Internal Issues:

  * Fix a few minor internally-detected typos.
  * Minor formatting tweaks to pseudocode in the <<resources,Resource
    Creation>> chapter (internal issue 179).
  * Fix typo in the definition of point sampling for
    elink:VkCullModeFlagBits (internal issue 268).
2016-04-14 01:58:49 -07:00
Jon Leech 1f875738fd Change log for March 10, 2016 Vulkan 1.0.6 spec update:
* Bump API patch number and header version number to 6 for this
    update.

Github Issues:
  * Define 'invocation group' for compute and graphics shaders. Cleanup
    definition and use of 'workgroup', and add glossary entries (public
    issue 1).
  * Various minor editorial fixes (public issue 33).
  * Clarify locations for block members in the
    &lt;&lt;interfaces-iointerfaces-locations,Location Assignment>>
    section (public issue 45).
  * Editorial fixes for &lt;&lt;commandbuffer-allocation,Command Buffer
    Allocation>> section (public issues 54, 59).
  * Clarify behavior of depth test in the &lt;&lt;fragops-depth,Depth
    Test&gt;&gt; section (public issues 80, 81).
  * Remove discussion of return codes from
    flink:vkGetPhysicalDeviceSparseImageFormatProperties and
    flink:vkGetImageSparseMemoryRequirements, which don't return values
    (public issue 82).
  * Allow flink:vkCmdDrawIndirect and flink:vkCmdDrawIndexedIndirect
    pname:drawCount of 0, as well as 1, when the multiDrawIndirect
    feature is not supported (public issue 88).
  * Remove confusing wording in the &lt;&lt;features-limits,Limits>>
    section describing the slink:VkPhysicalDeviceLimits
    pname:minTexelBufferOffsetAlignment,
    pname:minUniformBufferOffsetAlignment, and
    pname:minStorageBufferOffsetAlignment members as both minimums and
    maximums (public issue 91).
  * Clarified that only the RGB components should be affected in places
    where sRGB is referred to in the spec, such as ASTC formats. Minor
    re-wording to avoid "color space" when actively incorrect, now that
    we refer to the Data Format Spec which actually makes a distinction
    between color space and transfer function (public issue 94).
  * Treat pname:pPropertyCount == 0 consistently in
    flink:vkEnumerateInstanceLayerProperties and
    flink:vkEnumerateDeviceLayerProperties (public issue 99)
  * Cleanup minor editorial issues in chapters 14-17 (public issue 100).
  * Clarify definition of flink:vkEnumerateInstanceExtensionProperties
    and flink:vkEnumerateDeviceExtensionProperties (public issue 101).
  * Define the flink:vkEnumerateInstanceExtensionProperties and
    flink:vkEnumerateDeviceExtensionProperties pname:pLayerName
    parameter to be a pointer to a null-terminated UTF-8 string (public
    issue 101).
  * Rearrange "Missing information" references in mandatory format
    tables (public issue 101).
  * Clarify that the enumerated extensions returned by
    flink:vkEnumerateInstanceExtensionProperties and
    flink:vkEnumerateDeviceExtensionProperties will only include
    extensions provided by the platform or extensions implemented in
    implicitly enabled layers (public issue 101).
  * Miscellaneous editorial fixes. Include the Vulkan spec patch number
    in the PDF title. Fix label on &lt;&lt;fig-non-strict-lines,Non
    strict lines>> diagram. Use more easily distinguished symbols in
    tables in the &lt;&lt;features-required-format-support,Required
    Format Support>> section. Don't require FQDNs used as layer names be
    encoded in lower case if not possible, in the
    &lt;&lt;extensions-naming-conventions, Extension and Layer Naming
    Conventions>> section (public issues 101, 119, 121).

Internal Issues:
  * Fixed excessive spacing in tables in XHTML (internal issue 18).
  * Clarify that ename:VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT
    applies to secondary command buffers. Previously spec only referred
    to the members of pname:pCommandBuffers being affected by this bit.
    Added a separate slink:VkSubmitInfo Valid Usage restriction
    specifying that ename:VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT
    also applies to any secondary command buffers that are recorded into
    the primary command buffers in pname:pCommandBuffers (internal issue
    106).
  * Clarify that slink:VkDeviceCreateInfo::pname:pEnabledFeatures can be
    NULL (internal issue 117).
  * Remove "the value of" where it is redundant (e.g. speaking of an API
    parameter, struct member, or SPIR-V variable, but not when speaking
    of color components) (internal issue 175).
  * Forced patch version to always be 0 in the header. Add a
    "VK_API_VERSION_<major>_<minor>" macro for people to use to do the
    right thing. Add a VK_HEADER_VERSION which captures the header
    release number independent of the spec patch number (internal issue
    176).
  * Correct description of
    slink:VkPipelineShaderStageCreateInfo::pname:pName to "a pointer to
    a null-terminated UTF-8 string" (internal issue #197).

Other Commits:
  * Updated DataFormat spec reference to the new date for revision 5 of
    that spec.
  * Fixed KEEP option (to retain LaTeX intermediate files) in the
    Makefile to be included when edited there, as well as set on the
    command line.
  * Reserve and add "VK_IMG_filter_cubic" to the registry, and implement
    script functionality to add and remove validity from existing
    functions. Includes schema and readme changes.
  * Update GL_KHR_vulkan_glsl so push_constants do not have descriptor
    sets.
2016-03-10 17:33:02 -08:00
Jon Leech d204ac2f69 Vulkan 1.0 branch 1.0 for release 2016-02-16 01:53:44 -08:00