Commit Graph

7 Commits

Author SHA1 Message Date
Jon Leech 1d67e47f14 Change log for June 4, 2017 Vulkan 1.0.51 spec update:
* Bump API patch number and header version number to 51 for this update.

Github Issues:

  * Add Valid Usage statement to flink:vkCmdResolveImage to require that
    source and destination image formats match (public issue 492).
  * Specify that a code:char* parameter must: be a valid null-terminated
    string in the <<fundamentals-implicit-validity, implicit valid usage>>
    section (public issue 494).
  * Removed unnecessary VU for slink:VkPhysicalDeviceFeatures which is
    covered by ename:VK_ERROR_FEATURE_NOT_PRESENT already (public issue
    496).
  * Clarify valid usage of pname:pQueueFamilyIndices in
    slink:VkBufferCreateInfo, slink:VkImageCreateInfo, and
    slink:VkSwapchainCreateInfoKHR (public issue 501).
  * Document that dependencies of enabled extensions must also be enabled in
    the <<extended-functionality-extensions-dependencies, Extension
    Dependencies>> section (public issue 507).

Internal Issues:

  * Change slink:VkMappedMemoryRange valid usage to allow pname:offset +
    pname:size == size of the allocation. Also, if ename:VK_WHOLE_SIZE is
    used, require the end of the mapping to be aligned to a multiple of
    pname:nonCoherentAtomSize (internal issue 611).
  * Add issue to `VK_KHR_win32_surface` about reusing window objects from a
    different graphics API or Vulkan ICD (internal issue 639).
  * Require locations on user in/out in `GL_KHR_vulkan_glsl` (internal issue
    783).
  * Added version info to the json validation output, and updated the schema
    to match (internal issue 838).
  * Restructure enumerated type descriptions separately from the command or
    structure they are used in, allowing better reference page generation
    (internal issue 841).
  * Re-sort extension appendices to be in alphabetical order within each
    author ID section.
  * Fix enum naming and clarify behavior for
    `VK_NVX_device_generated_commands` extension.

New Extensions:
2017-06-04 20:48:43 -07:00
Jon Leech 43f1fd5550 Change log for March 17, 2017 Vulkan 1.0.44 spec update:
* Bump API patch number and header version number to 44 for this update.

Github Issues:

  * Fix description of <<features-extentperimagetype, Allowed Extent Values
    Based On Image Type>> (public issue 290).
  * Better specify VK_DEVICE_LOST behavior around flink:vkQueueSubmit,
    flink:vkWaitForFences, and flink:vkGetFenceStatus (public issue 423).
  * Clarify definition of flink:vkGetQueryPoolResults::pname:queryCount
    (public issue 441).
  * Simplify and clean up normative language. Remove shall and replace
    recommend and variants with should wherever possible (public issue 448).
  * Fix all dangling internal cross-references in the 1.0-extensions
    specification, and add scripts/checkXrefs to find these in the future
    (public issue 456).
  * Reverse order of ChangeLog.txt entries so the most recent version is
    documented first (public issue 463)
  * Removes "become invalid" which clashes with invalid state for command
    buffers. (public issue 467)
  * Disallowed pending state in spec text for vkResetCommandBuffer, matching
    valid usage (public issue 468)
  * Removes sentence describing invalid state "like initial state". (public
    issue 469)
  * Disallows begin command buffer from resetting command buffers in the
    "recording" state. (public issue 470)
  * Removes mention of state from description of
    VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT (public issue 471)
  * Removed extra valid usage statement in VkSubmitInfo (public issue 472)

