浏览代码

Material Upgrader support first pass

Material Upgrader framework and specific implementation for Standard ->
HD Lit.

Only limited amount of properties are transfererred. More todo.
/main
joeante 8 年前
当前提交
84ff510c
共有 29 个文件被更改,包括 2495 次插入6 次删除
  1. 2
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/LayeredLit/Editor/LayeredLitUI.cs
  2. 2
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/LayeredLit/LayeredLit.shader
  3. 2
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/LitUI.cs
  4. 2
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Lit.shader
  5. 2
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/Unlit/Editor/UnlitUI.cs
  6. 2
      ProjectSettings/ProjectVersion.txt
  7. 9
      Assets/ScriptableRenderLoop/Editor.meta
  8. 9
      Assets/ScriptableRenderLoop/ForwardRenderLoop.meta
  9. 31
      Assets/ScriptableRenderLoop/HDRenderLoop/Editor/UpgradeStandardShaderMaterials.cs
  10. 12
      Assets/ScriptableRenderLoop/HDRenderLoop/Editor/UpgradeStandardShaderMaterials.cs.meta
  11. 56
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/StandardToHDLitMaterialUpgrader.cs
  12. 12
      Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/StandardToHDLitMaterialUpgrader.cs.meta
  13. 9
      Assets/ScriptableRenderLoop/HDRenderLoop/Tests.meta
  14. 9
      Assets/TestScenes/HDTest/SphereStandard/TestAssets.meta
  15. 169
      Assets/ScriptableRenderLoop/Editor/MaterialUpgrader.cs
  16. 12
      Assets/ScriptableRenderLoop/Editor/MaterialUpgrader.cs.meta
  17. 9
      Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade.meta
  18. 8
      Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/MaterialUpgradeTest.cs
  19. 12
      Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/MaterialUpgradeTest.cs.meta
  20. 73
      Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/test.mat
  21. 36
      obj/Debug/Assembly-CSharp-Editor.csproj.FilesWrittenAbsolute.txt
  22. 1001
      obj/Debug/Assembly-CSharp-Editor.dll
  23. 21
      obj/Debug/Assembly-CSharp.csproj.FilesWrittenAbsolute.txt
  24. 1001
      obj/Debug/Assembly-CSharp.dll

2
Assets/ScriptableRenderLoop/HDRenderLoop/Material/LayeredLit/Editor/LayeredLitUI.cs


using UnityEngine;
using UnityEngine.Rendering;
namespace UnityEditor
namespace UnityEditor.Experimental.ScriptableRenderLoop
{
internal class LayeredLitGUI : LitGUI
{

2
Assets/ScriptableRenderLoop/HDRenderLoop/Material/LayeredLit/LayeredLit.shader


}
}
CustomEditor "LayeredLitGUI"
CustomEditor "UnityEditor.Experimental.ScriptableRenderLoop.LayeredLitGUI"
}

2
Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/LitUI.cs


using UnityEngine;
using UnityEngine.Rendering;
namespace UnityEditor
namespace UnityEditor.Experimental.ScriptableRenderLoop
{
public abstract class BaseLitGUI : ShaderGUI
{

2
Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Lit.shader


}
}
CustomEditor "LitGUI"
CustomEditor "UnityEditor.Experimental.ScriptableRenderLoop.LitGUI"
}

2
Assets/ScriptableRenderLoop/HDRenderLoop/Material/Unlit/Editor/UnlitUI.cs


