Back to the OpenGL extension cross reference
GL_EXT_texture_env_dot3
EXT_texture_env_dot3
Name Strings
GL_EXT_texture_env_dot3
Contact
Dave Gosselin, ATI Technologies, Inc. (gosselin 'at' ati.com)
Dan Ginsburg, ATI Technologies, Inc. (dginsbur 'at' ati.com)
Notice
Copyright ATI Technologies, 2000.
IP Status
None
Version
Last Modified Date: 2000/09/28 13:54:17 Revision: 1.2
Number
220
Dependencies
EXT_texture_env_combine is required and is modified by this extension
ARB_multitexture affects the definition of this extension
Overview
Adds new operation to the texture combiner operations.
DOT3_RGB_EXT Arg0 <dotprod> Arg1
DOT3_RGBA_EXT Arg0 <dotprod> Arg1
where Arg0, Arg1 are derived from
PRIMARY_COLOR_EXT primary color of incoming fragment
TEXTURE texture color of corresponding texture unit
CONSTANT_EXT texture environment constant color
PREVIOUS_EXT result of previous texture environment; on
texture unit 0, this maps to PRIMARY_COLOR_EXT
This operaion can only be performed if SOURCE0_RGB_EXT,
SOURCE1_RGB_EXT are defined.
Issues
None
None
Accepted by the <params> parameter of TexEnvf, TexEnvi, TexEnvfv,
and TexEnviv when the <pname> parameter value is COMBINE_RGB_EXT
DOT3_RGB_EXT 0x8740
DOT3_RGBA_EXT 0x8741
Additions to Chapter 2 of the OpenGL 1.2 Specification (OpenGL Operation)
None
Additions to Chapter 3 of the OpenGL 1.2 Specification (Rasterization)
Added to subsection 3.8.9, before the paragraph describing the
state requirements:
If the value of TEXTURE_ENV_MODE is COMBINE_EXT, the form of the
texture function depends on the values of COMBINE_RGB_EXT and
COMBINE_ALPHA_EXT, according to table 3.20. The RGB and ALPHA
results of the texture function are not multiplied by the values
of RGB_SCALE_EXT and ALPHA_SCALE, respectively. The results are
clamped to [0,1].
COMBINE_RGB_EXT Texture Function
------------------ ----------------
DOT3_RGB_EXT 4*((Arg0_r - 0.5)*(Arg1_r - 0.5) +
(Arg0_g - 0.5)*(Arg1_g - 0.5) +
(Arg0_b - 0.5)*(Arg1_b - 0.5))
This value is placed into all three
r,g,b components of the output.
DOT3_RGBA_EXT 4*((Arg0_r - 0.5)*(Arg1_r - 0.5) +
(Arg0_g - 0.5)*(Arg1_g - 0.5) +
(Arg0_b - 0.5)*(Arg1_b - 0.5))
This value is placed into all four
r,g,b,a components of the output.
Table 3.20: COMBINE_EXT texture functions
Additions to Chapter 4 of the OpenGL 1.2 Specification (Per-Fragment Operations
and the Framebuffer)
None
Additions to Chapter 5 of the OpenGL 1.2 Specification (Special Functions)
None
Additions to Chapter 6 of the OpenGL 1.2 Specification (State and State Requests)
None
Additions to the AGL/GLX/WGL Specifications
None
GLX Protocol
None
Errors
Modifications to EXT_texture_env_combine
Dependencies on ARB_multitexture
New State
None
New Implementation Dependent State
None
Revision History
None
Implementation Support
List of OpenGL implementations supporting the GL_EXT_texture_env_dot3 extension
Original File
Original text file for the GL_EXT_texture_env_dot3 extension
Page generated on Sun Nov 20 18:37:53 2005