Internal Issues:

  * Clarify description of the pname:imageLayout member of
    sname:VkDescriptorImageInfo.
  * Fix typos where etext:VK_VIEW_TYPE* was used instead of
    etext:VK_IMAGE_VIEW_TYPE.
  * Removed the <<VK_KHR_display>> and <<VK_KHR_display_swapchain>> example
    code from the specification and noted it has been moved to the Vulkan
    SDK cube demo (internal issue 179).
  * Reorder VkExternalMemoryHandleTypeFlagBitsNV description (internal issue
    480).
  * Clarify than an implementation is
    <<fundamentals-validusage-flags,permitted to return 'undefined' bit
    flags>> in a bitfield (internal issue 640).
  * Break Valid Usage statements describing unrelated parameters into
    separate statements, and add a style guide entry to follow this approach
    (internal issue 685).
  * Move valid usage statement for slink:VkImageCreateInfo from spec body to
    the explicit valid usage block (internal issue 693).
  * Fix typos in the descriptions of slink:VkDisplaySurfaceCreateInfoKHR,
    flink:vkCreateDisplayModeKHR, and
    flink:vkGetDisplayPlaneSupportedDisplaysKHR in the <<display,Presenting
    Directly to Display Devices>> section (internal issue 698, 704, 716).
  * Clarified that mandatory depth/stencil formats are only a requirement
    for 2D images (internal issue 719).
  * Clarify that variables decorated with DeviceIndex/ViewIndex must be in
    the Input storage class (internal issue 733).
  * Work around generator script problem with removal of Unicode literals
    from Python 3.0-3.2 using `future` package (internal issue 737).
  * Remove nonexistent structure type enums from vk.xml (internal issue
    738).
  * Fix validextensionstructs attributes for structures in the pname:pNext
    chain for VkPresentInfoKHR, fixing implicit valid usage statements for
    those structures (internal issue 740).

New Extensions:
2017-03-17 22:53:58 -07:00
Jon Leech fd0e4c3b67 Change log for February 27, 2017 Vulkan 1.0.42 spec update:
* Bump API patch number and header version number to 42 for this update
    (the first anniversary edition).

Github Issues:

  * Changed asciidoctor macros so cross-page links in the standalone
    reference pages function properly (public issue 462).

Internal Issues:

  * Clarified host visibility discussion for slink:VkMemoryType,
    flink:vkInvalidateMappedMemoryRanges, elink:VkAccessFlagBits, and the
    <<synchronization-framebuffer-regions,Framebuffer Region Dependencies>>
    section, removing duplicated information and adding a central definition
    in the access types section (internal issue 552).
  * Change description of
    slink:vkGetPhysicalDeviceSurfacePresentModesKHR::pname:pPresentModes to
    return an array of values, not structures (internal issue 699).

New Extensions:

  * Add a NOTE to the <<extensions,Layers & Extensions>> chapter describing
    the experimental status of `KHX` extensions.
  * Add new Khronos, Khronos Experimental, and vendor Vulkan extensions for
    release at GDC:
  ** VK_KHR_descriptor_update_template
  ** VK_KHR_push_descriptor
  ** VK_KHX_device_group
  ** VK_KHX_device_group_creation
  ** VK_KHX_external_memory
  ** VK_KHX_external_memory_capabilities
  ** VK_KHX_external_memory_fd
  ** VK_KHX_external_memory_win32
  ** VK_KHX_external_semaphore
  ** VK_KHX_external_semaphore_capabilities
  ** VK_KHX_external_semaphore_fd
  ** VK_KHX_external_semaphore_win32
  ** VK_KHX_multiview
  ** VK_KHX_win32_keyed_mutex
  ** VK_EXT_discard_rectangles
  ** VK_MVK_ios_surface
  ** VK_MVK_macos_surface
  ** VK_NVX_multiview_per_view_attributes
  ** VK_NV_clip_space_w_scaling
  ** VK_NV_geometry_shader_passthrough
  ** VK_NV_sample_mask_override_coverage
  ** VK_NV_viewport_array2
  ** VK_NV_viewport_swizzle
  * Add new GLSL vendor extensions to support new builtin variables:
  ** GL_EXT_device_group
  ** GL_EXT_multiview
2017-02-26 22:54:26 -08:00
Jon Leech ca4abe0d34 Change log for January 23, 2017 Vulkan 1.0.39 spec update:
* Bump API patch number and header version number to 39 for this update.

