-
Notifications
You must be signed in to change notification settings - Fork 477
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Change log for September 5, 2017 Vulkan 1.0.60 spec update:
* Bump API patch number and header version number to 60 for this update. Github Issues: * Document that <<queries-timestamps, Timestamp Queries>> can only be meaningfully compared when they are written from the same queue (public issue 216). * Document that the `<extension>` tag `type` attribute is required for non-disabled extensions (derived from, but does not close public issue 354). * Clean up registry schema length attribute descriptions to be consistent and correct (public issue 555). Internal Issues: * Replace as much of the hand-written extension appendix metadata as possible with asciidoc includes generated from corresponding attributes of +vk.xml+, and enhance the style guide to match. This avoids inconsistencies between +vk.xml+ and the appendices, and produces a more uniform style (internal issue 137). * Remove the generated extDependency.{py,sh} files from the tree and create them dynamically on demand instead, reducing merge conflicts (internal issue 713). * Add a prototype tool for generating in-place difference markup for sections guarded by asciidoc conditionals, and new syntax for open blocks to support it (internal issue 833). * Remove unnecessary restriction of etext:*SYNC_FD_BIT_KHR external handle types to the same physical device in the slink:VkPhysicalDeviceIDPropertiesKHR, flink:VkImportMemoryWin32HandleInfoKHR, slink:VkImportFenceWin32HandleInfoKHR, slink:VkImportFenceFdInfoKHR, slink:VkImportSemaphoreWin32HandleInfoKHR, slink:VkImportSemaphoreFdInfoKHR <<external-memory-handle-types-compatibility, External memory handle types compatibility>>, <<external-semaphore-handle-types-compatibility, External semaphore handle types compatibility>>, and <<external-fence-handle-types-compatibility, External fence handle types compatibility>> sections (internal issue 956). Other Issues: * Remove dependency of +VK_KHX_device_group+ on +VK_KHR_swapchain+ (there is an interaction, but not a strict dependency), and add a new `extension` attribute to the `<require` XML tag to allow classifying a subset of interfaces of an extension as requiring another extension. Update the registry schema and documentation accordingly. New Extensions: * `VK_AMD_shader_fragment_mask` (and related `GL_AMD_shader_fragment_mask` GLSL extension) * `VK_EXT_sample_locations` * `VK_EXT_validation_cache`
- Loading branch information
Showing
141 changed files
with
3,016 additions
and
1,829 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
Name | ||
|
||
AMD_shader_fragment_mask | ||
|
||
Name Strings | ||
|
||
GL_AMD_shader_fragment_mask | ||
|
||
Contact | ||
|
||
Aaron Hagan, AMD (aaron.hagan 'at' amd.com) | ||
|
||
Contributors | ||
|
||
Aaron Hagan, AMD | ||
Timothy Lottes, AMD | ||
Daniel Rakos, AMD | ||
|
||
Status | ||
|
||
Pending | ||
|
||
Version | ||
|
||
Last Modified Date: 08/07/2017 | ||
Author Revision: 2 | ||
|
||
Number | ||
|
||
TBD | ||
|
||
Dependencies | ||
|
||
This extension is written against the OpenGL Shading Language | ||
Specification, Version 4.50. | ||
|
||
Overview | ||
|
||
This extension introduces new GLSL built-in functions enabling more | ||
efficient read access to fragment mask compressed multisampled color | ||
images. Implementations supporting this extension can avoid storing | ||
identical sample color values inside a single pixel. This is achieved | ||
by introducing the concept of color fragments and fragment masks. | ||
|
||
Color fragments are storage units inside a single pixel of a multisampled | ||
color image that can hold a unique color value. Each pixel then has a | ||
fragment mask which contains per sample indices that map a given color | ||
sample to a particular color fragment. | ||
|
||
This extension enables fetching the fragment mask and individual color | ||
fragments from a multisampled color image. | ||
|
||
IP Status | ||
|
||
None. | ||
|
||
New Procedures and Functions | ||
|
||
None. | ||
|
||
New Tokens | ||
|
||
None. | ||
|
||
Modifications to the OpenGL Shading Language Specification, Version 4.50 | ||
|
||
Including the following line in a shader can be used to control the | ||
language features described in this extension: | ||
|
||
#extension GL_AMD_shader_fmask : <behavior> | ||
|
||
where <behavior> is as specified in section 3.3. | ||
|
||
New preprocessor #defines are added to the OpenGL Shading Language: | ||
|
||
#define GL_AMD_shader_fragement_mask 1 | ||
|
||
Additions to Chapter 8 of the OpenGL Shading Language (GLSL) Specification, | ||
version 4.30 (Built-in functions) | ||
|
||
Add to the table of functions 8.9.2, "Texel Lookup Functions", p. 164 | ||
|
||
+-----------------------------------+-------------------------------------+ | ||
| Syntax | Description | | ||
+-----------------------------------+-------------------------------------+ | ||
| uint fragmentMaskFetchAMD( | Returns the fragment mask from a | | ||
| gsampler2DMS sampler, | multisampled color image. The | | ||
| ivec2 P) | fragment mask is a single uint where| | ||
| | each subsequent 4 bit specifies the | | ||
| uint fragmentMaskFetchAMD( | color fragment index corresponding | | ||
| gsampler2DMSArray sampler, | to the color sample, starting from | | ||
| ivec3 P) | the least significant bit. | | ||
| | | | ||
| uint fragmentMaskFetchAMD( | | | ||
| gsubpassInputMS subpass) | | | ||
+-----------------------------------+-------------------------------------+ | ||
| gvec4 fragmentFetchAMD( | Fetches a color fragment with a | | ||
| gsampler2DMS sampler, | correspoding fragment mask value. | | ||
| ivec2 P, | | | ||
| uint fragIndex) | | | ||
| | | | ||
| gvec4 fragmentFetchAMD( | | | ||
| gsampler2DMSArray sampler, | | | ||
| ivec3 P, | | | ||
| uint fragIndex)| | | ||
| | | | ||
| gvec4 fragmentFetchAMD( | | | ||
| gsubpassInputMS subpass, | | | ||
| uint fragIndex) | | | ||
+-----------------------------------+-------------------------------------+ | ||
|
||
|
||
Additions to the AGL/GLX/WGL Specifications | ||
|
||
None. | ||
|
||
GLX Protocol | ||
|
||
None. | ||
|
||
Errors | ||
|
||
None. | ||
|
||
Issues | ||
|
||
|
||
Revision History | ||
|
||
Rev. Date Author Changes | ||
---- ---------- -------- ----------------------------------------------- | ||
2 08/07/2017 ahagan Cleanup and prepared for posting. | ||
|
||
1 04/24/2017 ahagan Initial draft. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.