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

		if ( shaderStage === 'fragment' ) {

			// TODO handle i32 or u32 --> uvSnippet, array_index: A, ddx, ddy
			return `textureSampleGrad( ${ textureProperty }, ${ textureProperty }_sampler, ${ uvSnippet },  ${ gradSnippet[ 0 ] }, ${ gradSnippet[ 1 ] } )`;

		} else {

			console.error( `WebGPURenderer: THREE.TextureNode.gradient() does not support ${ shaderStage } shader.` );

		}

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

@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 {Array<string>} gradSnippet - An array holding both gradient WGSL snippets.
@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.