Github Issues:

  * Clarified that only accesses via the specified buffer/image subresource
    ranges are included in the access scopes (public issue 306).
  * Add missing valid usage statements for flink:vkCreateComputePipelines
    and flink:vkCreateGraphicsPipelines (public issue 427).

Internal Issues:

  * Add a Note to the <<invariance,Invariance>> appendix about a difference
    between OpenGL and Vulkan with regards to how primitives derived from
    offsets are handled (internal issue 355).
  * Add the +<<VK_KHR_get_physical_device_properties2>>+,
    +<<VK_KHR_maintenance1>>+, and +<<VK_KHR_shader_draw_parameters>>+
    extensions (internal issue 448).
  * Add the +<<VK_EXT_shader_subgroup_vote>>+ and
    +<<VK_EXT_shader_subgroup_ballot>>+ extensions (internal issue 449).
  * Update the texture level-of-detail equation in the
    <<textures-scale-factor,Scale Factor Operation>> section to better
    approximate the ellipse major and minor axes (internal issue 547).
  * Forbid non-explicitly allowed uses of interface decorations in the
    introduction to the <<interfaces,Shader Interfaces>> chapter (internal
    issue 607).
  * Replace use of MathJax with KaTeX, for improved load-time performance as
    well as avoiding the scrolling-and-scrolling behavior due to MathJax
    asynchronous rendering when loading at an anchor inside the spec. This
    change also requires moving to HTML5 output for the spec instead of
    XHTML, and there is a visible difference in that the chapter navigation
    index is now in a scrollable sidebar instead of at the top of the
    document. We may or may not retain the nav sidebar based on feedback
    (internal issue 613).
  * Improve consistency of markup and formatting in extension appendices
    (internal issue 631).

Other Issues:

  * Add explicit valid usage statements to slink:VkImageCopy requiring that
    the source and destination layer ranges be contained in their respective
    source and destination images.
  * Add valid usage language for swapchain of flink:vkAcquireNextImage. If
    the swapchain has been replaced, then it should not be passed to
    flink:vkAcquireNextImage.
  * Add a valid usage statement to flink:vkCreateImageView, that the image
    must have been created with an appropriate usage bit set.
  * Noted that slink:VkDisplayPresentInfoKHR is a valid extension of
    slink:VkPresentInfoKHR in the <<wsi_swapchain,WSI Swapchain>> section.
  * Update valid usage for flink:vkCmdSetViewport and flink:vkCmdSetScissor
    to account for the multiple viewport feature. If the feature is not
    enabled, the parameters for these functions have required values that
    are defined in the <<features-features-multiViewport,multiple
    viewports>> section of the spec but were not reflected in the valid
    usage text for these functions.
  * Add the +<<VK_EXT_swapchain_colorspace>>+ extension defining common
    color spaces.
2017-01-17 20:11:25 -08:00
Jon Leech 8f014fa579 Change log for December 10, 2016 Vulkan 1.0.37 spec update:
* Bump API patch number and header version number to 37 for this update.

Github Issues:

  * Add usability guarantees on the values returned by
    flink:vkGetPhysicalDeviceSurfaceCapabilitiesKHR in the
    slink:VkSurfaceCapabilitiesKHR structure and by
    flink:vkGetPhysicalDeviceSurfaceFormatsKHR in the
    pname:pSurfaceFormatCount parameter (public issue 385).
  * Add elink:VkDebugReportObjectTypeEXT enumerants for new object types
    introduced by new extensions (public issue 408).
  * Add +VK_NVX_device_generated_commands+ etext:ACCESS bits and define how
    they are used (public issue 415).
  * Fix indentation for slink:VkDebugReportCallbackCreateInfoEXT member
    descriptions (public issue 419).

Internal Issues:

  * Expand requirements memory binding of non-sparse images and buffers from
    the <<resources-association,Resource Memory Association>> section into
    valid usage statements for all of the applicable API calls (internal
    issue 508).
  * Explicitly state that valid usage of flink:vkCreateImage requires that
    flink:vkGetPhysicalDeviceImageFormatProperties would return
    ename:VK_SUCCESS for the requested image configuration (internal issue
    598).
