1Name
2
3    EXT_depth_float
4
5Name Strings
6
7    WGL_EXT_depth_float
8
9Version
10
11    Date: 1/27/1999  Version 1.4
12
13Number
14
15    177
16
17Dependencies
18
19    WGL_EXT_extensions_string is required.
20    WGL_EXT_pixel_format is required.
21
22Overview
23
24    For perspective scenes, the density of objects (vertices) increases
25    as the distance from the eye increases.  For a linear depth buffer,
26    this means that objects (vertices) are sparse for a large portion of
27    the depth range and are dense for a small portion of the depth buffer.
28
29    This behavior is obvious if you consider standing in a boat looking
30    at the shore.  The near objects include only the boat while the far
31    objects include the entire shoreline which may include an entire city.
32
33    A non-linear (floating-point) depth buffer helps this problem.  If
34    the near clipping plane is set to 1.0, and the far clipping plane is
35    set to 0.0, a much greater resolution of objects can occur.
36
37New Procedures and Functions
38
39    None
40
41New Tokens
42
43    Accepted by the <attribute> parameter of wglGetPixelFormatAttribivEXT,
44    wglGetPixelFormatAttribfvEXT, and wglChoosePixelFormatExEXT:
45
46      WGL_DEPTH_FLOAT_EXT                  0x2040
47
48Additions to Chapter 2 of the 1.2 Specification (OpenGL Operation)
49
50    Each of n and f are clamped to lie within [0,1], as are all arguments
51    of type clampd or clampf.  zw is taken to be represented in either
52    fixed-point or floating-point depending on the attributes of the
53    window.
54
55    If the depth buffer is a fixed-point format, then zw is taken to be
56    represented in fixed-point with at least as many bits as there are
57    in the depth buffer of the framebuffer.  We assume that the fixed-point
58    representation used represents each value k/(2^m - 1), where k is in
59    the set {0,1,...,2^m - 1}, as k (e.g. 1.0 is represented in the binary
60    as a string of all ones).
61
62    If the depth buffer is a floating-point format, then zw is taken to be
63    represented in floating-point with at least as many bits as there are
64    in the depth buffer of the framebuffer.  The floating-point
65    representation is implementation dependent.
66
67Additions to Chapter 3 of the 1.2 Specification (Rasterization)
68
69    None
70
71Additions to Chapter 4 of the 1.2 Specification (Per-Fragment Operations and
72the Framebuffer)
73
74    None
75
76Additions to Chapter 5 of the 1.2 Specification (Special Functions)
77
78    None
79
80Additions to Chapter 6 of the 1.2 Specification (State and State Requests)
81
82    None
83
84Additions to the WGL Specification
85
86    None
87
88Errors
89
90    None
91
92New State
93
94    None
95
96New Implementation Dependent State
97
98    None
99