|
@@ -17621,7 +17621,7 @@ function generateEnvMapBlendingDefine( parameters, material ) {
|
|
|
|
|
|
}
|
|
|
|
|
|
-function WebGLProgram( renderer, extensions, code, material, shader, parameters, capabilities ) {
|
|
|
+function WebGLProgram( renderer, extensions, code, material, shader, parameters ) {
|
|
|
|
|
|
var gl = renderer.getContext();
|
|
|
|
|
@@ -17637,7 +17637,7 @@ function WebGLProgram( renderer, extensions, code, material, shader, parameters,
|
|
|
|
|
|
var gammaFactorDefine = ( renderer.gammaFactor > 0 ) ? renderer.gammaFactor : 1.0;
|
|
|
|
|
|
- var customExtensions = capabilities.isWebGL2 ? '' : generateExtensions( material.extensions, parameters, extensions );
|
|
|
+ var customExtensions = parameters.isWebGL2 ? '' : generateExtensions( material.extensions, parameters, extensions );
|
|
|
|
|
|
var customDefines = generateDefines( defines );
|
|
|
|
|
@@ -17731,7 +17731,7 @@ function WebGLProgram( renderer, extensions, code, material, shader, parameters,
|
|
|
parameters.sizeAttenuation ? '#define USE_SIZEATTENUATION' : '',
|
|
|
|
|
|
parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
|
|
|
- parameters.logarithmicDepthBuffer && ( capabilities.isWebGL2 || extensions.get( 'EXT_frag_depth' ) ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
|
|
|
+ parameters.logarithmicDepthBuffer && ( parameters.isWebGL2 || extensions.get( 'EXT_frag_depth' ) ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
|
|
|
'uniform mat4 modelMatrix;',
|
|
|
'uniform vec3 cameraPosition;',
|
|
|
|
|
@@ -17864,9 +17864,9 @@ function WebGLProgram( renderer, extensions, code, material, shader, parameters,
|
|
|
parameters.physicallyCorrectLights ? '#define PHYSICALLY_CORRECT_LIGHTS' : '',
|
|
|
|
|
|
parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
|
|
|
- parameters.logarithmicDepthBuffer && ( capabilities.isWebGL2 || extensions.get( 'EXT_frag_depth' ) ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
|
|
|
+ parameters.logarithmicDepthBuffer && ( parameters.isWebGL2 || extensions.get( 'EXT_frag_depth' ) ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
|
|
|
|
|
|
- ( ( material.extensions ? material.extensions.shaderTextureLOD : false ) || parameters.envMap ) && ( capabilities.isWebGL2 || extensions.get( 'EXT_shader_texture_lod' ) ) ? '#define TEXTURE_LOD_EXT' : '',
|
|
|
+ ( ( material.extensions ? material.extensions.shaderTextureLOD : false ) || parameters.envMap ) && ( parameters.isWebGL2 || extensions.get( 'EXT_shader_texture_lod' ) ) ? '#define TEXTURE_LOD_EXT' : '',
|
|
|
|
|
|
'uniform vec3 cameraPosition;',
|
|
|
|
|
@@ -17910,7 +17910,7 @@ function WebGLProgram( renderer, extensions, code, material, shader, parameters,
|
|
|
vertexShader = unrollLoops( vertexShader );
|
|
|
fragmentShader = unrollLoops( fragmentShader );
|
|
|
|
|
|
- if ( capabilities.isWebGL2 && ! material.isRawShaderMaterial ) {
|
|
|
+ if ( parameters.isWebGL2 && ! material.isRawShaderMaterial ) {
|
|
|
|
|
|
var isGLSL3ShaderMaterial = false;
|
|
|
|
|
@@ -18251,6 +18251,7 @@ function WebGLPrograms( renderer, extensions, capabilities ) {
|
|
|
shaderID: shaderID,
|
|
|
|
|
|
precision: precision,
|
|
|
+ isWebGL2: capabilities.isWebGL2,
|
|
|
supportsVertexTextures: capabilities.vertexTextures,
|
|
|
outputEncoding: getTextureEncodingFromMap( ( ! currentRenderTarget ) ? null : currentRenderTarget.texture, renderer.gammaOutput ),
|
|
|
map: !! material.map,
|
|
@@ -18403,7 +18404,7 @@ function WebGLPrograms( renderer, extensions, capabilities ) {
|
|
|
|
|
|
if ( program === undefined ) {
|
|
|
|
|
|
- program = new WebGLProgram( renderer, extensions, code, material, shader, parameters, capabilities );
|
|
|
+ program = new WebGLProgram( renderer, extensions, code, material, shader, parameters );
|
|
|
programs.push( program );
|
|
|
|
|
|
}
|