2016-12-10 20:59:58 -08:00
Jon Leech 7cba8f5d99 Change log for December 1, 2016 Vulkan 1.0.36 spec update:
* Bump API patch number and header version number to 36 for this update.

Github Issues:

  * Fix "recorded with" terminology in the valid usage language for the
    flink:vkCmdExecuteCommands::pname:pCommandBuffers parameter (public
    issue 390).
  * Modify +genvk.py+ to support specifying extensions to remove from output
    generators, allowing the extension loader +vulkan_ext.c+ to be created
    without WSI extensions which are statically exported by the Vulkan
    loader (public issue 412).
  * Added validation language for slink:VkSubpassDependency and in the
    <<synchronization-access-types-supported,supported access types>>
    section to catch access masks that include bits which are not supported
    by pipeline stages in the stage masks (partially addresses public issue
    1006).

Internal Issues:

  * Added validation language for flink:vkCmdWaitEvents,
    flink:vkQueueSubmit, flink:VkRenderPassCreateInfo, and in the
    <<synchronization-pipeline-stages-supported>> section to prevent
    recording stage dependencies that aren't supported on the queue
    (internal issue 516).
  * Make a few changes that generalize spec language for use with possible
    future extensions by adding glossary terms and generalizing ``feature''
    to ``feature or extension'' where relevant (internal issues 448, 590).
  * Added "pipeline type" attribute to +vk.xml+ for relevant commands and
    utilize it in automatic generation of the Command Properties table
    (internal issue 517).
  * Specify that WSI implementations must provide both UNORM and sRGB
    formats in the description of slink:VkColorSpaceKHR (internal issue
    529).
  * Remove nesting of explicit valid usage statements where it is not
    meaningful (internal issue 583).

Other Issues:

  * Add validity language requiring that
    slink:VkPushConstantRange::pname:offset be a multiple of 4, as stated in
    the spec language.
2016-12-02 03:32:05 -08:00
Jon Leech 789549ff08 Change log for November 25, 2016 Vulkan 1.0.35 spec update:
* Bump API patch number and header version number to 35 for this update.

Github Issues:

  * Document in the <<memory-device-hostaccess,Host Access>> section that
    mapping and unmapping does not invalidate or flush the mapped memory
    (public issues 27, 126).
  * Redefine the entire <<synchronization>> chapter in terms of consistent
    and well defined terminology, that's called out at the start of the
    chapter. This terminology is applied equally to all synchronization
    types, including subpass dependencies, submissions, and much of the
    implicit ordering stuff dotted around the spec. Key terms are laid out
    in the <<synchronization-dependencies,Execution and Memory
    Dependencies>> section at the top of the rewritten chapter (public
    issues 128, 131, 132, 217, 299, 300, 302, 306, 322, 346, 347, 371, 407).
  * Specify order of submission for batches in the
    <<vkQueueSubmit,vkQueueSubmit>> and
    <<vkQueueBindSparse,vkQueueBindSparse>> commands (public issue 371).
  * Add valid usage statements to each of the WSI extension sections
    indicating that the WSI-specific structure parameters must be valid, and
    remove automatically generated valid usage statements now covered by the
    manual sections (public issue 383).
  * Clarify render pass compatibility for flink:vkCmdExecuteCommands (public
    issue 390).

Internal Issues:

  * Update +vk.xml+ to make previously explicit valid usage statements for
    <<vkDebugReportMessageEXT,vkDebugReportMessageEXT>> implicit instead
    (internal issue 553).
  * Add valid usage statement for slink:VkCreateImageInfo preventing
    creation of 1D sparse images (internal issue 573).
  * Fix Python scripts to always read/write files in utf-8 encoding, and a
    logic error in reflib.py which could cause a fatal error for
    malstructured asciidoc (internal issues 578, 586).
2016-11-26 02:33:44 -08:00