15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci ARB_texture_env_dot3 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_ARB_texture_env_dot3 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Bimal Poddar, Intel (bimal.poddar 'at' intel.com) 125bd8deadSopenharmony_ci Dave Gosselin 135bd8deadSopenharmony_ci Dan Ginsburg, AMD (dan.ginsburg 'at' amd.com) 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ciNotice 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ci Copyright (c) 2001-2013 The Khronos Group Inc. Copyright terms at 185bd8deadSopenharmony_ci http://www.khronos.org/registry/speccopyright.html 195bd8deadSopenharmony_ci 205bd8deadSopenharmony_ciSpecification Update Policy 215bd8deadSopenharmony_ci 225bd8deadSopenharmony_ci Khronos-approved extension specifications are updated in response to 235bd8deadSopenharmony_ci issues and bugs prioritized by the Khronos OpenGL Working Group. For 245bd8deadSopenharmony_ci extensions which have been promoted to a core Specification, fixes will 255bd8deadSopenharmony_ci first appear in the latest version of that core Specification, and will 265bd8deadSopenharmony_ci eventually be backported to the extension document. This policy is 275bd8deadSopenharmony_ci described in more detail at 285bd8deadSopenharmony_ci https://www.khronos.org/registry/OpenGL/docs/update_policy.php 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ciStatus 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ci Complete. Approved by ARB on February 16, 2001. 335bd8deadSopenharmony_ci 345bd8deadSopenharmony_ciVersion 355bd8deadSopenharmony_ci 365bd8deadSopenharmony_ci Last modified date: 2006/11/04 375bd8deadSopenharmony_ci 385bd8deadSopenharmony_ciNumber 395bd8deadSopenharmony_ci 405bd8deadSopenharmony_ci ARB Extension #19 415bd8deadSopenharmony_ci 425bd8deadSopenharmony_ciDependencies 435bd8deadSopenharmony_ci 445bd8deadSopenharmony_ci This extension is written against the OpenGL 1.2.1 Specification. 455bd8deadSopenharmony_ci OpenGL 1.1, ARB_multitexture and ARB_texture_env_combine are required 465bd8deadSopenharmony_ci for this extension. 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ciOverview 495bd8deadSopenharmony_ci 505bd8deadSopenharmony_ci Adds new operation to the texture combiner operations. 515bd8deadSopenharmony_ci 525bd8deadSopenharmony_ci DOT3_RGB_ARB Arg0 <dotprod> Arg1 535bd8deadSopenharmony_ci DOT3_RGBA_ARB Arg0 <dotprod> Arg1 545bd8deadSopenharmony_ci 555bd8deadSopenharmony_ci where Arg0, Arg1 are specified by <params> parameter of 565bd8deadSopenharmony_ci TexEnvf, TexEnvi, TexEnvfv, and TexEnviv when the <pname> 575bd8deadSopenharmony_ci parameter value is SOURCE0_RGB_ARB and SOURCE1_RGB_ARB. 585bd8deadSopenharmony_ci 595bd8deadSopenharmony_ciIssues 605bd8deadSopenharmony_ci 615bd8deadSopenharmony_ci 1. This extension is an ARB version of EXT_texture_env_dot3 which bears 625bd8deadSopenharmony_ci a copyright by ATI Technologies. Is ATI willing to have the ARB 635bd8deadSopenharmony_ci go ahead and modify their original spec and use it for the 645bd8deadSopenharmony_ci ARB extension. 655bd8deadSopenharmony_ci 665bd8deadSopenharmony_ci - RESOLVED: ATI does not have a problem with the copyright issue. 675bd8deadSopenharmony_ci 685bd8deadSopenharmony_ci 2. The EXT version of the spec does not multiply the output by 695bd8deadSopenharmony_ci RGB_SCALE_ARB and ALPHA_SCALE_ARB. There is no reason to impose this 705bd8deadSopenharmony_ci restriction since it makes the scale operations non-orthogonal. 715bd8deadSopenharmony_ci Should the enum values for the new tokens in this extension should 725bd8deadSopenharmony_ci be the same as the original EXT version? 735bd8deadSopenharmony_ci 745bd8deadSopenharmony_ci - RESOLVED: No. 755bd8deadSopenharmony_ci 765bd8deadSopenharmony_ciNew Procedures and Functions 775bd8deadSopenharmony_ci 785bd8deadSopenharmony_ci None 795bd8deadSopenharmony_ci 805bd8deadSopenharmony_ciNew Tokens 815bd8deadSopenharmony_ci 825bd8deadSopenharmony_ci Accepted by the <params> parameter of TexEnvf, TexEnvi, TexEnvfv, 835bd8deadSopenharmony_ci and TexEnviv when the <pname> parameter value is COMBINE_RGB_ARB 845bd8deadSopenharmony_ci 855bd8deadSopenharmony_ci DOT3_RGB_ARB 0x86AE 865bd8deadSopenharmony_ci DOT3_RGBA_ARB 0x86AF 875bd8deadSopenharmony_ci 885bd8deadSopenharmony_ciAdditions to Chapter 2 of the GL Specification (OpenGL Operation) 895bd8deadSopenharmony_ci 905bd8deadSopenharmony_ci None 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ciAdditions to Chapter 3 of the GL Specification (Rasterization) 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ci Added to table 3.20 of the ARB_texture_env_combine spec: 955bd8deadSopenharmony_ci 965bd8deadSopenharmony_ci COMBINE_RGB_ARB Texture Function 975bd8deadSopenharmony_ci --------------- ---------------- 985bd8deadSopenharmony_ci DOT3_RGB_ARB 4*((Arg0_r - 0.5)*(Arg1_r - 0.5) + 995bd8deadSopenharmony_ci (Arg0_g - 0.5)*(Arg1_g - 0.5) + 1005bd8deadSopenharmony_ci (Arg0_b - 0.5)*(Arg1_b - 0.5)) 1015bd8deadSopenharmony_ci 1025bd8deadSopenharmony_ci This value is placed into all three 1035bd8deadSopenharmony_ci r,g,b components of the output. 1045bd8deadSopenharmony_ci 1055bd8deadSopenharmony_ci DOT3_RGBA_ARB 4*((Arg0_r - 0.5)*(Arg1_r - 0.5) + 1065bd8deadSopenharmony_ci (Arg0_g - 0.5)*(Arg1_g - 0.5) + 1075bd8deadSopenharmony_ci (Arg0_b - 0.5)*(Arg1_b - 0.5)) 1085bd8deadSopenharmony_ci 1095bd8deadSopenharmony_ci This value is placed into all four 1105bd8deadSopenharmony_ci r,g,b,a components of the output. Note 1115bd8deadSopenharmony_ci that the result generated from 1125bd8deadSopenharmony_ci COMBINE_ALPHA_ARB function is ignored. 1135bd8deadSopenharmony_ci 1145bd8deadSopenharmony_ciAdditions to Chapter 4 of the OpenGL 1.2 Specification (Per-Fragment Operations 1155bd8deadSopenharmony_ciand the Framebuffer) 1165bd8deadSopenharmony_ci 1175bd8deadSopenharmony_ci None 1185bd8deadSopenharmony_ci 1195bd8deadSopenharmony_ciAdditions to Chapter 5 of the GL Specification (Special Functions) 1205bd8deadSopenharmony_ci 1215bd8deadSopenharmony_ci None 1225bd8deadSopenharmony_ci 1235bd8deadSopenharmony_ciAdditions to Chapter 6 of the GL Specification (State and State Requests) 1245bd8deadSopenharmony_ci 1255bd8deadSopenharmony_ci None 1265bd8deadSopenharmony_ci 1275bd8deadSopenharmony_ciAdditions to the GLX Specification 1285bd8deadSopenharmony_ci 1295bd8deadSopenharmony_ci None 1305bd8deadSopenharmony_ci 1315bd8deadSopenharmony_ciGLX Protocol 1325bd8deadSopenharmony_ci 1335bd8deadSopenharmony_ci None 1345bd8deadSopenharmony_ci 1355bd8deadSopenharmony_ciErrors 1365bd8deadSopenharmony_ci 1375bd8deadSopenharmony_ci INVALID_ENUM is generated if <params> value for COMBINE_RGB_ARB 1385bd8deadSopenharmony_ci is not one of REPLACE, MODULATE, ADD, ADD_SIGNED_ARB, 1395bd8deadSopenharmony_ci INTERPOLATE_ARB, SUBTRACT_ARB, DOT3_RGB_ARB or DOT3_RGBA_ARB. 1405bd8deadSopenharmony_ci 1415bd8deadSopenharmony_ciNew State 1425bd8deadSopenharmony_ci 1435bd8deadSopenharmony_ci None 1445bd8deadSopenharmony_ci 1455bd8deadSopenharmony_ciNew Implementation Dependent State 1465bd8deadSopenharmony_ci 1475bd8deadSopenharmony_ci None 1485bd8deadSopenharmony_ci 1495bd8deadSopenharmony_ciRevision History 1505bd8deadSopenharmony_ci 06/11/04 benj Updated contact info after ATI/AMD merger. 1515bd8deadSopenharmony_ci 1525bd8deadSopenharmony_ci 01/05/15 bpoddar Fixed a mistake in the spec - DOT3_RGB_ARB and 1535bd8deadSopenharmony_ci DOT3_RGBA_ARB are not valid arguments when 1545bd8deadSopenharmony_ci <pname> parameter is COMBINE_ALPHA_ARB 1555bd8deadSopenharmony_ci 1565bd8deadSopenharmony_ci 01/02/02 bpoddar Added original EXT/ARB contributors to the contact 1575bd8deadSopenharmony_ci list 1585bd8deadSopenharmony_ci 1595bd8deadSopenharmony_ci 00/12/13 bpoddar Added enum values for DOT3_RGB_ARB and DOT3_RGBA_ARB 1605bd8deadSopenharmony_ci Added resolution to issue # 1. 1615bd8deadSopenharmony_ci 1625bd8deadSopenharmony_ci 00/12/06 bpoddar Fixed typos - EXT -> ARB, RED_SCALE -> RGB_SCALE 1635bd8deadSopenharmony_ci 1645bd8deadSopenharmony_ci 00/12/01 bpoddar Created an ARB version of the ARB_texture_env_dot3 1655bd8deadSopenharmony_ci by breaking up the proposed ARB_texture_env_combine 1665bd8deadSopenharmony_ci spec. 167