15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci ATI_texture_mirror_once 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_ATI_texture_mirror_once 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Dan Ginsburg, AMD (dan.ginsburg 'at' amd.com) 125bd8deadSopenharmony_ci 135bd8deadSopenharmony_ciVersion 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ci Last Modified Date: 11/4/2006 Revision: 0.31 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ciNumber 185bd8deadSopenharmony_ci 195bd8deadSopenharmony_ci 221 205bd8deadSopenharmony_ci 215bd8deadSopenharmony_ciDependencies 225bd8deadSopenharmony_ci 235bd8deadSopenharmony_ci EXT_texture3D 245bd8deadSopenharmony_ci 255bd8deadSopenharmony_ciOverview 265bd8deadSopenharmony_ci 275bd8deadSopenharmony_ci ATI_texture_mirror_once extends the set of texture wrap modes to 285bd8deadSopenharmony_ci include two modes (GL_MIRROR_CLAMP_ATI, GL_MIRROR_CLAMP_TO_EDGE_ATI) 295bd8deadSopenharmony_ci that effectively use a texture map twice as large as the original image 305bd8deadSopenharmony_ci in which the additional half of the new image is a mirror image of the 315bd8deadSopenharmony_ci original image. 325bd8deadSopenharmony_ci 335bd8deadSopenharmony_ci This new mode relaxes the need to generate images whose opposite edges 345bd8deadSopenharmony_ci match by using the original image to generate a matching "mirror image". 355bd8deadSopenharmony_ci This mode allows the texture to be mirrored only once in the negative 365bd8deadSopenharmony_ci s, t, and r directions. 375bd8deadSopenharmony_ci 385bd8deadSopenharmony_ciIssues 395bd8deadSopenharmony_ci 405bd8deadSopenharmony_ci None known 415bd8deadSopenharmony_ci 425bd8deadSopenharmony_ciNew Procedure and Functions 435bd8deadSopenharmony_ci 445bd8deadSopenharmony_ci None 455bd8deadSopenharmony_ci 465bd8deadSopenharmony_ciNew Tokens 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ci Accepted by the <param> parameter of TexParameteri and TexParameterf, 495bd8deadSopenharmony_ci and by the <params> parameter of TexParameteriv and TexParameterfv, when 505bd8deadSopenharmony_ci their <pname> parameter is TEXTURE_WRAP_S, TEXTURE_WRAP_T, or 515bd8deadSopenharmony_ci TEXTURE_WRAP_R_EXT: 525bd8deadSopenharmony_ci 535bd8deadSopenharmony_ci MIRROR_CLAMP_ATI 0x8742 545bd8deadSopenharmony_ci MIRROR_CLAMP_TO_EDGE_ATI 0x8743 555bd8deadSopenharmony_ci 565bd8deadSopenharmony_ciAdditions to Chapter 2 of the OpenGL 1.2.1 Specification (Operation) 575bd8deadSopenharmony_ci 585bd8deadSopenharmony_ci None 595bd8deadSopenharmony_ci 605bd8deadSopenharmony_ciAdditions to Chapter 3 if the OpenGL 1.2.1 Specification (Rasterization): 615bd8deadSopenharmony_ci 625bd8deadSopenharmony_ci - (3.8.3, p. 124) Change first three entries in table: 635bd8deadSopenharmony_ci 645bd8deadSopenharmony_ci "TEXTURE_WRAP_S integer CLAMP, CLAMP_TO_EDGE, REPEAT, 655bd8deadSopenharmony_ci MIRROR_CLAMP_ATI, MIRROR_CLAMP_TO_EDGE_ATI 665bd8deadSopenharmony_ci TEXTURE_WRAP_T integer CLAMP, CLAMP_TO_EDGE, REPEAT, 675bd8deadSopenharmony_ci MIRROR_CLAMP_ATI, MIRROR_CLAMP_TO_EDGE_ATI 685bd8deadSopenharmony_ci TEXTURE_WRAP_R integer CLAMP, CLAMP_TO_EDGE, REPEAT, 695bd8deadSopenharmony_ci MIRROR_CLAMP_ATI, MIRROR_CLAMP_TO_EDGE_ATI" 705bd8deadSopenharmony_ci 715bd8deadSopenharmony_ci - (3.8.4, p. 125) Added after second paragraph: 725bd8deadSopenharmony_ci 735bd8deadSopenharmony_ci "If TEXTURE_WRAP_S, TEXTURE_WRAP_T, or TEXTURE_WRAP_R_EXT is set to 745bd8deadSopenharmony_ci MIRROR_CLAMP_ATI or MIRROR_CLAMP_TO_EDGE_ATI, the s (or t or r) 755bd8deadSopenharmony_ci coordinate is clamped to [-1, 1] and then converted to: 765bd8deadSopenharmony_ci 775bd8deadSopenharmony_ci s 0 <= s <= 1 785bd8deadSopenharmony_ci -s -1 <= s < 0 795bd8deadSopenharmony_ci 805bd8deadSopenharmony_ci Like the CLAMP wrap mode, with MIRROR_CLAMP_ATI the texels from 815bd8deadSopenharmony_ci the border can be used by the texture filter. MIRROR_CLAMP_TO_EDGE_ATI 825bd8deadSopenharmony_ci clamps texture coordinates at all mipmap levels such that the texture 835bd8deadSopenharmony_ci filter never samples a border texel." 845bd8deadSopenharmony_ci 855bd8deadSopenharmony_ci - (3.8.5, p.127) Change last paragraph to: 865bd8deadSopenharmony_ci 875bd8deadSopenharmony_ci "When TEXTURE_MIN_FILTER is LINEAR, a 2 x 2 x 2 cube of texels in the 885bd8deadSopenharmony_ci image array of level TEXTURE_BASE_LEVEL is selected. This cube is 895bd8deadSopenharmony_ci obtained by first clamping texture coordinates as described above 905bd8deadSopenharmony_ci under Texture Wrap Modes (if the wrap mode for a coordinate is CLAMP, 915bd8deadSopenharmony_ci CLAMP_TO_EDGE, MIRROR_CLAMP_ATI, or MIRROR_CLAMP_TO_EDGE_ATI) and 925bd8deadSopenharmony_ci computing..." 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ci 955bd8deadSopenharmony_ciAdditions to Chapter 4: 965bd8deadSopenharmony_ci 975bd8deadSopenharmony_ci None 985bd8deadSopenharmony_ci 995bd8deadSopenharmony_ciAdditions to Chapter 5: 1005bd8deadSopenharmony_ci 1015bd8deadSopenharmony_ci None 1025bd8deadSopenharmony_ci 1035bd8deadSopenharmony_ciAdditions to Chapter 6: 1045bd8deadSopenharmony_ci 1055bd8deadSopenharmony_ci None 1065bd8deadSopenharmony_ci 1075bd8deadSopenharmony_ciAdditions to the GLX Specification 1085bd8deadSopenharmony_ci 1095bd8deadSopenharmony_ci None 1105bd8deadSopenharmony_ci 1115bd8deadSopenharmony_ciGLX Protocol 1125bd8deadSopenharmony_ci 1135bd8deadSopenharmony_ci None 1145bd8deadSopenharmony_ci 1155bd8deadSopenharmony_ciErrors 1165bd8deadSopenharmony_ci 1175bd8deadSopenharmony_ci None 1185bd8deadSopenharmony_ci 1195bd8deadSopenharmony_ciDependencies on EXT_texture3D 1205bd8deadSopenharmony_ci 1215bd8deadSopenharmony_ci If EXT_texture3D is not implemented, then the references to clamping of 3D 1225bd8deadSopenharmony_ci textures in this file are invalid, and references to TEXTURE_WRAP_R_EXT 1235bd8deadSopenharmony_ci should be ignored. 1245bd8deadSopenharmony_ci 1255bd8deadSopenharmony_ci 1265bd8deadSopenharmony_ciNew State 1275bd8deadSopenharmony_ci 1285bd8deadSopenharmony_ci Only the type information changes for these parameters: 1295bd8deadSopenharmony_ci 1305bd8deadSopenharmony_ci Get Value Get Command Type Initial Value Attrib 1315bd8deadSopenharmony_ci --------- ----------- ---- ------------- ------ 1325bd8deadSopenharmony_ci TEXTURE_WRAP_S GetTexParameteriv n x Z5 REPEAT texture 1335bd8deadSopenharmony_ci TEXTURE_WRAP_T GetTexParameteriv n x Z5 REPEAT texture 1345bd8deadSopenharmony_ci TEXTURE_WRAP_R_EXT GetTexParameteriv n x Z5 REPEAT texture 1355bd8deadSopenharmony_ci 1365bd8deadSopenharmony_ciNew Implementation Dependent State 1375bd8deadSopenharmony_ci 1385bd8deadSopenharmony_ci None 1395bd8deadSopenharmony_ci 1405bd8deadSopenharmony_ci 1415bd8deadSopenharmony_ci 142