using UnityEngine;
using UnityEngine.Rendering;
namespace UnityEditor
namespace UnityEditor.Experimental.ScriptableRenderLoop
{
internal class UnlitGUI : ShaderGUI
{

2
ProjectSettings/ProjectVersion.txt


m_EditorVersion: 5.6.0a4
m_EditorVersion: 5.6.0a5

9
Assets/ScriptableRenderLoop/Editor.meta


fileFormatVersion: 2
guid: 74ae8146f4a01491ba1306f3db78139d
folderAsset: yes
timeCreated: 1479851675
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

9
Assets/ScriptableRenderLoop/ForwardRenderLoop.meta


fileFormatVersion: 2
guid: 87cf696b5a0ce42438ce41ddcd5022c2
folderAsset: yes
timeCreated: 1467034984
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

31
Assets/ScriptableRenderLoop/HDRenderLoop/Editor/UpgradeStandardShaderMaterials.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System;
using NUnit.Framework;
namespace UnityEditor.Experimental.ScriptableRenderLoop
{
public class UpgradeStandardShaderMaterials
{
static List<MaterialUpgrader> GetHDUpgraders()
{
var upgraders = new List<MaterialUpgrader> ();
upgraders.Add(new StandardToHDLitMaterialUpgrader ());
return upgraders;
}
[MenuItem("HDRenderLoop/Upgrade Materials - Project")]
static void UpgradeMaterialsProject()
{
MaterialUpgrader.UpgradeProjectFolder (GetHDUpgraders(), "Upgrade to HD Material");
}
[MenuItem("HDRenderLoop/Upgrade Materials - Selection")]
static void UpgradeMaterialsSelection()
{
MaterialUpgrader.UpgradeSelection (GetHDUpgraders(), "Upgrade to HD Material");
}
}
}

12
Assets/ScriptableRenderLoop/HDRenderLoop/Editor/UpgradeStandardShaderMaterials.cs.meta


fileFormatVersion: 2
guid: 9384735d0665f47539990919bf72504e
timeCreated: 1479839793
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

56
Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/StandardToHDLitMaterialUpgrader.cs


using System;
using NUnit.Framework;
using UnityEngine;
namespace UnityEditor.Experimental.ScriptableRenderLoop
{
class StandardToHDLitMaterialUpgrader : MaterialUpgrader
{
public StandardToHDLitMaterialUpgrader()
{
RenameShader("Standard", "HDRenderLoop/Lit");
RenameTexture("_MainTex", "_BaseColorMap");
RenameColor("_Color", "_BaseColor");
RenameFloat("_Glossiness", "_Smoothness");
RenameTexture("_BumpMap", "_NormalMap");
RenameColor("_EmissionColor", "_EmissiveColor");
//@Seb: Bumpmap scale doesn't exist in new shader
//_BumpScale("Scale", Float) = 1.0
// Metallic uses [Gamma] attribute in standard shader but not in Lit.
// @Seb: Should we convert?
RenameFloat("_Metallic", "_Metallic");
//@TODO: Seb. Why do we multiply color by intensity
// in shader when we can just store a color?
// builtinData.emissiveColor * builtinData.emissiveIntensity
}
public override void Convert(Material srcMaterial, Material dstMaterial)
{
base.Convert (srcMaterial, dstMaterial);
//@TODO: Find a good way of setting up keywords etc from properties.
// Code should be shared with material UI code.
}
[Test]
public void UpgradeMaterial()
{
var newShader = Shader.Find("HDRenderLoop/Lit");
var mat = new Material (Shader.Find("Standard"));
var albedo = new Texture2D(1, 1);
var color = Color.red;
mat.mainTexture = albedo;
mat.color = color;
MaterialUpgrader.Upgrade(mat, new StandardToHDLitMaterialUpgrader (), MaterialUpgrader.UpgradeFlags.CleanupNonUpgradedProperties);
Assert.AreEqual (newShader, mat.shader);
Assert.AreEqual (albedo, mat.GetTexture("_BaseColorMap"));
Assert.AreEqual (color, mat.GetColor("_BaseColor"));
}
}
}

12
Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/StandardToHDLitMaterialUpgrader.cs.meta


fileFormatVersion: 2
guid: fedbd6bc5d95f4d768cb8077e8454b4e
timeCreated: 1479851295
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

9
Assets/ScriptableRenderLoop/HDRenderLoop/Tests.meta


fileFormatVersion: 2
guid: bb7e5767d170d47c5bcd525d34ed6770
folderAsset: yes
timeCreated: 1479847203
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

9
Assets/TestScenes/HDTest/SphereStandard/TestAssets.meta


fileFormatVersion: 2
guid: 92cb0991bdb9e4c86abe6b681e6b8a55
folderAsset: yes
timeCreated: 1479847070
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

169
Assets/ScriptableRenderLoop/Editor/MaterialUpgrader.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
namespace UnityEditor.Experimental.ScriptableRenderLoop
{
public class MaterialUpgrader
{
string m_OldShader;
string m_NewShader;
Dictionary<string, string> m_TextureRename = new Dictionary<string, string>();
Dictionary<string, string> m_FloatRename = new Dictionary<string, string>();
Dictionary<string, string> m_ColorRename = new Dictionary<string, string>();
[Flags]
public enum UpgradeFlags
{
None = 0,
LogErrorOnNonExistingProperty = 1,
CleanupNonUpgradedProperties = 2,
}
public void Upgrade(Material material, UpgradeFlags flags)
{
Material newMaterial;
if ((flags & UpgradeFlags.CleanupNonUpgradedProperties) != 0)
{
newMaterial = new Material(Shader.Find (m_NewShader));
}
else
{
newMaterial = UnityEngine.Object.Instantiate(material) as Material;
newMaterial.shader = Shader.Find (m_NewShader);
}
Convert(material, newMaterial);
material.shader = Shader.Find (m_NewShader);
material.CopyPropertiesFromMaterial (newMaterial);
UnityEngine.Object.DestroyImmediate (newMaterial);
}
// Overridable function to implement custom material upgrading functionality
public virtual void Convert(Material srcMaterial, Material dstMaterial)
{
foreach (var t in m_TextureRename)
dstMaterial.SetTexture (t.Value, srcMaterial.GetTexture (t.Key));
foreach (var t in m_FloatRename)
dstMaterial.SetFloat (t.Value, srcMaterial.GetFloat(t.Key));
foreach (var t in m_ColorRename)
dstMaterial.SetColor (t.Value, srcMaterial.GetColor(t.Key));
}
public void RenameShader(string oldName, string newName)
{
m_OldShader = oldName;
m_NewShader = newName;
}
public void RenameTexture(string oldName, string newName)
{
m_TextureRename[oldName] = newName;
}
public void RenameFloat(string oldName, string newName)
{
m_FloatRename[oldName] = newName;
}
public void RenameColor(string oldName, string newName)
{
m_ColorRename[oldName] = newName;
}
static bool IsMaterialPath(string path)
{
return path.EndsWith (".mat", StringComparison.OrdinalIgnoreCase);
}
static MaterialUpgrader GetUpgrader(List<MaterialUpgrader> upgraders, Material material)
{
if (material == null || material.shader == null)
return null;
string shaderName = material.shader.name;
for (int i = 0;i != upgraders.Count;i++)
{
if (upgraders[i].m_OldShader == shaderName)
return upgraders[i];
}
return null;
}
//@TODO: Only do this when it exceeds memory consumption...
static void SaveAssetsAndFreeMemory()
{
AssetDatabase.SaveAssets();
GC.Collect();
EditorUtility.UnloadUnusedAssetsImmediate();
AssetDatabase.Refresh();
}
static public void UpgradeProjectFolder(List<MaterialUpgrader> upgraders, string progressBarName)
{
int totalMaterialCount = 0;
foreach ( string s in UnityEditor.AssetDatabase.GetAllAssetPaths() )
{
if (IsMaterialPath(s))
totalMaterialCount++;
}
int materialIndex = 0;
foreach ( string path in UnityEditor.AssetDatabase.GetAllAssetPaths() )
{
if (IsMaterialPath(path))
{
materialIndex++;
if ( UnityEditor.EditorUtility.DisplayCancelableProgressBar(progressBarName, string.Format( "({0} of {1}) {2}", materialIndex, totalMaterialCount, path ), ( float )materialIndex / ( float )totalMaterialCount ) )
break;
Material m = UnityEditor.AssetDatabase.LoadMainAssetAtPath( path ) as Material;
Upgrade (m, upgraders, UpgradeFlags.None);
SaveAssetsAndFreeMemory();
}
}
UnityEditor.EditorUtility.ClearProgressBar();
}
public static void Upgrade(Material material, MaterialUpgrader upgrader, UpgradeFlags flags)
{
var upgraders = new List<MaterialUpgrader> ();
upgraders.Add (upgrader);
Upgrade (material, upgraders, flags);
}
public static void Upgrade(Material material, List<MaterialUpgrader> upgraders, UpgradeFlags flags)
{
var upgrader = GetUpgrader (upgraders, material);
if (upgrader != null)
upgrader.Upgrade (material, flags);
}
public static void UpgradeSelection(List<MaterialUpgrader> upgraders, string progressBarName)
{
string lastMaterialName = "";
var selection = Selection.objects;
for (int i = 0; i < selection.Length;i++)
{
if ( UnityEditor.EditorUtility.DisplayCancelableProgressBar(progressBarName, string.Format( "({0} of {1}) {2}", i, selection.Length, lastMaterialName ), ( float )i / ( float )selection.Length ) )
break;
var material = selection[i] as Material;
Upgrade (material, upgraders, UpgradeFlags.None);
if (material != null)
lastMaterialName = material.name;
}
UnityEditor.EditorUtility.ClearProgressBar();
}
}
}

12
Assets/ScriptableRenderLoop/Editor/MaterialUpgrader.cs.meta


fileFormatVersion: 2
guid: 67b996d0727a74b029aff1545143be17
timeCreated: 1479851694
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

9
Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade.meta


fileFormatVersion: 2
guid: 3201ad957a0ea400fbd892365c70003a
folderAsset: yes
timeCreated: 1479847220
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

8
Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/MaterialUpgradeTest.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MaterialUpgradeTest
{
}

12
Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/MaterialUpgradeTest.cs.meta


fileFormatVersion: 2
guid: 43b972a7a8e654adf97b33b2332cc502
timeCreated: 1479847282
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

73
Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/test.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: test
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_CustomRenderQueue: -1
stringTagMap: {}
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

36
obj/Debug/Assembly-CSharp-Editor.csproj.FilesWrittenAbsolute.txt


/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-UnityScript.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.Advertisements.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/nunit.framework.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.EditorTestsRunner.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.UI.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.UI.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.Networking.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.Networking.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.PlaymodeTestsRunner.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.PlaymodeTestsRunner.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.TreeEditor.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.Analytics.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.Analytics.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.HoloLens.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.HoloLens.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.VR.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.VR.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/ICSharpCode.NRefactory.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.Graphs.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-CSharp.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-CSharp.dll.mdb
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Mono.Cecil.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.SerializationLogic.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.DataContract.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.UNetWeaver.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.UNetWeaver.dll.mdb
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.CecilTools.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Mono.Cecil.Pdb.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Mono.Cecil.Mdb.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.iOS.Extensions.Xcode.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-CSharp-Editor.dll.mdb
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-CSharp-Editor.dll
/Users/joe/Projects/ScriptableRenderLoop/obj/Debug/Assembly-CSharp-Editor.dll
/Users/joe/Projects/ScriptableRenderLoop/obj/Debug/Assembly-CSharp-Editor.dll.mdb

1001
obj/Debug/Assembly-CSharp-Editor.dll
文件差异内容过多而无法显示
查看文件

21
obj/Debug/Assembly-CSharp.csproj.FilesWrittenAbsolute.txt


/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-CSharp.dll.mdb
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Assembly-CSharp.dll
/Users/joe/Projects/ScriptableRenderLoop/obj/Debug/Assembly-CSharp.dll
/Users/joe/Projects/ScriptableRenderLoop/obj/Debug/Assembly-CSharp.dll.mdb
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEditor.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.UI.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.Networking.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.PlaymodeTestsRunner.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.Analytics.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.HoloLens.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/UnityEngine.VR.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Mono.Cecil.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.SerializationLogic.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.DataContract.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/ICSharpCode.NRefactory.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.UNetWeaver.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.UNetWeaver.dll.mdb
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Unity.CecilTools.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Mono.Cecil.Pdb.dll
/Users/joe/Projects/ScriptableRenderLoop/Temp/bin/Debug/Mono.Cecil.Mdb.dll

1001
obj/Debug/Assembly-CSharp.dll
文件差异内容过多而无法显示
查看文件

正在加载...
取消
保存