Просмотр исходного кода

WebGPURenderer: Ignore `diagnostic()` method in firefox (#29306)

sunag 1 год назад
Родитель
Сommit
841ea63101
1 измененных файлов с 12 добавлено и 2 удалено
  1. 12 2
      src/renderers/webgpu/nodes/WGSLNodeBuilder.js

+ 12 - 2
src/renderers/webgpu/nodes/WGSLNodeBuilder.js

@@ -149,6 +149,16 @@ if ( /Windows/g.test( navigator.userAgent ) ) {
 
 //
 
+let diagnostics = '';
+
+if ( /Firefox/g.test( navigator.userAgent ) !== true ) {
+
+	diagnostics += 'diagnostic( off, derivative_uniformity );\n';
+
+}
+
+//
+
 class WGSLNodeBuilder extends NodeBuilder {
 
 	constructor( object, renderer ) {
@@ -1246,8 +1256,8 @@ fn main( ${shaderData.attributes} ) -> VaryingsStruct {
 	_getWGSLFragmentCode( shaderData ) {
 
 		return `${ this.getSignature() }
-
-diagnostic( off, derivative_uniformity );
+// global
+${ diagnostics }
 
 // uniforms
 ${shaderData.uniforms}

粤ICP备19079148号