浏览代码
Material Upgrader support first pass
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 次删除
-
2Assets/ScriptableRenderLoop/HDRenderLoop/Material/LayeredLit/Editor/LayeredLitUI.cs
-
2Assets/ScriptableRenderLoop/HDRenderLoop/Material/LayeredLit/LayeredLit.shader
-
2Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/LitUI.cs
-
2Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Lit.shader
-
2Assets/ScriptableRenderLoop/HDRenderLoop/Material/Unlit/Editor/UnlitUI.cs
-
2ProjectSettings/ProjectVersion.txt
-
9Assets/ScriptableRenderLoop/Editor.meta
-
9Assets/ScriptableRenderLoop/ForwardRenderLoop.meta
-
31Assets/ScriptableRenderLoop/HDRenderLoop/Editor/UpgradeStandardShaderMaterials.cs
-
12Assets/ScriptableRenderLoop/HDRenderLoop/Editor/UpgradeStandardShaderMaterials.cs.meta
-
56Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/StandardToHDLitMaterialUpgrader.cs
-
12Assets/ScriptableRenderLoop/HDRenderLoop/Material/Lit/Editor/StandardToHDLitMaterialUpgrader.cs.meta
-
9Assets/ScriptableRenderLoop/HDRenderLoop/Tests.meta
-
9Assets/TestScenes/HDTest/SphereStandard/TestAssets.meta
-
169Assets/ScriptableRenderLoop/Editor/MaterialUpgrader.cs
-
12Assets/ScriptableRenderLoop/Editor/MaterialUpgrader.cs.meta
-
9Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade.meta
-
8Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/MaterialUpgradeTest.cs
-
12Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/MaterialUpgradeTest.cs.meta
-
73Assets/ScriptableRenderLoop/HDRenderLoop/Tests/MaterialUpgrade/test.mat
-
36obj/Debug/Assembly-CSharp-Editor.csproj.FilesWrittenAbsolute.txt
-
1001obj/Debug/Assembly-CSharp-Editor.dll
-
21obj/Debug/Assembly-CSharp.csproj.FilesWrittenAbsolute.txt
-
1001obj/Debug/Assembly-CSharp.dll
|
|||
m_EditorVersion: 5.6.0a4 |
|||
m_EditorVersion: 5.6.0a5 |
|
|||
fileFormatVersion: 2 |
|||
guid: 74ae8146f4a01491ba1306f3db78139d |
|||
folderAsset: yes |
|||
timeCreated: 1479851675 |
|||
licenseType: Pro |
|||
DefaultImporter: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: 87cf696b5a0ce42438ce41ddcd5022c2 |
|||
folderAsset: yes |
|||
timeCreated: 1467034984 |
|||
licenseType: Pro |
|||
DefaultImporter: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
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"); |
|||
} |
|||
} |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: 9384735d0665f47539990919bf72504e |
|||
timeCreated: 1479839793 |
|||
licenseType: Pro |
|||
MonoImporter: |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
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")); |
|||
} |
|||
} |
|||
} |
|||
|
|
|||
fileFormatVersion: 2 |
|||
guid: fedbd6bc5d95f4d768cb8077e8454b4e |
|||
timeCreated: 1479851295 |
|||
licenseType: Pro |
|||
MonoImporter: |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: bb7e5767d170d47c5bcd525d34ed6770 |
|||
folderAsset: yes |
|||
timeCreated: 1479847203 |
|||
licenseType: Pro |
|||
DefaultImporter: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: 92cb0991bdb9e4c86abe6b681e6b8a55 |
|||
folderAsset: yes |
|||
timeCreated: 1479847070 |
|||
licenseType: Pro |
|||
DefaultImporter: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
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(); |
|||
} |
|||
} |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: 67b996d0727a74b029aff1545143be17 |
|||
timeCreated: 1479851694 |
|||
licenseType: Pro |
|||
MonoImporter: |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: 3201ad957a0ea400fbd892365c70003a |
|||
folderAsset: yes |
|||
timeCreated: 1479847220 |
|||
licenseType: Pro |
|||
DefaultImporter: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class MaterialUpgradeTest |
|||
{ |
|||
|
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: 43b972a7a8e654adf97b33b2332cc502 |
|||
timeCreated: 1479847282 |
|||
licenseType: Pro |
|||
MonoImporter: |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
%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} |
|
|||
/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
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
/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
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
撰写
预览
正在加载...
取消
保存
Reference in new issue