15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci NV_texture_npot_2D_mipmap 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_NV_texture_npot_2D_mipmap 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Ian Stewart, NVIDIA Corporation (istewart 'at' nvidia.com) 125bd8deadSopenharmony_ci 135bd8deadSopenharmony_ciStatus 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ci Complete. 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ciVersion 185bd8deadSopenharmony_ci 195bd8deadSopenharmony_ci Last Modifed Date: April 4, 2011 205bd8deadSopenharmony_ci NVIDIA Revision: 1.0 215bd8deadSopenharmony_ci 225bd8deadSopenharmony_ciNumber 235bd8deadSopenharmony_ci 245bd8deadSopenharmony_ci OpenGL ES Extension #96 255bd8deadSopenharmony_ci 265bd8deadSopenharmony_ciDependencies 275bd8deadSopenharmony_ci 285bd8deadSopenharmony_ci This extension is written against the OpenGL ES 2.0 Specification. 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ciOverview 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ci Conventional OpenGL ES 2.0 allows the use of non-power-of-two (NPOT) 335bd8deadSopenharmony_ci textures with the limitation that mipmap minification filters can 345bd8deadSopenharmony_ci not be used. This extension relaxes this restriction and adds 355bd8deadSopenharmony_ci limited mipmap support for 2D NPOT textures. 365bd8deadSopenharmony_ci 375bd8deadSopenharmony_ci With this extension, NPOT textures are specified and applied 385bd8deadSopenharmony_ci identically to mipmapped power-of-two 2D textures with the following 395bd8deadSopenharmony_ci limitations: 405bd8deadSopenharmony_ci 415bd8deadSopenharmony_ci - The texture wrap modes must be CLAMP_TO_EDGE. 425bd8deadSopenharmony_ci 435bd8deadSopenharmony_ci - Coordinates used for texture sampling on an NPOT texture using a 445bd8deadSopenharmony_ci mipmapped minification filter must lie within the range [0,1]. 455bd8deadSopenharmony_ci Coordinate clamping is not performed by the GL in this case, 465bd8deadSopenharmony_ci causing values outside this range to produce undefined results. 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ciIP Status 495bd8deadSopenharmony_ci 505bd8deadSopenharmony_ci NVIDIA Proprietary 515bd8deadSopenharmony_ci 525bd8deadSopenharmony_ciNew Procedures and Functions 535bd8deadSopenharmony_ci 545bd8deadSopenharmony_ci None 555bd8deadSopenharmony_ci 565bd8deadSopenharmony_ciNew Tokens 575bd8deadSopenharmony_ci 585bd8deadSopenharmony_ci None 595bd8deadSopenharmony_ci 605bd8deadSopenharmony_ciChanges to Chapter 3 of the OpenGL ES 2.0 Specification 615bd8deadSopenharmony_ci 625bd8deadSopenharmony_ci Add the following to "Wrap Mode CLAMP_TO_EDGE" of section 3.7.6: 635bd8deadSopenharmony_ci 645bd8deadSopenharmony_ci CLAMP_TO_EDGE is a valid wrap mode for non-power-of-two textures; 655bd8deadSopenharmony_ci however, NPOT textures using a mipmapped minification filter will 665bd8deadSopenharmony_ci not have their coordinates clamped by the GL. In this case, 675bd8deadSopenharmony_ci coordinates must be given in the range [0,1]; values outside this 685bd8deadSopenharmony_ci range will produce undefined results. 695bd8deadSopenharmony_ci 705bd8deadSopenharmony_ci Remove the following from section 3.7.11 (Mipmap Generation): 715bd8deadSopenharmony_ci 725bd8deadSopenharmony_ci If either the width or height of the level zero array are not a 735bd8deadSopenharmony_ci power of two, the error INVALID_OPERATION is generated. 745bd8deadSopenharmony_ci 755bd8deadSopenharmony_ci Change the third bullet of Texture Access, section 3.8.2, as follows: 765bd8deadSopenharmony_ci 775bd8deadSopenharmony_ci A two-dimensional sampler is called, the corresponding texture image 785bd8deadSopenharmony_ci is a non-power-of-two image (as described in the Mipmapping 795bd8deadSopenharmony_ci discussion of section 3.7.7), and the texture wrap mode is not 805bd8deadSopenharmony_ci CLAMP_TO_EDGE. 815bd8deadSopenharmony_ci 825bd8deadSopenharmony_ciErrors 835bd8deadSopenharmony_ci 845bd8deadSopenharmony_ci None 855bd8deadSopenharmony_ci 865bd8deadSopenharmony_ciNew State 875bd8deadSopenharmony_ci 885bd8deadSopenharmony_ci None 895bd8deadSopenharmony_ci 905bd8deadSopenharmony_ciIssues 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ci None 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ciRevision History 955bd8deadSopenharmony_ci 965bd8deadSopenharmony_ci Rev. Date Author Changes 975bd8deadSopenharmony_ci ---- -------- --------- ------------------------------------- 985bd8deadSopenharmony_ci 1 04/04/11 istewart First revision. 99