@@ -381,6 +381,9 @@ void ConvertBuiltInUTS2Materials( string[] guids)
381381
382382 string path = AssetDatabase . GUIDToAssetPath ( guid ) ;
383383 Material material = AssetDatabase . LoadAssetAtPath < Material > ( path ) ;
384+ string content = File . ReadAllText ( path ) ;
385+ string [ ] lines = content . Split ( lineSeparators , StringSplitOptions . None ) ;
386+ int renderQueueInMaterial = GetRenderQueue ( path , lines ) ;
384387 var shaderID = GetShaderIDinMaterial ( path ) ;
385388 material . shader = Shader . Find ( IsTesselationShader ( path ) ? kIntegratedTessllationUTS3Name : kIntegratedUTS3Name ) ;
386389 var shaderGUID = m_Material2GUID_Dictionary [ material ] ;
@@ -394,7 +397,7 @@ void ConvertBuiltInUTS2Materials( string[] guids)
394397 int stencilNo_Setting = UTS3GUI . MaterialGetInt ( material , UTS3GUI . ShaderPropStencilNo ) ;
395398
396399 var renderType = UTS2Info . m_renderType ;
397- var renderQueue = UTS2Info . m_renderQueue ;
400+ var renderQueueInShader = UTS2Info . m_renderQueue ;
398401 material . SetOverrideTag ( UTS2INFO . RENDERTYPE , renderType ) ;
399402 UTS3GUI . UTS_Mode technique = ( UTS3GUI . UTS_Mode ) UTS3GUI . MaterialGetInt ( material , UTS3GUI . ShaderPropUtsTechniqe ) ;
400403
@@ -420,8 +423,8 @@ void ConvertBuiltInUTS2Materials( string[] guids)
420423 UTS3GUI . SetupOutline ( material ) ;
421424 }
422425 SetCullingMode ( material ) ;
423-
424- SetAutoRenderQueue ( material , 1 ) ;
426+ int autoRenderQueue = renderQueueInMaterial == - 1 ? 1 : 0 ;
427+ SetAutoRenderQueue ( material , autoRenderQueue ) ;
425428
426429 SetTranparent ( material , transparencyEnabled ) ;
427430
@@ -434,9 +437,28 @@ void ConvertBuiltInUTS2Materials( string[] guids)
434437 ApplyAngelRing ( material ) ;
435438 ApplyMatCapMode ( material ) ;
436439
437-
438- ApplyQueueAndRenderType ( material , technique , renderQueue , transparencyEnabled ) ;
439-
440+ if ( renderQueueInMaterial == - 1 )
441+ {
442+ switch ( renderQueueInShader )
443+ {
444+ case UTS2RenderQueue . None :
445+ material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . Geometry ;
446+ break ;
447+ case UTS2RenderQueue . AlphaTest :
448+ material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . AlphaTest ;
449+ break ;
450+ case UTS2RenderQueue . AlphaTestMinus1 :
451+ material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . AlphaTest - 1 ;
452+ break ;
453+ case UTS2RenderQueue . Transparent :
454+ material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . Transparent ;
455+ break ;
456+ }
457+ }
458+ else
459+ {
460+ material . renderQueue = renderQueueInMaterial ;
461+ }
440462
441463 }
442464 AssetDatabase . SaveAssets ( ) ;
@@ -482,7 +504,6 @@ void SetCullingMode(Material material)
482504 void SetAutoRenderQueue ( Material material , int autoRenderQueue )
483505 {
484506 UTS3GUI . MaterialSetInt ( material , UTS3GUI . ShaderPropAutoRenderQueue , autoRenderQueue ) ;
485- // material.renderQueue
486507 }
487508
488509 void SetTranparent ( Material material , UTS3GUI . UTS_TransparentMode transperentSetting )
@@ -549,41 +570,7 @@ private bool IsShadingGrademap(Material material)
549570 return UTS3GUI . MaterialGetInt ( material , UTS3GUI . ShaderPropUtsTechniqe ) == ( int ) UTS3GUI . UTS_Mode . ShadingGradeMap ;
550571 }
551572
552- void ApplyQueueAndRenderType ( Material material , UTS3GUI . UTS_Mode technique , UTS2RenderQueue renderQueue , UTS3GUI . UTS_TransparentMode transperentSetting )
553- {
554573
555-
556-
557-
558- // var ignoreProjection = UTS2INFO.DONT_IGNOREPROJECTION;
559-
560- if ( transperentSetting == UTS3GUI . UTS_TransparentMode . On )
561- {
562-
563- // ignoreProjection = UTS2INFO.DO_IGNOREPROJECTION;
564- }
565- else
566- {
567-
568- }
569- // material.SetOverrideTag(UTS2INFO.IGNOREPROJECTION, ignoreProjection);
570- switch ( renderQueue )
571- {
572- case UTS2RenderQueue . None :
573- material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . Geometry ;
574- break ;
575- case UTS2RenderQueue . AlphaTest :
576- material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . AlphaTest ;
577- break ;
578- case UTS2RenderQueue . AlphaTestMinus1 :
579- material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . AlphaTest - 1 ;
580- break ;
581- case UTS2RenderQueue . Transparent :
582- material . renderQueue = ( int ) UnityEngine . Rendering . RenderQueue . Transparent ;
583- break ;
584- }
585-
586- }
587574 void ApplyMatCapMode ( Material material )
588575 {
589576 if ( UTS3GUI . MaterialGetInt ( material , UTS3GUI . ShaderPropClippingMode ) == 0 )
0 commit comments