15bd8deadSopenharmony_ciXXX needs more work.
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ciName
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ci    SGIX_pixel_texture_lod
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ciName Strings
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ci    GL_SGIX_pixel_texture_lod
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ciVersion
125bd8deadSopenharmony_ci
135bd8deadSopenharmony_ci    $Date: 1998/07/22 18:07:16 $ $Revision: 1.9 $
145bd8deadSopenharmony_ci
155bd8deadSopenharmony_ciNumber
165bd8deadSopenharmony_ci
175bd8deadSopenharmony_ci    128
185bd8deadSopenharmony_ci
195bd8deadSopenharmony_ciDependencies
205bd8deadSopenharmony_ci
215bd8deadSopenharmony_ci    GL_SGIS_pixel_texture
225bd8deadSopenharmony_ci    can be implemented in parallel with pixel_texture_bits
235bd8deadSopenharmony_ci
245bd8deadSopenharmony_ciOverview
255bd8deadSopenharmony_ci
265bd8deadSopenharmony_ci    The pixel_texture extension provides a way to derive the
275bd8deadSopenharmony_ci    texture coordinates from RGBA pixel groups.  This extension
285bd8deadSopenharmony_ci    introduces a way to derive the lod (lambda) from the
295bd8deadSopenharmony_ci    pixel groups as well.
305bd8deadSopenharmony_ci
315bd8deadSopenharmony_ciIssues
325bd8deadSopenharmony_ci
335bd8deadSopenharmony_ci    * We don't operate in "bits" mode here. Extended Range
345bd8deadSopenharmony_ci      and Precision (erp) values are just erp values 
355bd8deadSopenharmony_ci      and old fashioned [0,1] values are interpeted as [0,1] values; 
365bd8deadSopenharmony_ci      this makes lambda uninteresting except for the erp case.
375bd8deadSopenharmony_ci      should we bother to define lambda in a way that is interesting
385bd8deadSopenharmony_ci      for non extended range and precision?
395bd8deadSopenharmony_ci
405bd8deadSopenharmony_ci    * Is it possible to compute lambda in a pixel field in a way that
415bd8deadSopenharmony_ci      makes this extension useful?
425bd8deadSopenharmony_ci
435bd8deadSopenharmony_ci      Seems like you can always do the shift and subtract trick and then
445bd8deadSopenharmony_ci      use blend function and lookup tables to compute the lod in a reasonably
455bd8deadSopenharmony_ci      efficient manner.
465bd8deadSopenharmony_ci
475bd8deadSopenharmony_ci    * Do we need to implicitly scale the lambda by the number of lods?
485bd8deadSopenharmony_ci
495bd8deadSopenharmony_ci    * Need to make sure this extension isn't too had to implement in
505bd8deadSopenharmony_ci      the hardware (bali).
515bd8deadSopenharmony_ci
525bd8deadSopenharmony_ci    * This extension is intended to be used with the color components
535bd8deadSopenharmony_ci      of the fragments derived from the current raster position.  Can
545bd8deadSopenharmony_ci      we leave that part of it orthogonal and let the application
555bd8deadSopenharmony_ci      set that explicitly using PIXEL_FRAGMENT_{RGB,ALPHA}_SOURCE_SGIX?
565bd8deadSopenharmony_ci
575bd8deadSopenharmony_ciNew Procedures and Functions
585bd8deadSopenharmony_ci
595bd8deadSopenharmony_ci    None
605bd8deadSopenharmony_ci
615bd8deadSopenharmony_ciNew Tokens
625bd8deadSopenharmony_ci
635bd8deadSopenharmony_ci    Accepted by the <pname> parameter of PixelTexGenParameterSGIX:
645bd8deadSopenharmony_ci
655bd8deadSopenharmony_ci	PIXEL_TEX_GEN_LAMBDA_SOURCE_SGIX
665bd8deadSopenharmony_ci	
675bd8deadSopenharmony_ciAdditions to Chapter 2 of the 1.0 Specification (OpenGL Operation)
685bd8deadSopenharmony_ci
695bd8deadSopenharmony_ci    None
705bd8deadSopenharmony_ci
715bd8deadSopenharmony_ciAdditions to Chapter 3 of the 1.0 Specification (Rasterization)
725bd8deadSopenharmony_ci
735bd8deadSopenharmony_ci    This extension, similar to the pixel_texture.spec, modifies the
745bd8deadSopenharmony_ci    "Conversion to Fragments" subsection of section 3.6.3 (Rasterization
755bd8deadSopenharmony_ci    of Pixel Rectangles) of the GL Specification. Immediately following
765bd8deadSopenharmony_ci    the text added by the pixel_texture.spec, insert the following:
775bd8deadSopenharmony_ci
785bd8deadSopenharmony_ci    If PIXEL_TEX_GEN_SGIX is enabled and the PixelTexGenSGIX 
795bd8deadSopenharmony_ci    pname PIXEL_TEX_GEN_LAMBDA_SOURCE_SGIX is set to ALPHA, 
805bd8deadSopenharmony_ci    the mapping from r,g,b,a to s,t,r,q is altered.
815bd8deadSopenharmony_ci
825bd8deadSopenharmony_ci    The alpha color component value becomes the lambda value, the log-base-2
835bd8deadSopenharmony_ci    of the ratio of the projected texel_area and pixel area. The boundary
845bd8deadSopenharmony_ci    of minification to magnification occurs at lambda = 0, with values
855bd8deadSopenharmony_ci    less than 0 corresponding to minification and values greater than
865bd8deadSopenharmony_ci    0 corresponding to magnification.  The alpha color component value
875bd8deadSopenharmony_ci    becomes the texture coordinate value.  The Q texture coordinate 
885bd8deadSopenharmony_ci    is set to 1.
895bd8deadSopenharmony_ci
905bd8deadSopenharmony_ci    If PIXEL_TEX_GEN_SGIX is enabled and the PixelTexGenSGIX 
915bd8deadSopenharmony_ci    pname PIXEL_TEX_GEN_LAMBDA_SOURCE_SGIX is set to ZERO, 
925bd8deadSopenharmony_ci    lambda is set to zero.
935bd8deadSopenharmony_ci
945bd8deadSopenharmony_ciAdditions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations
955bd8deadSopenharmony_ciand the Frame Buffer)
965bd8deadSopenharmony_ci
975bd8deadSopenharmony_ci    None
985bd8deadSopenharmony_ci
995bd8deadSopenharmony_ciAdditions to Chapter 5 of the 1.0 Specification (Special Functions)
1005bd8deadSopenharmony_ci
1015bd8deadSopenharmony_ci    None
1025bd8deadSopenharmony_ci
1035bd8deadSopenharmony_ciAdditions to Chapter 6 of the 1.0 Specification (State and State Requests)
1045bd8deadSopenharmony_ci
1055bd8deadSopenharmony_ci    None
1065bd8deadSopenharmony_ci
1075bd8deadSopenharmony_ciAdditions to the GLX Specification
1085bd8deadSopenharmony_ci
1095bd8deadSopenharmony_ci    XXX
1105bd8deadSopenharmony_ci
1115bd8deadSopenharmony_ciErrors
1125bd8deadSopenharmony_ci
1135bd8deadSopenharmony_ci    None
1145bd8deadSopenharmony_ci
1155bd8deadSopenharmony_ciNew State
1165bd8deadSopenharmony_ci
1175bd8deadSopenharmony_ci    The following is added to Table 6.16. Pixels.
1185bd8deadSopenharmony_ci
1195bd8deadSopenharmony_ci    Get Value				Get Command			Type	Initial Value			Attrib
1205bd8deadSopenharmony_ci    ---------				-----------			----	-------------			------
1215bd8deadSopenharmony_ci    PIXEL_TEX_GEN_LAMBDA_SOURCE_SGIX	GetPixelTexGenParameterivSGIX	Z2	ZERO				pixel
1225bd8deadSopenharmony_ci
1235bd8deadSopenharmony_ciNew Implementation Dependent State
1245bd8deadSopenharmony_ci
1255bd8deadSopenharmony_ci    None
126