/ appendices / VK_EXT_depth_range_unrestricted.txt
VK_EXT_depth_range_unrestricted.txt
 1  include::meta/VK_EXT_depth_range_unrestricted.txt[]
 2  
 3  *Last Modified Date*::
 4      2017-06-22
 5  *Contributors*::
 6      - Daniel Koch, NVIDIA
 7      - Jeff Bolz, NVIDIA
 8  
 9  This extension removes the slink:VkViewport pname:minDepth and
10  pname:maxDepth restrictions that the values must be between `0.0` and `1.0`,
11  inclusive.
12  It also removes the same restriction on
13  slink:VkPipelineDepthStencilStateCreateInfo pname:minDepthBounds and
14  pname:maxDepthBounds.
15  Finally it removes the restriction on the pname:depth value in
16  slink:VkClearDepthStencilValue.
17  
18  === New Object Types
19  
20  None.
21  
22  === New Enum Constants
23  
24  None.
25  
26  === New Enums
27  
28  None.
29  
30  === New Structures
31  
32  None.
33  
34  === New Functions
35  
36  None.
37  
38  === Issues
39  
40  1) How do slink:VkViewport pname:minDepth and pname:maxDepth values outside
41  of the `0.0` to `1.0` range interact with
42  <<vertexpostproc-clipping,Primitive Clipping>>?
43  
44  *RESOLVED*: The behavior described in <<vertexpostproc-clipping,Primitive
45  Clipping>> still applies.
46  If depth clamping is disabled the depth values are still clipped to [eq]#0
47  {leq} z~c~ {leq} w~c~# before the viewport transform.
48  If depth clamping is enabled the above equation is ignored and the depth
49  values are instead clamped to the slink:VkViewport pname:minDepth and
50  pname:maxDepth values, which in the case of this extension can be outside of
51  the `0.0` to `1.0` range.
52  
53  2) What happens if a resulting depth fragment is outside of the `0.0` to
54  `1.0` range and the depth buffer is fixed-point rather than floating-point?
55  
56  *RESOLVED*: The supported range of a fixed-point depth buffer is `0.0` to
57  `1.0` and depth fragments are clamped to this range.
58  
59  === Version History
60  
61    * Revision 1, 2017-06-22 (Piers Daniell)
62      - Internal revisions