blob: c952ef832ae99614c577570378b80c2186e1f749 [file] [log] [blame]
 Name EXT_depth_float Name Strings WGL_EXT_depth_float Version Date: 1/27/1999 Version 1.4 Number 177 Dependencies WGL_EXT_extensions_string is required. WGL_EXT_pixel_format is required. Overview For perspective scenes, the density of objects (vertices) increases as the distance from the eye increases. For a linear depth buffer, this means that objects (vertices) are sparse for a large portion of the depth range and are dense for a small portion of the depth buffer. This behavior is obvious if you consider standing in a boat looking at the shore. The near objects include only the boat while the far objects include the entire shoreline which may include an entire city. A non-linear (floating-point) depth buffer helps this problem. If the near clipping plane is set to 1.0, and the far clipping plane is set to 0.0, a much greater resolution of objects can occur. New Procedures and Functions None New Tokens Accepted by the parameter of wglGetPixelFormatAttribivEXT, wglGetPixelFormatAttribfvEXT, and wglChoosePixelFormatExEXT: WGL_DEPTH_FLOAT_EXT 0x2040 Additions to Chapter 2 of the 1.2 Specification (OpenGL Operation) Each of n and f are clamped to lie within [0,1], as are all arguments of type clampd or clampf. zw is taken to be represented in either fixed-point or floating-point depending on the attributes of the window. If the depth buffer is a fixed-point format, then zw is taken to be represented in fixed-point with at least as many bits as there are in the depth buffer of the framebuffer. We assume that the fixed-point representation used represents each value k/(2^m - 1), where k is in the set {0,1,...,2^m - 1}, as k (e.g. 1.0 is represented in the binary as a string of all ones). If the depth buffer is a floating-point format, then zw is taken to be represented in floating-point with at least as many bits as there are in the depth buffer of the framebuffer. The floating-point representation is implementation dependent. Additions to Chapter 3 of the 1.2 Specification (Rasterization) None Additions to Chapter 4 of the 1.2 Specification (Per-Fragment Operations and the Framebuffer) None Additions to Chapter 5 of the 1.2 Specification (Special Functions) None Additions to Chapter 6 of the 1.2 Specification (State and State Requests) None Additions to the WGL Specification None Errors None New State None New Implementation Dependent State None