generateTexture( texture, textureProperty, uvSnippet, depthSnippet, shaderStage = this.shaderStage ) {

		let snippet = null;

		if ( texture.isVideoTexture === true ) {

			snippet = this._generateVideoSample( textureProperty, uvSnippet, shaderStage );

		} else if ( this.isUnfilterable( texture ) ) {

			snippet = this.generateTextureLod( texture, textureProperty, uvSnippet, depthSnippet, '0', shaderStage );

		} else {

			snippet = this._generateTextureSample( texture, textureProperty, uvSnippet, depthSnippet, shaderStage );

		}

		return snippet;

	}
Generates the WGSL snippet for sampling/loading the given texture.

@param {Texture} texture - The texture.
@param {string} textureProperty - The name of the texture uniform in the shader.
@param {string} uvSnippet - A WGSL snippet that represents texture coordinates used for sampling.
@param {?string} depthSnippet - A WGSL snippet that represents 0-based texture array index to sample.
@param {string} [shaderStage=this.shaderStage] - The shader stage this code snippet is generated for.
@return {string} The WGSL snippet.