Back to the OpenGL extension cross reference

GL_EXT_texture_env_dot3


Name


    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

New Procedures and Functions


    None

New Tokens


    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