render method

  1. @override
void render(
  1. WebGLRenderer renderer,
  2. WebGLRenderTarget writeBuffer,
  3. WebGLRenderTarget readBuffer, {
  4. double? deltaTime,
  5. bool? maskActive,
})
override

Implementation

@override
	void render(WebGLRenderer renderer, WebGLRenderTarget writeBuffer, WebGLRenderTarget readBuffer, {double? deltaTime, bool? maskActive}) {
		uniforms['tDiffuse']['value'] = readBuffer.texture;
		uniforms['toneMappingExposure']['value'] = renderer.toneMappingExposure;

		// rebuild defines if required

		if (_outputColorSpace != renderer.outputColorSpace || _toneMapping != renderer.toneMapping ) {
			_outputColorSpace = renderer.outputColorSpace;
			_toneMapping = renderer.toneMapping;

			material.defines = {};

			//if (_outputColorSpace == SRGBTransfer ) material.defines!['SRGB_TRANSFER'] = '';

			if (_toneMapping == LinearToneMapping ){ material.defines!['LINEAR_TONE_MAPPING'] = '';}
			else if (_toneMapping == ReinhardToneMapping ){ material.defines!['REINHARD_TONE_MAPPING'] = '';}
			else if (_toneMapping == CineonToneMapping ){ material.defines!['CINEON_TONE_MAPPING'] = '';}
			else if (_toneMapping == ACESFilmicToneMapping ){ material.defines!['ACES_FILMIC_TONE_MAPPING'] = '';}
    else if (_toneMapping == AgXToneMapping ) this.material.defines!['AGX_TONE_MAPPING'] = '';
			else if (_toneMapping == NeutralToneMapping ){ material.defines!['NEUTRAL_TONE_MAPPING'] = '';}
			else if (_toneMapping == CustomToneMapping ){ material.defines!['CUSTOM_TONE_MAPPING'] = '';}

			material.needsUpdate = true;
		}

		if (renderToScreen) {
			// renderer.setRenderTarget( null );
			// fsQuad.render( renderer );
		}
  else {
			// renderer.setRenderTarget( writeBuffer );
			// if (clear) renderer.clear( renderer.autoClearColor, renderer.autoClearDepth, renderer.autoClearStencil );
			// fsQuad.render( renderer );
		}
	}