15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci NV_light_max_exponent 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_NV_light_max_exponent 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Mark J. Kilgard, NVIDIA Corporation (mjk 'at' nvidia.com) 125bd8deadSopenharmony_ci 135bd8deadSopenharmony_ciNotice 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ci Copyright NVIDIA Corporation, 1999, 2000. 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ciStatus 185bd8deadSopenharmony_ci 195bd8deadSopenharmony_ci Shipping (version 1.0) 205bd8deadSopenharmony_ci 215bd8deadSopenharmony_ciVersion 225bd8deadSopenharmony_ci 235bd8deadSopenharmony_ci May 20, 2000 245bd8deadSopenharmony_ci $Date$ $Revision$ 255bd8deadSopenharmony_ci 265bd8deadSopenharmony_ciNumber 275bd8deadSopenharmony_ci 285bd8deadSopenharmony_ci 189 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ciDependencies 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ci None 335bd8deadSopenharmony_ci 345bd8deadSopenharmony_ciOverview 355bd8deadSopenharmony_ci 365bd8deadSopenharmony_ci Default OpenGL does not permit a shininess or spot exponent over 375bd8deadSopenharmony_ci 128.0. This extension permits implementations to support and 385bd8deadSopenharmony_ci advertise a maximum shininess and spot exponent beyond 128.0. 395bd8deadSopenharmony_ci 405bd8deadSopenharmony_ci Note that extremely high exponents for shininess and/or spot light 415bd8deadSopenharmony_ci cutoff will require sufficiently high tessellation for acceptable 425bd8deadSopenharmony_ci lighting results. 435bd8deadSopenharmony_ci 445bd8deadSopenharmony_ci Paul Deifenbach's thesis suggests that higher exponents are 455bd8deadSopenharmony_ci necessary to approximate BRDFs with per-vertex ligthing and 465bd8deadSopenharmony_ci multiple passes. 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ciNew Procedures and Functions 495bd8deadSopenharmony_ci 505bd8deadSopenharmony_ci None 515bd8deadSopenharmony_ci 525bd8deadSopenharmony_ciNew Tokens 535bd8deadSopenharmony_ci 545bd8deadSopenharmony_ci Accepted by the <pname> parameters of GetBooleanv, GetIntegerv, 555bd8deadSopenharmony_ci GetFloatv, and GetDoublev: 565bd8deadSopenharmony_ci 575bd8deadSopenharmony_ci MAX_SHININESS_NV 0x8504 585bd8deadSopenharmony_ci MAX_SPOT_EXPONENT_NV 0x8505 595bd8deadSopenharmony_ci 605bd8deadSopenharmony_ciAdditions to Chapter 2 of the GL Specification (OpenGL Operation) 615bd8deadSopenharmony_ci 625bd8deadSopenharmony_ci In Table 2.7, change the srm range entry to read: 635bd8deadSopenharmony_ci 645bd8deadSopenharmony_ci "(range: [0.0, value of MAX_SHININESS_NV])" 655bd8deadSopenharmony_ci 665bd8deadSopenharmony_ci In Table 2.7, change the srli range entry to read: 675bd8deadSopenharmony_ci 685bd8deadSopenharmony_ci "(range: [0.0, value of MAX_SPOT_EXPONENT_NV])" 695bd8deadSopenharmony_ci 705bd8deadSopenharmony_ci Add to the end of the second paragraph in Section 2.13.2: 715bd8deadSopenharmony_ci 725bd8deadSopenharmony_ci "The values of MAX_SHININESS_NV and MAX_SPOT_EXPONENT_NV are 735bd8deadSopenharmony_ci implementation dependent, but must be equal or greater than 128." 745bd8deadSopenharmony_ci 755bd8deadSopenharmony_ciAdditions to Chapter 3 of the GL Specification (Rasterization) 765bd8deadSopenharmony_ci 775bd8deadSopenharmony_ci None 785bd8deadSopenharmony_ci 795bd8deadSopenharmony_ciAdditions to Chapter 4 of the GL Specification (Per-Fragment Operations 805bd8deadSopenharmony_ciand the Framebuffer) 815bd8deadSopenharmony_ci 825bd8deadSopenharmony_ci None. 835bd8deadSopenharmony_ci 845bd8deadSopenharmony_ciAdditions to Chapter 5 of the GL Specification (Special Functions) 855bd8deadSopenharmony_ci 865bd8deadSopenharmony_ci None 875bd8deadSopenharmony_ci 885bd8deadSopenharmony_ciAdditions to Chapter 6 of the GL Specification (State and State Requests) 895bd8deadSopenharmony_ci 905bd8deadSopenharmony_ci None 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ciAdditions to the GLX Specification 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ci None 955bd8deadSopenharmony_ci 965bd8deadSopenharmony_ciGLX Protocol 975bd8deadSopenharmony_ci 985bd8deadSopenharmony_ci None 995bd8deadSopenharmony_ci 1005bd8deadSopenharmony_ciErrors 1015bd8deadSopenharmony_ci 1025bd8deadSopenharmony_ci INVALID_VALUE is generated by Material if enum is SHININESS and the 1035bd8deadSopenharmony_ci shininess param is greater than the MAX_SHININESS_NV. 1045bd8deadSopenharmony_ci 1055bd8deadSopenharmony_ci INVALID_VALUE is generated by Material if enum is SPOT_EXPONENT and 1065bd8deadSopenharmony_ci the shininess param is greater than the MAX_SPOT_EXPONENT_NV. 1075bd8deadSopenharmony_ci 1085bd8deadSopenharmony_ciNew State 1095bd8deadSopenharmony_ci 1105bd8deadSopenharmony_ci None. 1115bd8deadSopenharmony_ci 1125bd8deadSopenharmony_ciNew Implementation Dependent State 1135bd8deadSopenharmony_ci 1145bd8deadSopenharmony_ci(table 6.24, p214) add the following entries: 1155bd8deadSopenharmony_ci 1165bd8deadSopenharmony_ci Get Value Type Get Command Minimum Value Description Sec Attribute 1175bd8deadSopenharmony_ci --------------------------- ---- ----------- ------------- ----------------- ------ -------------- 1185bd8deadSopenharmony_ci MAX_SHININESS_NV Z+ GetIntegerv 128 Maximum 2.13.2 - 1195bd8deadSopenharmony_ci shininess for 1205bd8deadSopenharmony_ci specular lighting 1215bd8deadSopenharmony_ci MAX_SPOT_EXPONENT_NV Z+ GetIntegerv 128 Maximum 2.13.2 - 1225bd8deadSopenharmony_ci exponent for 1235bd8deadSopenharmony_ci spot lights 1245bd8deadSopenharmony_ci 1255bd8deadSopenharmony_ciNVIDIA Implementation Details 1265bd8deadSopenharmony_ci 1275bd8deadSopenharmony_ci NVIDIA's Release 4 drivers incorrectly and accidently advertised this 1285bd8deadSopenharmony_ci extension with an "EXT" prefix instead of an "NV" prefix. Release 5 1295bd8deadSopenharmony_ci and later drivers correctly advertise this extension with an "NV" 1305bd8deadSopenharmony_ci extension. 1315bd8deadSopenharmony_ci 1325bd8deadSopenharmony_ciRevision History 1335bd8deadSopenharmony_ci 1345bd8deadSopenharmony_ci 5/20/00 - earlier versions of this specification had the incorrect 1355bd8deadSopenharmony_ci enumerant values which did not match NVIDIA's driver implementation. 136