浏览代码

Merge branch 'hackweek2017' of https://github.com/stramit/MaterialGraph into hackweek2017

/main
bfogerty 7 年前
当前提交
3b03ea1a
共有 117 个文件被更改,包括 20527 次插入5 次删除
  1. 5
      MaterialGraphProject/Assets/Eduardo/FunctionNInNOut.cs
  2. 2
      MaterialGraphProject/Assets/Florent/2PassCustomTexture.asset
  3. 2
      MaterialGraphProject/Assets/_MingWai/GradientNode.cs
  4. 2
      MaterialGraphProject/Assets/_MingWai/Gradient_Texture.ShaderGraph
  5. 1
      MaterialGraphProject/Assets/Florent/2Pass_Edited.ShaderGraph
  6. 9
      MaterialGraphProject/Assets/Florent/2Pass_Edited.ShaderGraph.meta
  7. 25
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d38.mat
  8. 9
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d38.mat.meta
  9. 25
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d39.mat
  10. 9
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d39.mat.meta
  11. 25
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d40.mat
  12. 9
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d40.mat.meta
  13. 29
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode8e1be5fc-7506-4529-879d-f1ce8c5aab04.mat
  14. 9
      MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode8e1be5fc-7506-4529-879d-f1ce8c5aab04.mat.meta
  15. 44
      MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.asset
  16. 9
      MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.asset.meta
  17. 25
      MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.mat
  18. 9
      MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.mat.meta
  19. 9
      MaterialGraphProject/Assets/Matt/CharacterRendering.meta
  20. 44
      MaterialGraphProject/Assets/_MingWai/New Custom Texture.asset
  21. 9
      MaterialGraphProject/Assets/_MingWai/New Custom Texture.asset.meta
  22. 25
      MaterialGraphProject/Assets/_MingWai/Unlit_Wathever.mat
  23. 9
      MaterialGraphProject/Assets/_MingWai/Unlit_Wathever.mat.meta
  24. 58
      MaterialGraphProject/Assets/_MingWai/Wathever.shader
  25. 10
      MaterialGraphProject/Assets/_MingWai/Wathever.shader.meta
  26. 940
      MaterialGraphProject/Assets/Matt/CharacterRendering/Anisotropic.shader
  27. 10
      MaterialGraphProject/Assets/Matt/CharacterRendering/Anisotropic.shader.meta
  28. 941
      MaterialGraphProject/Assets/Matt/CharacterRendering/AnisotropicTransparent.shader
  29. 10
      MaterialGraphProject/Assets/Matt/CharacterRendering/AnisotropicTransparent.shader.meta
  30. 9
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger.meta
  31. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_Rig.fbx
  32. 696
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_Rig.fbx.meta
  33. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_thick_SSS.png
  34. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_thick_SSS.png.meta
  35. 9
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger.meta
  36. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger.unity
  37. 8
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger.unity.meta
  38. 8
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/LightingData.asset
  39. 9
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/LightingData.asset.meta
  40. 212
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/ReflectionProbe-0.exr
  41. 76
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/ReflectionProbe-0.exr.meta
  42. 9
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials.meta
  43. 116
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_beard.mat
  44. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_beard.mat.meta
  45. 143
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body.mat
  46. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body.mat.meta
  47. 235
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body2.mat
  48. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body2.mat.meta
  49. 294
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eye_wetness.mat
  50. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eye_wetness.mat.meta
  51. 115
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eyes.mat
  52. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eyes.mat.meta
  53. 239
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_fingers.mat
  54. 8
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_fingers.mat.meta
  55. 122
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_hair.mat
  56. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_hair.mat.meta
  57. 117
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_head.mat
  58. 9
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_head.mat.meta
  59. 127
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_teeth.mat
  60. 5
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_teeth.mat.meta
  61. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_1.png
  62. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_1.png.meta
  63. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_2_1.png
  64. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_2_1.png.meta
  65. 84
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_NM_1.png.meta
  66. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_NM_2_1.png
  67. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_NM_2_1.png.meta
  68. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_1.png
  69. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_1.png.meta
  70. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_2_1.png
  71. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_2_1.png.meta
  72. 407
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_albedo_white.tga
  73. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_albedo_white.tga.meta
  74. 742
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_nm.png
  75. 84
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_nm.png.meta
  76. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_refl.png
  77. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_refl.png.meta
  78. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_diff_white.tga
  79. 84
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_diff_white.tga.meta
  80. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_flow_t2_3.png
  81. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_flow_t2_3.png.meta
  82. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_nm.png
  83. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_nm.png.meta
  84. 84
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_NM_1.png.meta
  85. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_SG2.tga.meta
  86. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_albedo2.png.meta
  87. 1001
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_base_AO.png
  88. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_base_AO.png.meta
  89. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_refl_1.tga.meta
  90. 75
      MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_refl_2_1.tga.meta

5
MaterialGraphProject/Assets/Eduardo/FunctionNInNOut.cs


")";
}
private string GetFunctionCall(GenerationMode generationMode)
protected virtual string GetFunctionCall(GenerationMode generationMode)
{
string prefix = "";
string sufix = "";

var outputString = new ShaderGenerator();
outputString.AddShaderChunk(GetOutputDeclaration(), false);
outputString.AddShaderChunk(GetFunctionCall(generationMode), false);
visitor.AddShaderChunk(outputString.GetShaderString(0), true);
}

2
MaterialGraphProject/Assets/Florent/2PassCustomTexture.asset


m_WrapW: 1
m_Dimension: 2
m_VolumeDepth: 1
m_Material: {fileID: 2100000, guid: 07f024bdcd70166408ae4c312452248a, type: 2}
m_Material: {fileID: 2100000, guid: 08334708bd70c504e8c76f956c62750f, type: 2}
m_InitSource: 0
m_InitMaterial: {fileID: 0}
m_InitColor: {r: 1, g: 1, b: 1, a: 1}

2
MaterialGraphProject/Assets/_MingWai/GradientNode.cs


get { return true; }
}
protected virtual string GetFunctionCall(GenerationMode generationMode)
protected override string GetFunctionCall(GenerationMode generationMode)
{
//here we don't want to generate final value as the parameters are used as output
//TODO allow to define parameters as ouput in the function prototype and handle

2
MaterialGraphProject/Assets/_MingWai/Gradient_Texture.ShaderGraph
文件差异内容过多而无法显示
查看文件

1
MaterialGraphProject/Assets/Florent/2Pass_Edited.ShaderGraph
文件差异内容过多而无法显示
查看文件

9
MaterialGraphProject/Assets/Florent/2Pass_Edited.ShaderGraph.meta


fileFormatVersion: 2
guid: c07ee90c6976be945b82c415058ab856
timeCreated: 1495744149
licenseType: Pro
ScriptedImporter:
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3}

25
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d38.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: UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d38
m_Shader: {fileID: 4800000, guid: 9de4796ffebd15d4a9d6e044a172fe49, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_339414d4_3f08_4a60_b7de_60b5078454cd_Uniform:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats: []
m_Colors: []

9
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d38.mat.meta


fileFormatVersion: 2
guid: 2f36728588f68054283366ab4ae9c063
timeCreated: 1495748163
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

25
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d39.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: UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d39
m_Shader: {fileID: 4800000, guid: 9de4796ffebd15d4a9d6e044a172fe49, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_339414d4_3f08_4a60_b7de_60b5078454cd_Uniform:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats: []
m_Colors: []

9
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d39.mat.meta


fileFormatVersion: 2
guid: 7405d8d39be93f147ade2d16eb314ed9
timeCreated: 1495748173
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

25
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d40.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: UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d40
m_Shader: {fileID: 4800000, guid: 9de4796ffebd15d4a9d6e044a172fe49, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_339414d4_3f08_4a60_b7de_60b5078454cd_Uniform:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats: []
m_Colors: []

9
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d40.mat.meta


fileFormatVersion: 2
guid: 6d1fb85810f6b2f4692425a7f4eb996a
timeCreated: 1495748373
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

29
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode8e1be5fc-7506-4529-879d-f1ce8c5aab04.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: UnityEngine.MaterialGraph.ExportTextureMasterNode8e1be5fc-7506-4529-879d-f1ce8c5aab04
m_Shader: {fileID: 4800000, guid: c07ee90c6976be945b82c415058ab856, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_52494c62_81e0_463e_aa3f_fadca56482fa_Uniform:
m_Texture: {fileID: 2800000, guid: 153d265862621434696692a6c4c4400c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_bcbba8c3_42d3_4afd_970e_817d00cd2f76_Uniform:
m_Texture: {fileID: 2800000, guid: 5d84e1086e00e3347aaa0bbba206bb80, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats: []
m_Colors: []

9
MaterialGraphProject/Assets/Florent/UnityEngine.MaterialGraph.ExportTextureMasterNode8e1be5fc-7506-4529-879d-f1ce8c5aab04.mat.meta


fileFormatVersion: 2
guid: 08334708bd70c504e8c76f956c62750f
timeCreated: 1495748895
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

44
MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.asset


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!86 &8600000
CustomRenderTexture:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_Width: 256
m_Height: 256
m_AntiAliasing: 1
m_DepthFormat: 0
m_ColorFormat: 0
m_MipMap: 0
m_GenerateMips: 1
m_SRGB: 0
m_TextureSettings:
serializedVersion: 2
m_FilterMode: 1
m_Aniso: 1
m_MipBias: 0
m_WrapU: 1
m_WrapV: 1
m_WrapW: 1
m_Dimension: 2
m_VolumeDepth: 1
m_Material: {fileID: 2100000, guid: 3bf2f26244334984889b9e531155075d, type: 2}
m_InitSource: 0
m_InitMaterial: {fileID: 0}
m_InitColor: {r: 1, g: 1, b: 1, a: 1}
m_InitTexture: {fileID: 0}
m_UpdateMode: 0
m_InitializationMode: 2
m_UpdateZoneSpace: 0
m_CurrentUpdateZoneSpace: 0
m_UpdateZones: []
m_UpdatePeriod: 0
m_ShaderPass: 0
m_CubemapFaceMask: 4294967295
m_DoubleBuffered: 0
m_WrapUpdateZones: 0

9
MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.asset.meta


fileFormatVersion: 2
guid: 99bed326f1768e1408b629b445ad0c39
timeCreated: 1495748248
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 8600000
userData:
assetBundleName:
assetBundleVariant:

25
MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.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: Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37
m_Shader: {fileID: 4800000, guid: 4afc3341bed83d34cb1aebb7e98d8751, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_339414d4_3f08_4a60_b7de_60b5078454cd_Uniform:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats: []
m_Colors: []

9
MaterialGraphProject/Assets/Generated.ExportTextureMasterNode71166862-083a-4792-8c3a-4111b9dd9d37.mat.meta


fileFormatVersion: 2
guid: 3bf2f26244334984889b9e531155075d
timeCreated: 1495748242
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

9
MaterialGraphProject/Assets/Matt/CharacterRendering.meta


fileFormatVersion: 2
guid: f25473f70e5844a4dabcea9bce39e35f
folderAsset: yes
timeCreated: 1495740471
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

44
MaterialGraphProject/Assets/_MingWai/New Custom Texture.asset


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!86 &8600000
CustomRenderTexture:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: New Custom Texture
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_Width: 256
m_Height: 256
m_AntiAliasing: 1
m_DepthFormat: 0
m_ColorFormat: 0
m_MipMap: 0
m_GenerateMips: 1
m_SRGB: 0
m_TextureSettings:
serializedVersion: 2
m_FilterMode: 1
m_Aniso: 1
m_MipBias: 0
m_WrapU: 1
m_WrapV: 1
m_WrapW: 1
m_Dimension: 2
m_VolumeDepth: 1
m_Material: {fileID: 0}
m_InitSource: 0
m_InitMaterial: {fileID: 0}
m_InitColor: {r: 1, g: 1, b: 1, a: 1}
m_InitTexture: {fileID: 0}
m_UpdateMode: 0
m_InitializationMode: 2
m_UpdateZoneSpace: 0
m_CurrentUpdateZoneSpace: 0
m_UpdateZones: []
m_UpdatePeriod: 0
m_ShaderPass: 0
m_CubemapFaceMask: 4294967295
m_DoubleBuffered: 0
m_WrapUpdateZones: 0

9
MaterialGraphProject/Assets/_MingWai/New Custom Texture.asset.meta


fileFormatVersion: 2
guid: 28805740b89754d4f87ecf03fa9a100d
timeCreated: 1495750594
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 8600000
userData:
assetBundleName:
assetBundleVariant:

25
MaterialGraphProject/Assets/_MingWai/Unlit_Wathever.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: Unlit_Wathever
m_Shader: {fileID: 4800000, guid: 0caa73edc5ef95645a596a31baaf26ea, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats: []
m_Colors: []

9
MaterialGraphProject/Assets/_MingWai/Unlit_Wathever.mat.meta


fileFormatVersion: 2
guid: ae2bee3d4885c164d91753ebf4c12c5b
timeCreated: 1495750581
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

58
MaterialGraphProject/Assets/_MingWai/Wathever.shader


Shader "Unlit/Wathever"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
// make fog work
#pragma multi_compile_fog
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
UNITY_FOG_COORDS(1)
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
float4 _MainTex_ST;
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
UNITY_TRANSFER_FOG(o,o.vertex);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
// sample the texture
fixed4 col = tex2D(_MainTex, i.uv);
// apply fog
UNITY_APPLY_FOG(i.fogCoord, col);
return col;
}
ENDCG
}
}
}

10
MaterialGraphProject/Assets/_MingWai/Wathever.shader.meta


fileFormatVersion: 2
guid: 0caa73edc5ef95645a596a31baaf26ea
timeCreated: 1495750552
licenseType: Pro
ShaderImporter:
defaultTextures: []
nonModifiableTextures: []
userData:
assetBundleName:
assetBundleVariant:

940
MaterialGraphProject/Assets/Matt/CharacterRendering/Anisotropic.shader


Shader "Character/Anisotropy"
{
Properties
{
Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform("Albedo", 2D) = "white" {}
Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform("Color", Color) = (1,1,1,0)
Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform("Normal", 2D) = "bump" {}
Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform("Metallic Tex", 2D) = "white" {}
Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform("Metallic", Range(0, 1)) = 1
Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform("Smoothness", Range(0, 1)) = 1
Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform("Anisotropy", Range(0, 1)) = 0.5
}
SubShader
{
Tags
{
"RenderType" = "Opaque"
"Queue" = "Geometry"
}
Blend One Zero
Cull Back
ZTest LEqual
ZWrite On
LOD 200
CGPROGRAM
#include "UnityCG.cginc"
//#include "AdvancedBRDF.cginc"
//#include "AdvancedShading.cginc"
//#include "AdvancedLighting.cginc"
#define SHADINGMODELID_STANDARD
// ------------------------------------------------------------------
// Diffuse
// From UE4 - Used for Cloth (Deprecated)
float3 Diffuse_Lambert(float3 DiffuseColor)
{
return DiffuseColor * (1 / UNITY_PI);
}
// ------------------------------------------------------------------
// Fresnel
// From UE4 - Used for Cloth
// [Schlick 1994, "An Inexpensive BRDF Model for Physically-Based Rendering"]
float3 F_Schlick(float3 SpecularColor, float VoH)
{
float Fc = Pow5(1 - VoH); // 1 sub, 3 mul
//return Fc + (1 - Fc) * SpecularColor; // 1 add, 3 mad
// Anything less than 2% is physically impossible and is instead considered to be shadowing
return saturate(50.0 * SpecularColor.g) * Fc + (1 - Fc) * SpecularColor;
}
// ------------------------------------------------------------------
// Distribution
// From UE4 - USed for Cloth
// GGX / Trowbridge-Reitz
// [Walter et al. 2007, "Microfacet models for refraction through rough surfaces"]
float D_GGX(float roughness, float NdotH)
{
float a = roughness * roughness;
float a2 = a * a;
float d = (NdotH * a2 - NdotH) * NdotH + 1; // 2 mad
return a2 / (UNITY_PI*d*d); // 4 mul, 1 rcp
}
// Anisotropic GGX
// Taken from HDRenderPipeline
float D_GGXAnisotropic(float TdotH, float BdotH, float NdotH, float roughnessT, float roughnessB)
{
float f = TdotH * TdotH / (roughnessT * roughnessT) + BdotH * BdotH / (roughnessB * roughnessB) + NdotH * NdotH;
return 1.0 / (roughnessT * roughnessB * f * f);
}
// From UE4 - Used for Cloth
float D_InvGGX(float roughness, float NdotH)
{
float a = roughness * roughness;
float a2 = a * a;
float A = 4;
float d = (NdotH - a2 * NdotH) * NdotH + a2;
return 1 / (UNITY_PI * (1 + A*a2)) * (1 + 4 * a2*a2 / (d*d)); //RCP
}
// ------------------------------------------------------------------
// Visibility
// From UE4 - Used for Cloth
// Appoximation of joint Smith term for GGX
// [Heitz 2014, "Understanding the Masking-Shadowing Function in Microfacet-Based BRDFs"]
float Vis_SmithJointApprox(float Roughness, float NoV, float NoL)
{
float a = (Roughness*Roughness);
float Vis_SmithV = NoL * (NoV * (1 - a) + a);
float Vis_SmithL = NoV * (NoL * (1 - a) + a);
// Note: will generate NaNs with Roughness = 0. MinRoughness is used to prevent this
return 0.5 * 1 / (Vis_SmithV + Vis_SmithL); //RCP
}
// From UE4 - Used for Cloth
float Vis_Cloth(float NoV, float NoL)
{
return 1 / (4 * (NoL + NoV - NoL * NoV)); //RCP
}
// ------------------------------------------------------------------
// SORT THESE
// Smith Joint GGX Anisotropic Visibility
// Taken from https://cedec.cesa.or.jp/2015/session/ENG/14698.html
float SmithJointGGXAnisotropic(float TdotV, float BdotV, float NdotV, float TdotL, float BdotL, float NdotL, float roughnessT, float roughnessB)
{
float aT = roughnessT;
float aT2 = aT * aT;
float aB = roughnessB;
float aB2 = aB * aB;
float lambdaV = NdotL * sqrt(aT2 * TdotV * TdotV + aB2 * BdotV * BdotV + NdotV * NdotV);
float lambdaL = NdotV * sqrt(aT2 * TdotL * TdotL + aB2 * BdotL * BdotL + NdotL * NdotL);
return 0.5 / (lambdaV + lambdaL);
}
// Convert Anistropy to roughness
void ConvertAnisotropyToRoughness(float roughness, float anisotropy, out float roughnessT, out float roughnessB)
{
// (0 <= anisotropy <= 1), therefore (0 <= anisoAspect <= 1)
// The 0.9 factor limits the aspect ratio to 10:1.
float anisoAspect = sqrt(1.0 - 0.9 * anisotropy);
roughnessT = roughness / anisoAspect; // Distort along tangent (rougher)
roughnessB = roughness * anisoAspect; // Straighten along bitangent (smoother)
}
// Schlick Fresnel
float FresnelSchlick(float f0, float f90, float u)
{
float x = 1.0 - u;
float x5 = x * x;
x5 = x5 * x5 * x;
return (f90 - f0) * x5 + f0; // sub mul mul mul sub mad
}
//Clamp roughness
float ClampRoughnessForAnalyticalLights(float roughness)
{
return max(roughness, 0.000001);
}
//Calculate tangent warp for IBL (Reference Version - not used)
float3 SpecularGGXIBLRef(float3 viewDir, float3 normalDir, float3 tangentDir, float3 bitangentDir, float roughnessT, float roughnessB)
{
return float3(1, 1, 1);
//Hidden in UnityAnisotropicLighting.cginc
}
// Sample Anisotropic Direction for IBL (Reference Version - not used)
void SampleAnisoGGXDir(float2 u, float3 viewDir, float3 normalDir, float3 tangent, float3 bitangent, float roughnessT, float roughnessB, out float3 halfDir, out float3 lightDir)
{
// AnisoGGX NDF sampling
halfDir = sqrt(u.x / (1.0 - u.x)) * (roughnessT * cos((UNITY_PI * 2) * u.y) * tangent + roughnessB * sin((UNITY_PI * 2) * u.y) * bitangent) + normalDir;
halfDir = normalize(halfDir);
// Convert sample from half angle to incident angle
lightDir = 2.0 * saturate(dot(viewDir, halfDir)) * halfDir - viewDir;
}
// Ref: Donald Revie - Implementing Fur Using Deferred Shading (GPU Pro 2)
// The grain direction (e.g. hair or brush direction) is assumed to be orthogonal to the normal.
// The returned normal is NOT normalized.
float3 ComputeGrainNormal(float3 grainDir, float3 V)
{
float3 B = cross(-V, grainDir);
return cross(B, grainDir);
}
//Modify Normal for Anisotropic IBL (Realtime version)
// Fake anisotropic by distorting the normal.
// The grain direction (e.g. hair or brush direction) is assumed to be orthogonal to N.
// Anisotropic ratio (0->no isotropic; 1->full anisotropy in tangent direction)
float3 GetAnisotropicModifiedNormal(float3 grainDir, float3 N, float3 V, float anisotropy)
{
float3 grainNormal = ComputeGrainNormal(grainDir, V);
// TODO: test whether normalizing 'grainNormal' is worth it.
return normalize(lerp(N, grainNormal, anisotropy));
}
/// REGION END - ANISOTROPY
/// REGION START - SUBSURFACE SCATTERING
half Fresnel(half3 H, half3 V, half F0)
{
half base = 1.0 - dot(V, H);
half exponential = pow(base, 5.0);
return exponential + F0 * (1.0 - exponential);
}
/*
inline half3 KelemenSzirmayKalosSpecular(half3 normal, half3 lightDir, half3 viewDir, float roughness, float rho_s)
{
half3 result = half3(0, 0, 0);
half NdotL = dot(normal, lightDir);
if (NdotL > 0.0)
{
half3 h = lightDir + viewDir;
half3 H = normalize(h);
half NdotH = dot(normal, H);
half PH = pow(2.0 * tex2D(_BeckmannPrecomputedTex, half2(NdotH, roughness)).r, 10.0);
half F = Fresnel(H, viewDir, 0.028);
half frSpec = max(PH * F / dot(h, h), 0);
half term = NdotL * rho_s * frSpec;
result = half3(term, term, term);
}
return result;
}*/
/*
half3 SkinDiffuse(float curv, float3 NdotL)
{
float3 lookup = NdotL * 0.5 + 0.5;
float3 diffuse;
diffuse.r = tex2D(_DiffusionProfileTexture, float2(lookup.r, curv)).r;
diffuse.g = tex2D(_DiffusionProfileTexture, float2(lookup.g, curv)).g;
diffuse.b = tex2D(_DiffusionProfileTexture, float2(lookup.b, curv)).b;
return diffuse;
}*/
/// REGION END - SUBSURFACE SCATTERING
// Upgrade NOTE: replaced 'defined SHADINGMODELID_CLEARCOAT' with 'defined (SHADINGMODELID_CLEARCOAT)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_CLOTH' with 'defined (SHADINGMODELID_CLOTH)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_EYE' with 'defined (SHADINGMODELID_EYE)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_FOLIAGE' with 'defined (SHADINGMODELID_FOLIAGE)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_HAIR' with 'defined (SHADINGMODELID_HAIR)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_SKIN' with 'defined (SHADINGMODELID_SKIN)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_SUBSURFACE' with 'defined (SHADINGMODELID_SUBSURFACE)'
// ------------------------------------------------------------------
// Shading models
//#pragma multi_compile SHADINGMODELID_UNLIT SHADINGMODELID_STANDARD SHADINGMODELID_SUBSURFACE SHADINGMODELID_SKIN SHADINGMODELID_FOLIAGE SHADINGMODELID_CLEARCOAT SHADINGMODELID_CLOTH SHADINGMODELID_EYE
// ------------------------------------------------------------------
// Input
half _ShadingModel;
sampler2D _AnisotropyMap;
half _Anisotropy;
sampler2D _TangentMap;
half4 _TranslucentColor;
sampler2D _TranslucencyMap;
sampler2D _FuzzTex;
half3 _FuzzColor;
half _Cloth;
sampler2D _IrisNormal;
sampler2D _IrisMask;
half _IrisDistance;
half _TDistortion;
half _TScale;
half _TAmbient;
half _TPower;
half _TAttenuation;
half _TransmissionOverallStrength;
// ------------------------------------------------------------------
// Maths helpers
// Octahedron Normal Vectors
// [Cigolle 2014, "A Survey of Efficient Representations for Independent Unit Vectors"]
// Mean Max
// oct 8:8 0.33709 0.94424
// snorm 8:8:8 0.17015 0.38588
// oct 10:10 0.08380 0.23467
// snorm 10:10:10 0.04228 0.09598
// oct 12:12 0.02091 0.05874
float2 UnitVectorToOctahedron(float3 N)
{
N.xy /= dot(float3(1,1,1), abs(N));
if (N.z <= 0)
{
N.xy = (1 - abs(N.yx)) * (N.xy >= 0 ? float2(1, 1) : float2(-1, -1));
}
return N.xy;
}
float3 OctahedronToUnitVector(float2 Oct)
{
float3 N = float3(Oct, 1 - dot(float2(1,1), abs(Oct)));
if (N.z < 0)
{
N.xy = (1 - abs(N.yx)) * (N.xy >= 0 ? float2(1, 1) : float2(-1, -1));
}
return float3(1, 1, 1);
return normalize(N);
}
// ------------------------------------------------------------------
// Surface helpers
half Anisotropy(float2 uv)
{
return tex2D(_AnisotropyMap, uv) * _Anisotropy;
}
half3 Fuzz(float2 uv)
{
return tex2D(_FuzzTex, uv) * _FuzzColor;
}
half Cloth()
{
return _Cloth;
}
half4 Iris(float2 uv)
{
float2 n = UnitVectorToOctahedron(normalize(UnpackNormal(tex2D(_IrisNormal, uv)).rgb)) * 0.5 + 0.5;
float m = saturate(tex2D(_IrisMask, uv).r); // Iris Mask
float d = saturate(_IrisDistance); // Iris Distance
return float4(n.x, n.y, m, d);
}
half3 Translucency(float2 uv)
{
return tex2D(_TranslucencyMap, uv).rgb * _TranslucentColor.rgb;
}
// ------------------------------------------------------------------
// Unlit Shading Function
float4 UnlitShading(float3 diffColor)
{
return half4(diffColor, 1);
}
// ------------------------------------------------------------------
// Standard Shading Function
float4 StandardShading(float3 diffColor, float3 specColor, float oneMinusReflectivity, float smoothness, float3 normal, float3x3 worldVectors,
float anisotropy, float metallic, float3 viewDir, UnityLight light, UnityIndirect gi)
{
//Unpack world vectors
float3 tangent = worldVectors[0];
float3 bitangent = worldVectors[1];
//Normal shift
float shiftAmount = dot(normal, viewDir);
normal = shiftAmount < 0.0f ? normal + viewDir * (-shiftAmount + 1e-5f) : normal;
//Regular vectors
float NdotL = saturate(dot(normal, light.dir)); //sat?
float NdotV = abs(dot(normal, viewDir)); //abs?
float LdotV = dot(light.dir, viewDir);
float3 H = Unity_SafeNormalize(light.dir + viewDir);
float invLenLV = rsqrt(abs(2 + 2 * normalize(LdotV)));
//float invLenLV = rsqrt(abs(2 + 2 * LdotV));
//float NdotH = (NdotL + normalize(NdotV)) * invLenLV;
float NdotH = saturate(dot(normal, H));
//float NdotH = saturate((NdotL + normalize(NdotV)) * invLenLV);
//float H = (light.dir + viewDir) * invLenLV;
float LdotH = saturate(dot(light.dir, H));
//Tangent vectors
float TdotH = dot(tangent, H);
float TdotL = dot(tangent, light.dir);
float BdotH = dot(bitangent, H);
float BdotL = dot(bitangent, light.dir);
float TdotV = dot(viewDir, tangent);
float BdotV = dot(viewDir, bitangent);
//Fresnels
half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
float3 F = FresnelLerp(specColor, grazingTerm, NdotV); //Original Schlick - Replace from SRP?
//float3 fresnel0 = lerp(specColor, diffColor, metallic);
//float3 F = FresnelSchlick(fresnel0, 1.0, LdotH);
//Calculate roughness
float roughnessT;
float roughnessB;
float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
ConvertAnisotropyToRoughness(roughness, anisotropy, roughnessT, roughnessB);
//Clamp roughness
//roughness = ClampRoughnessForAnalyticalLights(roughness);
roughnessT = ClampRoughnessForAnalyticalLights(roughnessT);
roughnessB = ClampRoughnessForAnalyticalLights(roughnessB);
//Visibility & Distribution terms
float V = SmithJointGGXAnisotropic(TdotV, BdotV, NdotV, TdotL, BdotL, NdotL, roughnessT, roughnessB);
float D = D_GGXAnisotropic(TdotH, BdotH, NdotH, roughnessT, roughnessB);
//Specular term
float3 specularTerm = V * D; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm = sqrt(max(1e-4h, specularTerm));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
specularTerm = max(0, specularTerm * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm = 0.0;
#endif
//Diffuse term
float diffuseTerm = DisneyDiffuse(NdotV, NdotL, LdotH, perceptualRoughness) * NdotL;// - Need this NdotL multiply?
//Reduction
half surfaceReduction;
# ifdef UNITY_COLORSPACE_GAMMA
surfaceReduction = 1.0 - 0.28*roughness*perceptualRoughness; // 1-0.28*x^3 as approximation for (1/(x^4+1))^(1/2.2) on the domain [0;1]
# else
surfaceReduction = 1.0 / (roughness*roughness + 1.0); // fade \in [0.5;1]
# endif
//Final
half3 color = (diffColor * (gi.diffuse + light.color * diffuseTerm))
+ specularTerm * light.color * FresnelTerm(specColor, LdotH)
+ surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, NdotV);
return half4(color, 1);
}
// ------------------------------------------------------------------
// Cloth Shading Function
//float3 ClothShading(FGBufferData GBuffer, float3 LobeRoughness, float3 LobeEnergy, float3 L, float3 V, half3 N)
float4 ClothShading(float3 diffColor, float3 specColor, float3 fuzzColor, float cloth, float oneMinusReflectivity, float smoothness, float3 normal, float3 viewDir, UnityLight light, UnityIndirect gi, float3x3 worldVectors, float anisotropy)
{
const float3 FuzzColor = saturate(fuzzColor);
const float Cloth = saturate(cloth);
//Regular vectors
float NdotL = saturate(dot(normal, light.dir)); //sat?
float NdotV = abs(dot(normal, viewDir)); //abs?
float LdotV = dot(light.dir, viewDir);
//float invLenLV = rsqrt(abs(2 + 2 * normalize(LdotV)));
////float invLenLV = rsqrt(abs(2 + 2 * LdotV));
//float NdotH = (NdotL + normalize(NdotV)) * invLenLV;
//float NdotH = saturate((NdotL + normalize(NdotV)) * invLenLV);
float3 H = Unity_SafeNormalize(light.dir + viewDir);
//float H = (light.dir + viewDir) * invLenLV;
float LdotH = saturate(dot(light.dir, H));
//float3 H = normalize(viewDir + light.dir);
//float NdotL = saturate(dot(normal, light.dir));
//float NdotV = saturate(abs(dot(normal, viewDir)) + 1e-5);
float NdotH = saturate(dot(normal, H));
float VdotH = saturate(dot(viewDir, H));
//float LdotH = saturate(dot(light.dir, H));
half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
// Diffuse
float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
float diffuseTerm = DisneyDiffuse(NdotV, NdotL, LdotH, perceptualRoughness) * NdotL;// - Need this NdotL multiply?
// Cloth - Asperity Scattering - Inverse Beckmann Layer
float3 F1 = FresnelTerm(fuzzColor, LdotH);// FresnelLerp(fuzzColor, grazingTerm, NdotV);// FresnelTerm(FuzzColor, LdotH);// F_Schlick(FuzzColor, VdotH);
float D1 = D_InvGGX(roughness, NdotH);
float V1 = Vis_Cloth(NdotV, NdotL);
//Specular term
float3 specularTerm1 = V1 * D1; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm1 = sqrt(max(1e-4h, specularTerm1));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
// specularTerm1 = max(0, specularTerm1 * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm1 = 0.0;
#endif
float3 Spec1 = specularTerm1 * light.color * FresnelTerm(fuzzColor, LdotH);
// Generalized microfacet specular
/*float3 F2 = F_Schlick(specColor, VdotH);
float D2 = D_GGX(roughness, NdotH);
float V2 = Vis_SmithJointApprox(roughness, NdotV, NdotL);
float3 Spec2 = D2 * V2 * F2 * light.color;*/
//Unpack world vectors
float3 tangent = worldVectors[0];
float3 bitangent = worldVectors[1];
//Tangent vectors
float TdotH = dot(tangent, H);
float TdotL = dot(tangent, light.dir);
float BdotH = dot(bitangent, H);
float BdotL = dot(bitangent, light.dir);
float TdotV = dot(viewDir, tangent);
float BdotV = dot(viewDir, bitangent);
//Fresnels
float3 F2 = FresnelLerp(specColor, grazingTerm, NdotV);// FresnelTerm(specColor, LdotH);// FresnelLerp(specColor, grazingTerm, NdotV); //Original Schlick - Replace from SRP?
float roughnessT;
float roughnessB;
//float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
//float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
ConvertAnisotropyToRoughness(roughness, anisotropy, roughnessT, roughnessB);
//Clamp roughness
//roughness = ClampRoughnessForAnalyticalLights(roughness);
roughnessT = ClampRoughnessForAnalyticalLights(roughnessT);
roughnessB = ClampRoughnessForAnalyticalLights(roughnessB);
//Visibility & Distribution terms
float V2 = SmithJointGGXAnisotropic(TdotV, BdotV, NdotV, TdotL, BdotL, NdotL, roughnessT, roughnessB);
float D2 = D_GGXAnisotropic(TdotH, BdotH, NdotH, roughnessT, roughnessB);
//Specular term
float3 specularTerm2 = V2 * D2; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm2 = sqrt(max(1e-4h, specularTerm2));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
specularTerm2 = max(0, specularTerm2 * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm2 = 0.0;
#endif
float3 Spec2 = specularTerm2 * light.color * FresnelTerm(specColor, LdotH);
float3 Spec = lerp(Spec2, Spec1, Cloth);
//Reduction
half surfaceReduction;
# ifdef UNITY_COLORSPACE_GAMMA
surfaceReduction = 1.0 - 0.28*roughness*perceptualRoughness; // 1-0.28*x^3 as approximation for (1/(x^4+1))^(1/2.2) on the domain [0;1]
# else
surfaceReduction = 1.0 / (roughness*roughness + 1.0); // fade \in [0.5;1]
# endif
//Final
//half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
half3 color = (diffColor * (gi.diffuse + light.color * diffuseTerm))
+ Spec
+ surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, NdotV);
return half4(color, 1);
}
// ------------------------------------------------------------------
// Eye Shading Function
//float3 EyeShading(FGBufferData GBuffer, float3 LobeRoughness, float3 LobeEnergy, float3 L, float3 V, half3 N)
float4 EyeShading(float3 diffColor, float3 specColor, float3 viewDir, half3 normal, float smoothness, float oneMinusReflectivity, UnityLight light, UnityIndirect gi)
{
float3 H = normalize(viewDir + light.dir);
float NdotL = saturate(dot(normal, light.dir));
float NdotV = saturate(abs(dot(normal, viewDir)) + 1e-5);
float NdotH = saturate(dot(normal, H));
float VdotH = saturate(dot(viewDir, H));
float LdotH = saturate(dot(light.dir, H));
// Generalized microfacet specular
float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
float D = D_GGX(roughness, NdotH);// *LobeEnergy[1];
float V = Vis_SmithJointApprox(roughness, NdotV, NdotL);
float3 F = F_Schlick(specColor, VdotH);
float3 specularTerm = V * D; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm = sqrt(max(1e-4h, specularTerm));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
specularTerm = max(0, specularTerm * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm = 0.0;
#endif
half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
half surfaceReduction;
# ifdef UNITY_COLORSPACE_GAMMA
surfaceReduction = 1.0 - 0.28*roughness*perceptualRoughness; // 1-0.28*x^3 as approximation for (1/(x^4+1))^(1/2.2) on the domain [0;1]
# else
surfaceReduction = 1.0 / (roughness*roughness + 1.0); // fade \in [0.5;1]
# endif
float diffuseTerm = DisneyDiffuse(NdotV, NdotL, LdotH, perceptualRoughness) * NdotL; // TODO - Unreal does not apply diffuse in Shading function
//Final
half3 color = (diffColor * (gi.diffuse + light.color * diffuseTerm))
+ specularTerm * light.color * FresnelTerm(specColor, LdotH)
+ surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, NdotV);
return half4(color, 1);
}
// ------------------------------------------------------------------
// Subsurface Shading Function
float3 SubsurfaceShadingSimple(float3 diffColor, float3 normal, float3 viewDir, float3 thickness, UnityLight light)
{
half3 vLTLight = light.dir + normal * 1;
half fLTDot = pow(saturate(dot(viewDir, -vLTLight)), 3.5) * 1.5;
half3 fLT = 1 * (fLTDot + 1.2) * (thickness);
return diffColor * ((light.color * fLT) * 0.4);
}
// ------------------------------------------------------------------
// Eye Subsurface Shading Function
//float3 EyeSubsurfaceShading(FGBufferData GBuffer, float3 L, float3 V, half3 N)
float3 EyeSubsurfaceShading(float3 diffColor, float3 specColor, float3 viewDir, half3 normal, float smoothness, float4 iris, UnityLight light)
{
float2 irisNormal = iris.rg;
float irisMask = iris.z;
float irisDistance = iris.w;
float3 H = normalize(viewDir + light.dir);
float VdotH = saturate(dot(viewDir, H));
float NdotV = saturate(abs(dot(normal, viewDir)) + 1e-5);
float LdotH = saturate(dot(light.dir, H));
// F_Schlick
//float F0 = GBuffer.Specular * 0.08;
//float Fc = Pow5(1 - VoH);
//float F = Fc + (1 - Fc) * F0;
float3 fresnel0 = lerp(specColor, diffColor, smoothness);
float3 F = FresnelSchlick(fresnel0, 1.0, LdotH);
//float IrisDistance = GBuffer.CustomData.w;
//float IrisMask = GBuffer.CustomData.z;
float3 IrisNormal;
IrisNormal = OctahedronToUnitVector(irisNormal * 2 - 1);
// Blend in the negative intersection normal to create some concavity
// Not great as it ties the concavity to the convexity of the cornea surface
// No good justification for that. On the other hand, if we're just looking to
// introduce some concavity, this does the job.
float3 CausticNormal = normalize(lerp(IrisNormal, -normal, irisMask*irisDistance));
float NdotL = saturate(dot(IrisNormal, light.dir));
float Power = lerp(12, 1, NdotL);
float Caustic = 0.6 + 0.2 * (Power + 1) * pow(saturate(dot(CausticNormal, light.dir)), Power);
float Iris = NdotL * Caustic;
// http://blog.stevemcauley.com/2011/12/03/energy-conserving-wrapped-diffuse/
float Wrap = 0.15;
float Sclera = saturate((dot(normal, light.dir) + Wrap) / (1 + Wrap) * (1 + Wrap));
return (1 - F) * lerp(Sclera, Iris, irisMask) * diffColor / UNITY_PI;
}
// ------------------------------------------------------------------
// Shading function selectors
//float3 SurfaceShading(/*FGBufferData GBuffer,*/ float3 LobeRoughness, float3 LobeEnergy, float3 L, float3 V, half3 N, uint2 Random)
float4 SurfaceShading(float3 diffColor, float3 specColor, float oneMinusReflectivity, float smoothness, float3 normal,
float3x3 worldVectors, float anisotropy, float4 customData, float metallic, float3 viewDir, UnityLight light, UnityIndirect gi)
{
#if defined(SHADINGMODELID_UNLIT)
{
return UnlitShading(diffColor);
}
#elif defined(SHADINGMODELID_STANDARD) || defined(SHADINGMODELID_SUBSURFACE) || defined(SHADINGMODELID_SKIN) || defined(SHADINGMODELID_FOLIAGE)
{
return StandardShading(diffColor, specColor, oneMinusReflectivity, smoothness,
normal, worldVectors, anisotropy, metallic, viewDir, light, gi);
}
#elif defined (SHADINGMODELID_CLEARCOAT)
{
return float4(1, 1, 1, 1); //ClearCoatShading(GBuffer, LobeRoughness, LobeEnergy, L, V, N);
}
#elif defined (SHADINGMODELID_CLOTH)
{
return ClothShading(diffColor, specColor, customData.rgb, customData.a, oneMinusReflectivity, smoothness, normal, viewDir, light, gi, worldVectors, anisotropy);
}
#elif defined (SHADINGMODELID_EYE)
{
return EyeShading(diffColor, specColor, viewDir, normal, smoothness, oneMinusReflectivity, light, gi); //EyeShading(GBuffer, LobeRoughness, LobeEnergy, L, V, N);
}
#endif
return float4(0, 0, 0, 0);
}
//float3 SubsurfaceShading(/*FGBufferData GBuffer,*/ float3 L, float3 V, half3 N, float Shadow, uint2 Random)
float3 SubsurfaceShading(float3 diffColor, float3 specColor, float3 normal, float smoothness, float3 viewDir, float4 customData, UnityLight light)
{
#if defined (SHADINGMODELID_SUBSURFACE)
{
return SubsurfaceShadingSimple(diffColor, normal, viewDir, customData.rgb, light);
}
#elif defined (SHADINGMODELID_SKIN)
{
return float3(0, 0, 0); //SubsurfaceShadingPreintegratedSkin(GBuffer, L, V, N);
}
#elif defined (SHADINGMODELID_FOLIAGE)
{
return float3(0, 0, 0); //SubsurfaceShadingTwoSided(SubsurfaceColor, L, V, N);
}
#elif defined (SHADINGMODELID_HAIR)
{
return float3(0, 0, 0); //HairShading(GBuffer, L, V, N, Shadow, 1, 0, Random);
}
#elif defined (SHADINGMODELID_EYE)
{
return EyeSubsurfaceShading(diffColor, specColor, viewDir, normal, smoothness, customData, light); //EyeSubsurfaceShading(GBuffer, L, V, N);
}
#endif
return float3(0, 0, 0);
}
//#endif UNITY_ADVANCED_SHADINGMODELS_INCLUDED
//-------------------------------------------------------------------------------------
// Lighting Helpers
// Glossy Environment
half3 Unity_AnisotropicGlossyEnvironment(UNITY_ARGS_TEXCUBE(tex), half4 hdr, Unity_GlossyEnvironmentData glossIn, half anisotropy) //Reference IBL from HD Pipe (Add half3 L input and replace R)
{
half perceptualRoughness = glossIn.roughness /* perceptualRoughness */;
// TODO: CAUTION: remap from Morten may work only with offline convolution, see impact with runtime convolution!
// For now disabled
#if 0
float m = PerceptualRoughnessToRoughness(perceptualRoughness); // m is the real roughness parameter
const float fEps = 1.192092896e-07F; // smallest such that 1.0+FLT_EPSILON != 1.0 (+1e-4h is NOT good here. is visibly very wrong)
float n = (2.0 / max(fEps, m*m)) - 2.0; // remap to spec power. See eq. 21 in --> https://dl.dropboxusercontent.com/u/55891920/papers/mm_brdf.pdf
n /= 4; // remap from n_dot_h formulatino to n_dot_r. See section "Pre-convolved Cube Maps vs Path Tracers" --> https://s3.amazonaws.com/docs.knaldtech.com/knald/1.0.0/lys_power_drops.html
perceptualRoughness = pow(2 / (n + 2), 0.25); // remap back to square root of real roughness (0.25 include both the sqrt root of the conversion and sqrt for going from roughness to perceptualRoughness)
#else
// MM: came up with a surprisingly close approximation to what the #if 0'ed out code above does.
perceptualRoughness = perceptualRoughness*(1.7 - 0.7*perceptualRoughness);
#endif
half mip = perceptualRoughnessToMipmapLevel(perceptualRoughness);
half3 R = glossIn.reflUVW;// -half3(anisotropy, 0, 0);
half4 rgbm = UNITY_SAMPLE_TEXCUBE_LOD(tex, R, mip);
return DecodeHDR(rgbm, hdr);
}
// Indirect Specular
inline half3 UnityGI_AnisotropicIndirectSpecular(UnityGIInput data, half occlusion, Unity_GlossyEnvironmentData glossIn, half anisotropy, half3x3 worldVectors)
{
half3 specular;
float3 tangentX = worldVectors[0];
float3 tangentY = worldVectors[1];
float3 N = worldVectors[2];
float3 V = data.worldViewDir;
float3 iblNormalWS = GetAnisotropicModifiedNormal(tangentY, N, V, anisotropy);
float3 iblR = reflect(-V, iblNormalWS);
#ifdef UNITY_SPECCUBE_BOX_PROJECTION
// we will tweak reflUVW in glossIn directly (as we pass it to Unity_GlossyEnvironment twice for probe0 and probe1), so keep original to pass into BoxProjectedCubemapDirection
half3 originalReflUVW = glossIn.reflUVW;
glossIn.reflUVW = BoxProjectedCubemapDirection(iblR, data.worldPos, data.probePosition[0], data.boxMin[0], data.boxMax[0]);
#endif
#ifdef _GLOSSYREFLECTIONS_OFF
specular = unity_IndirectSpecColor.rgb;
#else
half3 env0 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE(unity_SpecCube0), data.probeHDR[0], glossIn, anisotropy);
//half3 env0 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE(unity_SpecCube0), data.probeHDR[0], glossIn, anisotropy, L); //Reference IBL from HD Pipe
#ifdef UNITY_SPECCUBE_BLENDING
const float kBlendFactor = 0.99999;
float blendLerp = data.boxMin[0].w;
UNITY_BRANCH
if (blendLerp < kBlendFactor)
{
#ifdef UNITY_SPECCUBE_BOX_PROJECTION
glossIn.reflUVW = BoxProjectedCubemapDirection(iblR, data.worldPos, data.probePosition[1], data.boxMin[1], data.boxMax[1]);
#endif
half3 env1 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0), data.probeHDR[1], glossIn, anisotropy);
//half3 env1 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0), data.probeHDR[1], glossIn, anisotropy, L); //Reference IBL from HD Pipe
specular = lerp(env1, env0, blendLerp);
}
else
{
specular = env0;
}
#else
specular = env0;
#endif
#endif
return specular * occlusion;// *weightOverPdf; //Reference IBL from HD Pipe
//return specular * occlusion * weightOverPdf; //Reference IBL from HD Pipe
}
// Global Illumination
inline UnityGI UnityAnisotropicGlobalIllumination(UnityGIInput data, half occlusion, half3 normalWorld, Unity_GlossyEnvironmentData glossIn, half anisotropy, half3x3 worldVectors)
{
UnityGI o_gi = UnityGI_Base(data, occlusion, normalWorld);
o_gi.indirect.specular = UnityGI_AnisotropicIndirectSpecular(data, occlusion, glossIn, anisotropy, worldVectors);
return o_gi;
}
//-------------------------------------------------------------------------------------
// Lighting Functions
//Surface Description
struct SurfaceOutputAdvanced
{
fixed3 Albedo; // base (diffuse or specular) color
fixed3 Normal; // tangent space normal, if written
half3 Emission;
half Metallic; // 0=non-metal, 1=metal
// Smoothness is the user facing name, it should be perceptual smoothness but user should not have to deal with it.
// Everywhere in the code you meet smoothness it is perceptual smoothness
half Smoothness; // 0=rough, 1=smooth
half Occlusion; // occlusion (default 1)
fixed Alpha; // alpha for transparencies
half3 Tangent;
half Anisotropy;
half4 CustomData;
float3x3 WorldVectors;
//half ShadingModel;
};
inline half4 LightingAdvanced(SurfaceOutputAdvanced s, half3 viewDir, UnityGI gi)
{
s.Normal = normalize(s.Normal);
half oneMinusReflectivity;
half3 specColor;
s.Albedo = DiffuseAndSpecularFromMetallic(s.Albedo, s.Metallic, /*out*/ specColor, /*out*/ oneMinusReflectivity);
// shader relies on pre-multiply alpha-blend (_SrcBlend = One, _DstBlend = OneMinusSrcAlpha)
// this is necessary to handle transparency in physically correct way - only diffuse component gets affected by alpha
half outputAlpha;
s.Albedo = PreMultiplyAlpha(s.Albedo, s.Alpha, oneMinusReflectivity, /*out*/ outputAlpha);
half4 c = SurfaceShading(s.Albedo, specColor, oneMinusReflectivity, s.Smoothness, s.Normal, s.WorldVectors, s.Anisotropy, s.CustomData, s.Metallic, viewDir, gi.light, gi.indirect);
c.rgb += SubsurfaceShading(s.Albedo, specColor, s.Normal, s.Smoothness, viewDir, s.CustomData, gi.light);
//c.rgb += UNITY_BRDF_GI(s.Albedo, specColor, oneMinusReflectivity, s.Smoothness, s.Normal, viewDir, s.Occlusion, gi);
c.a = outputAlpha;
return c;
}
//This is pointless as always forward?
inline half4 LightingAdvanced_Deferred(SurfaceOutputAdvanced s, half3 viewDir, UnityGI gi, out half4 outGBuffer0, out half4 outGBuffer1, out half4 outGBuffer2)
{
half oneMinusReflectivity;
half3 specColor;
s.Albedo = DiffuseAndSpecularFromMetallic(s.Albedo, s.Metallic, /*out*/ specColor, /*out*/ oneMinusReflectivity);
half4 c = SurfaceShading(s.Albedo, specColor, oneMinusReflectivity, s.Smoothness, s.Normal, s.WorldVectors, s.Anisotropy, s.CustomData, s.Metallic, viewDir, gi.light, gi.indirect);
c.rgb += SubsurfaceShading(s.Albedo, specColor, s.Normal, s.Smoothness, viewDir, s.CustomData, gi.light);
UnityStandardData data;
data.diffuseColor = s.Albedo;
data.occlusion = s.Occlusion;
data.specularColor = specColor;
data.smoothness = s.Smoothness;
data.normalWorld = s.Normal;
UnityStandardDataToGbuffer(data, outGBuffer0, outGBuffer1, outGBuffer2);
half4 emission = half4(s.Emission + c.rgb, 1);
return emission;
}
inline void LightingAdvanced_GI(SurfaceOutputAdvanced s, UnityGIInput data, inout UnityGI gi)
{
#if defined(UNITY_PASS_DEFERRED) && UNITY_ENABLE_REFLECTION_BUFFERS
gi = UnityGlobalIllumination(data, s.Occlusion, s.Normal);
#else
Unity_GlossyEnvironmentData g = UnityGlossyEnvironmentSetup(s.Smoothness, data.worldViewDir, s.Normal, lerp(unity_ColorSpaceDielectricSpec.rgb, s.Albedo, s.Metallic));
gi = UnityAnisotropicGlobalIllumination(data, s.Occlusion, s.Normal, g, s.Anisotropy, s.WorldVectors);
#endif
}
///END
//#pragma target 5.0
#pragma surface surf Advanced vertex:vert
#pragma glsl
#pragma debug
inline float4 unity_multiply_float(float4 arg1, float4 arg2)
{
return arg1 * arg2;
}
inline float unity_multiply_float(float arg1, float arg2)
{
return arg1 * arg2;
}
sampler2D Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform;
float4 Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform;
sampler2D Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform;
sampler2D Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform;
float Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform;
float Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform;
float Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform;
struct Input
{
float4 color : COLOR;
half4 meshUV0;
float4 worldTangent;
float3 worldNormal;
INTERNAL_DATA
};
void vert(inout appdata_full v, out Input o)
{
UNITY_INITIALIZE_OUTPUT(Input,o);
o.meshUV0 = v.texcoord;
o.worldTangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
}
void surf(Input IN, inout SurfaceOutputAdvanced o)
{
half4 uv0 = IN.meshUV0;
float3 worldSpaceTangent = normalize(IN.worldTangent.xyz);
float3 worldSpaceNormal = normalize(IN.worldNormal);
float3 worldSpaceBitangent = cross(worldSpaceNormal, worldSpaceTangent) * IN.worldTangent.w;
float4 UV_9f41e2a6_ad5a_46ca_b34c_f60ac2c321f9_UV = uv0;
float4 Texture_02787904_5090_4666_a7c8_97507f02d498 = tex2D(Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform, (UV_9f41e2a6_ad5a_46ca_b34c_f60ac2c321f9_UV.xy));
float4 Multiply_5f63430a_31df_4533_b412_89748a592b6c_Output = unity_multiply_float(Texture_02787904_5090_4666_a7c8_97507f02d498, Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform);
float4 Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f = float4(UnpackNormal(tex2D(Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform, uv0.xy)), 0);
float4 Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2 = tex2D(Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform, uv0.xy);
float Multiply_f05d7ce8_6386_4302_bde1_cc1806075819_Output = unity_multiply_float(Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2.r, Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform);
float Multiply_f4f05e7f_9461_4ef6_b868_a0a2b57c3a83_Output = unity_multiply_float(Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2.a, Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform);
o.Albedo = Multiply_5f63430a_31df_4533_b412_89748a592b6c_Output;
o.Normal = Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f;
o.Normal += 1e-6;
o.Metallic = Multiply_f05d7ce8_6386_4302_bde1_cc1806075819_Output;
o.Smoothness = Multiply_f4f05e7f_9461_4ef6_b868_a0a2b57c3a83_Output;
o.WorldVectors = float3x3(worldSpaceTangent, worldSpaceBitangent, worldSpaceNormal);
o.Anisotropy = Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform;
}
ENDCG
}
FallBack "Diffuse"
CustomEditor "LegacyIlluminShaderGUI"
}

10
MaterialGraphProject/Assets/Matt/CharacterRendering/Anisotropic.shader.meta


fileFormatVersion: 2
guid: f354e64a3ee15af459e4a31439c1953a
timeCreated: 1495748613
licenseType: Pro
ShaderImporter:
defaultTextures: []
nonModifiableTextures: []
userData:
assetBundleName:
assetBundleVariant:

941
MaterialGraphProject/Assets/Matt/CharacterRendering/AnisotropicTransparent.shader


Shader "Character/AnisotropyTransparent"
{
Properties
{
Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform("Albedo", 2D) = "white" {}
Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform("Color", Color) = (1,1,1,0)
Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform("Normal", 2D) = "bump" {}
Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform("Metallic Tex", 2D) = "white" {}
Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform("Metallic", Range(0, 1)) = 1
Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform("Smoothness", Range(0, 1)) = 1
Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform("Anisotropy", Range(0, 1)) = 0.5
}
SubShader
{
Tags
{
"RenderType" = "Transparent"
"Queue" = "Transparent"
}
Blend SrcAlpha OneMinusSrcAlpha
Cull Off
ZTest LEqual
ZWrite On
LOD 200
CGPROGRAM
#include "UnityCG.cginc"
//#include "AdvancedBRDF.cginc"
//#include "AdvancedShading.cginc"
//#include "AdvancedLighting.cginc"
#define SHADINGMODELID_STANDARD
// ------------------------------------------------------------------
// Diffuse
// From UE4 - Used for Cloth (Deprecated)
float3 Diffuse_Lambert(float3 DiffuseColor)
{
return DiffuseColor * (1 / UNITY_PI);
}
// ------------------------------------------------------------------
// Fresnel
// From UE4 - Used for Cloth
// [Schlick 1994, "An Inexpensive BRDF Model for Physically-Based Rendering"]
float3 F_Schlick(float3 SpecularColor, float VoH)
{
float Fc = Pow5(1 - VoH); // 1 sub, 3 mul
//return Fc + (1 - Fc) * SpecularColor; // 1 add, 3 mad
// Anything less than 2% is physically impossible and is instead considered to be shadowing
return saturate(50.0 * SpecularColor.g) * Fc + (1 - Fc) * SpecularColor;
}
// ------------------------------------------------------------------
// Distribution
// From UE4 - USed for Cloth
// GGX / Trowbridge-Reitz
// [Walter et al. 2007, "Microfacet models for refraction through rough surfaces"]
float D_GGX(float roughness, float NdotH)
{
float a = roughness * roughness;
float a2 = a * a;
float d = (NdotH * a2 - NdotH) * NdotH + 1; // 2 mad
return a2 / (UNITY_PI*d*d); // 4 mul, 1 rcp
}
// Anisotropic GGX
// Taken from HDRenderPipeline
float D_GGXAnisotropic(float TdotH, float BdotH, float NdotH, float roughnessT, float roughnessB)
{
float f = TdotH * TdotH / (roughnessT * roughnessT) + BdotH * BdotH / (roughnessB * roughnessB) + NdotH * NdotH;
return 1.0 / (roughnessT * roughnessB * f * f);
}
// From UE4 - Used for Cloth
float D_InvGGX(float roughness, float NdotH)
{
float a = roughness * roughness;
float a2 = a * a;
float A = 4;
float d = (NdotH - a2 * NdotH) * NdotH + a2;
return 1 / (UNITY_PI * (1 + A*a2)) * (1 + 4 * a2*a2 / (d*d)); //RCP
}
// ------------------------------------------------------------------
// Visibility
// From UE4 - Used for Cloth
// Appoximation of joint Smith term for GGX
// [Heitz 2014, "Understanding the Masking-Shadowing Function in Microfacet-Based BRDFs"]
float Vis_SmithJointApprox(float Roughness, float NoV, float NoL)
{
float a = (Roughness*Roughness);
float Vis_SmithV = NoL * (NoV * (1 - a) + a);
float Vis_SmithL = NoV * (NoL * (1 - a) + a);
// Note: will generate NaNs with Roughness = 0. MinRoughness is used to prevent this
return 0.5 * 1 / (Vis_SmithV + Vis_SmithL); //RCP
}
// From UE4 - Used for Cloth
float Vis_Cloth(float NoV, float NoL)
{
return 1 / (4 * (NoL + NoV - NoL * NoV)); //RCP
}
// ------------------------------------------------------------------
// SORT THESE
// Smith Joint GGX Anisotropic Visibility
// Taken from https://cedec.cesa.or.jp/2015/session/ENG/14698.html
float SmithJointGGXAnisotropic(float TdotV, float BdotV, float NdotV, float TdotL, float BdotL, float NdotL, float roughnessT, float roughnessB)
{
float aT = roughnessT;
float aT2 = aT * aT;
float aB = roughnessB;
float aB2 = aB * aB;
float lambdaV = NdotL * sqrt(aT2 * TdotV * TdotV + aB2 * BdotV * BdotV + NdotV * NdotV);
float lambdaL = NdotV * sqrt(aT2 * TdotL * TdotL + aB2 * BdotL * BdotL + NdotL * NdotL);
return 0.5 / (lambdaV + lambdaL);
}
// Convert Anistropy to roughness
void ConvertAnisotropyToRoughness(float roughness, float anisotropy, out float roughnessT, out float roughnessB)
{
// (0 <= anisotropy <= 1), therefore (0 <= anisoAspect <= 1)
// The 0.9 factor limits the aspect ratio to 10:1.
float anisoAspect = sqrt(1.0 - 0.9 * anisotropy);
roughnessT = roughness / anisoAspect; // Distort along tangent (rougher)
roughnessB = roughness * anisoAspect; // Straighten along bitangent (smoother)
}
// Schlick Fresnel
float FresnelSchlick(float f0, float f90, float u)
{
float x = 1.0 - u;
float x5 = x * x;
x5 = x5 * x5 * x;
return (f90 - f0) * x5 + f0; // sub mul mul mul sub mad
}
//Clamp roughness
float ClampRoughnessForAnalyticalLights(float roughness)
{
return max(roughness, 0.000001);
}
//Calculate tangent warp for IBL (Reference Version - not used)
float3 SpecularGGXIBLRef(float3 viewDir, float3 normalDir, float3 tangentDir, float3 bitangentDir, float roughnessT, float roughnessB)
{
return float3(1, 1, 1);
//Hidden in UnityAnisotropicLighting.cginc
}
// Sample Anisotropic Direction for IBL (Reference Version - not used)
void SampleAnisoGGXDir(float2 u, float3 viewDir, float3 normalDir, float3 tangent, float3 bitangent, float roughnessT, float roughnessB, out float3 halfDir, out float3 lightDir)
{
// AnisoGGX NDF sampling
halfDir = sqrt(u.x / (1.0 - u.x)) * (roughnessT * cos((UNITY_PI * 2) * u.y) * tangent + roughnessB * sin((UNITY_PI * 2) * u.y) * bitangent) + normalDir;
halfDir = normalize(halfDir);
// Convert sample from half angle to incident angle
lightDir = 2.0 * saturate(dot(viewDir, halfDir)) * halfDir - viewDir;
}
// Ref: Donald Revie - Implementing Fur Using Deferred Shading (GPU Pro 2)
// The grain direction (e.g. hair or brush direction) is assumed to be orthogonal to the normal.
// The returned normal is NOT normalized.
float3 ComputeGrainNormal(float3 grainDir, float3 V)
{
float3 B = cross(-V, grainDir);
return cross(B, grainDir);
}
//Modify Normal for Anisotropic IBL (Realtime version)
// Fake anisotropic by distorting the normal.
// The grain direction (e.g. hair or brush direction) is assumed to be orthogonal to N.
// Anisotropic ratio (0->no isotropic; 1->full anisotropy in tangent direction)
float3 GetAnisotropicModifiedNormal(float3 grainDir, float3 N, float3 V, float anisotropy)
{
float3 grainNormal = ComputeGrainNormal(grainDir, V);
// TODO: test whether normalizing 'grainNormal' is worth it.
return normalize(lerp(N, grainNormal, anisotropy));
}
/// REGION END - ANISOTROPY
/// REGION START - SUBSURFACE SCATTERING
half Fresnel(half3 H, half3 V, half F0)
{
half base = 1.0 - dot(V, H);
half exponential = pow(base, 5.0);
return exponential + F0 * (1.0 - exponential);
}
/*
inline half3 KelemenSzirmayKalosSpecular(half3 normal, half3 lightDir, half3 viewDir, float roughness, float rho_s)
{
half3 result = half3(0, 0, 0);
half NdotL = dot(normal, lightDir);
if (NdotL > 0.0)
{
half3 h = lightDir + viewDir;
half3 H = normalize(h);
half NdotH = dot(normal, H);
half PH = pow(2.0 * tex2D(_BeckmannPrecomputedTex, half2(NdotH, roughness)).r, 10.0);
half F = Fresnel(H, viewDir, 0.028);
half frSpec = max(PH * F / dot(h, h), 0);
half term = NdotL * rho_s * frSpec;
result = half3(term, term, term);
}
return result;
}*/
/*
half3 SkinDiffuse(float curv, float3 NdotL)
{
float3 lookup = NdotL * 0.5 + 0.5;
float3 diffuse;
diffuse.r = tex2D(_DiffusionProfileTexture, float2(lookup.r, curv)).r;
diffuse.g = tex2D(_DiffusionProfileTexture, float2(lookup.g, curv)).g;
diffuse.b = tex2D(_DiffusionProfileTexture, float2(lookup.b, curv)).b;
return diffuse;
}*/
/// REGION END - SUBSURFACE SCATTERING
// Upgrade NOTE: replaced 'defined SHADINGMODELID_CLEARCOAT' with 'defined (SHADINGMODELID_CLEARCOAT)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_CLOTH' with 'defined (SHADINGMODELID_CLOTH)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_EYE' with 'defined (SHADINGMODELID_EYE)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_FOLIAGE' with 'defined (SHADINGMODELID_FOLIAGE)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_HAIR' with 'defined (SHADINGMODELID_HAIR)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_SKIN' with 'defined (SHADINGMODELID_SKIN)'
// Upgrade NOTE: replaced 'defined SHADINGMODELID_SUBSURFACE' with 'defined (SHADINGMODELID_SUBSURFACE)'
// ------------------------------------------------------------------
// Shading models
//#pragma multi_compile SHADINGMODELID_UNLIT SHADINGMODELID_STANDARD SHADINGMODELID_SUBSURFACE SHADINGMODELID_SKIN SHADINGMODELID_FOLIAGE SHADINGMODELID_CLEARCOAT SHADINGMODELID_CLOTH SHADINGMODELID_EYE
// ------------------------------------------------------------------
// Input
half _ShadingModel;
sampler2D _AnisotropyMap;
half _Anisotropy;
sampler2D _TangentMap;
half4 _TranslucentColor;
sampler2D _TranslucencyMap;
sampler2D _FuzzTex;
half3 _FuzzColor;
half _Cloth;
sampler2D _IrisNormal;
sampler2D _IrisMask;
half _IrisDistance;
half _TDistortion;
half _TScale;
half _TAmbient;
half _TPower;
half _TAttenuation;
half _TransmissionOverallStrength;
// ------------------------------------------------------------------
// Maths helpers
// Octahedron Normal Vectors
// [Cigolle 2014, "A Survey of Efficient Representations for Independent Unit Vectors"]
// Mean Max
// oct 8:8 0.33709 0.94424
// snorm 8:8:8 0.17015 0.38588
// oct 10:10 0.08380 0.23467
// snorm 10:10:10 0.04228 0.09598
// oct 12:12 0.02091 0.05874
float2 UnitVectorToOctahedron(float3 N)
{
N.xy /= dot(float3(1,1,1), abs(N));
if (N.z <= 0)
{
N.xy = (1 - abs(N.yx)) * (N.xy >= 0 ? float2(1, 1) : float2(-1, -1));
}
return N.xy;
}
float3 OctahedronToUnitVector(float2 Oct)
{
float3 N = float3(Oct, 1 - dot(float2(1,1), abs(Oct)));
if (N.z < 0)
{
N.xy = (1 - abs(N.yx)) * (N.xy >= 0 ? float2(1, 1) : float2(-1, -1));
}
return float3(1, 1, 1);
return normalize(N);
}
// ------------------------------------------------------------------
// Surface helpers
half Anisotropy(float2 uv)
{
return tex2D(_AnisotropyMap, uv) * _Anisotropy;
}
half3 Fuzz(float2 uv)
{
return tex2D(_FuzzTex, uv) * _FuzzColor;
}
half Cloth()
{
return _Cloth;
}
half4 Iris(float2 uv)
{
float2 n = UnitVectorToOctahedron(normalize(UnpackNormal(tex2D(_IrisNormal, uv)).rgb)) * 0.5 + 0.5;
float m = saturate(tex2D(_IrisMask, uv).r); // Iris Mask
float d = saturate(_IrisDistance); // Iris Distance
return float4(n.x, n.y, m, d);
}
half3 Translucency(float2 uv)
{
return tex2D(_TranslucencyMap, uv).rgb * _TranslucentColor.rgb;
}
// ------------------------------------------------------------------
// Unlit Shading Function
float4 UnlitShading(float3 diffColor)
{
return half4(diffColor, 1);
}
// ------------------------------------------------------------------
// Standard Shading Function
float4 StandardShading(float3 diffColor, float3 specColor, float oneMinusReflectivity, float smoothness, float3 normal, float3x3 worldVectors,
float anisotropy, float metallic, float3 viewDir, UnityLight light, UnityIndirect gi)
{
//Unpack world vectors
float3 tangent = worldVectors[0];
float3 bitangent = worldVectors[1];
//Normal shift
float shiftAmount = dot(normal, viewDir);
normal = shiftAmount < 0.0f ? normal + viewDir * (-shiftAmount + 1e-5f) : normal;
//Regular vectors
float NdotL = saturate(dot(normal, light.dir)); //sat?
float NdotV = abs(dot(normal, viewDir)); //abs?
float LdotV = dot(light.dir, viewDir);
float3 H = Unity_SafeNormalize(light.dir + viewDir);
float invLenLV = rsqrt(abs(2 + 2 * normalize(LdotV)));
//float invLenLV = rsqrt(abs(2 + 2 * LdotV));
//float NdotH = (NdotL + normalize(NdotV)) * invLenLV;
float NdotH = saturate(dot(normal, H));
//float NdotH = saturate((NdotL + normalize(NdotV)) * invLenLV);
//float H = (light.dir + viewDir) * invLenLV;
float LdotH = saturate(dot(light.dir, H));
//Tangent vectors
float TdotH = dot(tangent, H);
float TdotL = dot(tangent, light.dir);
float BdotH = dot(bitangent, H);
float BdotL = dot(bitangent, light.dir);
float TdotV = dot(viewDir, tangent);
float BdotV = dot(viewDir, bitangent);
//Fresnels
half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
float3 F = FresnelLerp(specColor, grazingTerm, NdotV); //Original Schlick - Replace from SRP?
//float3 fresnel0 = lerp(specColor, diffColor, metallic);
//float3 F = FresnelSchlick(fresnel0, 1.0, LdotH);
//Calculate roughness
float roughnessT;
float roughnessB;
float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
ConvertAnisotropyToRoughness(roughness, anisotropy, roughnessT, roughnessB);
//Clamp roughness
//roughness = ClampRoughnessForAnalyticalLights(roughness);
roughnessT = ClampRoughnessForAnalyticalLights(roughnessT);
roughnessB = ClampRoughnessForAnalyticalLights(roughnessB);
//Visibility & Distribution terms
float V = SmithJointGGXAnisotropic(TdotV, BdotV, NdotV, TdotL, BdotL, NdotL, roughnessT, roughnessB);
float D = D_GGXAnisotropic(TdotH, BdotH, NdotH, roughnessT, roughnessB);
//Specular term
float3 specularTerm = V * D; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm = sqrt(max(1e-4h, specularTerm));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
specularTerm = max(0, specularTerm * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm = 0.0;
#endif
//Diffuse term
float diffuseTerm = DisneyDiffuse(NdotV, NdotL, LdotH, perceptualRoughness) * NdotL;// - Need this NdotL multiply?
//Reduction
half surfaceReduction;
# ifdef UNITY_COLORSPACE_GAMMA
surfaceReduction = 1.0 - 0.28*roughness*perceptualRoughness; // 1-0.28*x^3 as approximation for (1/(x^4+1))^(1/2.2) on the domain [0;1]
# else
surfaceReduction = 1.0 / (roughness*roughness + 1.0); // fade \in [0.5;1]
# endif
//Final
half3 color = (diffColor * (gi.diffuse + light.color * diffuseTerm))
+ specularTerm * light.color * FresnelTerm(specColor, LdotH)
+ surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, NdotV);
return half4(color, 1);
}
// ------------------------------------------------------------------
// Cloth Shading Function
//float3 ClothShading(FGBufferData GBuffer, float3 LobeRoughness, float3 LobeEnergy, float3 L, float3 V, half3 N)
float4 ClothShading(float3 diffColor, float3 specColor, float3 fuzzColor, float cloth, float oneMinusReflectivity, float smoothness, float3 normal, float3 viewDir, UnityLight light, UnityIndirect gi, float3x3 worldVectors, float anisotropy)
{
const float3 FuzzColor = saturate(fuzzColor);
const float Cloth = saturate(cloth);
//Regular vectors
float NdotL = saturate(dot(normal, light.dir)); //sat?
float NdotV = abs(dot(normal, viewDir)); //abs?
float LdotV = dot(light.dir, viewDir);
//float invLenLV = rsqrt(abs(2 + 2 * normalize(LdotV)));
////float invLenLV = rsqrt(abs(2 + 2 * LdotV));
//float NdotH = (NdotL + normalize(NdotV)) * invLenLV;
//float NdotH = saturate((NdotL + normalize(NdotV)) * invLenLV);
float3 H = Unity_SafeNormalize(light.dir + viewDir);
//float H = (light.dir + viewDir) * invLenLV;
float LdotH = saturate(dot(light.dir, H));
//float3 H = normalize(viewDir + light.dir);
//float NdotL = saturate(dot(normal, light.dir));
//float NdotV = saturate(abs(dot(normal, viewDir)) + 1e-5);
float NdotH = saturate(dot(normal, H));
float VdotH = saturate(dot(viewDir, H));
//float LdotH = saturate(dot(light.dir, H));
half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
// Diffuse
float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
float diffuseTerm = DisneyDiffuse(NdotV, NdotL, LdotH, perceptualRoughness) * NdotL;// - Need this NdotL multiply?
// Cloth - Asperity Scattering - Inverse Beckmann Layer
float3 F1 = FresnelTerm(fuzzColor, LdotH);// FresnelLerp(fuzzColor, grazingTerm, NdotV);// FresnelTerm(FuzzColor, LdotH);// F_Schlick(FuzzColor, VdotH);
float D1 = D_InvGGX(roughness, NdotH);
float V1 = Vis_Cloth(NdotV, NdotL);
//Specular term
float3 specularTerm1 = V1 * D1; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm1 = sqrt(max(1e-4h, specularTerm1));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
// specularTerm1 = max(0, specularTerm1 * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm1 = 0.0;
#endif
float3 Spec1 = specularTerm1 * light.color * FresnelTerm(fuzzColor, LdotH);
// Generalized microfacet specular
/*float3 F2 = F_Schlick(specColor, VdotH);
float D2 = D_GGX(roughness, NdotH);
float V2 = Vis_SmithJointApprox(roughness, NdotV, NdotL);
float3 Spec2 = D2 * V2 * F2 * light.color;*/
//Unpack world vectors
float3 tangent = worldVectors[0];
float3 bitangent = worldVectors[1];
//Tangent vectors
float TdotH = dot(tangent, H);
float TdotL = dot(tangent, light.dir);
float BdotH = dot(bitangent, H);
float BdotL = dot(bitangent, light.dir);
float TdotV = dot(viewDir, tangent);
float BdotV = dot(viewDir, bitangent);
//Fresnels
float3 F2 = FresnelLerp(specColor, grazingTerm, NdotV);// FresnelTerm(specColor, LdotH);// FresnelLerp(specColor, grazingTerm, NdotV); //Original Schlick - Replace from SRP?
float roughnessT;
float roughnessB;
//float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
//float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
ConvertAnisotropyToRoughness(roughness, anisotropy, roughnessT, roughnessB);
//Clamp roughness
//roughness = ClampRoughnessForAnalyticalLights(roughness);
roughnessT = ClampRoughnessForAnalyticalLights(roughnessT);
roughnessB = ClampRoughnessForAnalyticalLights(roughnessB);
//Visibility & Distribution terms
float V2 = SmithJointGGXAnisotropic(TdotV, BdotV, NdotV, TdotL, BdotL, NdotL, roughnessT, roughnessB);
float D2 = D_GGXAnisotropic(TdotH, BdotH, NdotH, roughnessT, roughnessB);
//Specular term
float3 specularTerm2 = V2 * D2; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm2 = sqrt(max(1e-4h, specularTerm2));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
specularTerm2 = max(0, specularTerm2 * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm2 = 0.0;
#endif
float3 Spec2 = specularTerm2 * light.color * FresnelTerm(specColor, LdotH);
float3 Spec = lerp(Spec2, Spec1, Cloth);
//Reduction
half surfaceReduction;
# ifdef UNITY_COLORSPACE_GAMMA
surfaceReduction = 1.0 - 0.28*roughness*perceptualRoughness; // 1-0.28*x^3 as approximation for (1/(x^4+1))^(1/2.2) on the domain [0;1]
# else
surfaceReduction = 1.0 / (roughness*roughness + 1.0); // fade \in [0.5;1]
# endif
//Final
//half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
half3 color = (diffColor * (gi.diffuse + light.color * diffuseTerm))
+ Spec
+ surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, NdotV);
return half4(color, 1);
}
// ------------------------------------------------------------------
// Eye Shading Function
//float3 EyeShading(FGBufferData GBuffer, float3 LobeRoughness, float3 LobeEnergy, float3 L, float3 V, half3 N)
float4 EyeShading(float3 diffColor, float3 specColor, float3 viewDir, half3 normal, float smoothness, float oneMinusReflectivity, UnityLight light, UnityIndirect gi)
{
float3 H = normalize(viewDir + light.dir);
float NdotL = saturate(dot(normal, light.dir));
float NdotV = saturate(abs(dot(normal, viewDir)) + 1e-5);
float NdotH = saturate(dot(normal, H));
float VdotH = saturate(dot(viewDir, H));
float LdotH = saturate(dot(light.dir, H));
// Generalized microfacet specular
float perceptualRoughness = SmoothnessToPerceptualRoughness(smoothness);
float roughness = PerceptualRoughnessToRoughness(perceptualRoughness);
float D = D_GGX(roughness, NdotH);// *LobeEnergy[1];
float V = Vis_SmithJointApprox(roughness, NdotV, NdotL);
float3 F = F_Schlick(specColor, VdotH);
float3 specularTerm = V * D; //*UNITY_PI;
# ifdef UNITY_COLORSPACE_GAMMA
specularTerm = sqrt(max(1e-4h, specularTerm));
# endif
// specularTerm * nl can be NaN on Metal in some cases, use max() to make sure it's a sane value
specularTerm = max(0, specularTerm * NdotL);
#if defined(_SPECULARHIGHLIGHTS_OFF)
specularTerm = 0.0;
#endif
half grazingTerm = saturate(smoothness + (1 - oneMinusReflectivity));
half surfaceReduction;
# ifdef UNITY_COLORSPACE_GAMMA
surfaceReduction = 1.0 - 0.28*roughness*perceptualRoughness; // 1-0.28*x^3 as approximation for (1/(x^4+1))^(1/2.2) on the domain [0;1]
# else
surfaceReduction = 1.0 / (roughness*roughness + 1.0); // fade \in [0.5;1]
# endif
float diffuseTerm = DisneyDiffuse(NdotV, NdotL, LdotH, perceptualRoughness) * NdotL; // TODO - Unreal does not apply diffuse in Shading function
//Final
half3 color = (diffColor * (gi.diffuse + light.color * diffuseTerm))
+ specularTerm * light.color * FresnelTerm(specColor, LdotH)
+ surfaceReduction * gi.specular * FresnelLerp(specColor, grazingTerm, NdotV);
return half4(color, 1);
}
// ------------------------------------------------------------------
// Subsurface Shading Function
float3 SubsurfaceShadingSimple(float3 diffColor, float3 normal, float3 viewDir, float3 thickness, UnityLight light)
{
half3 vLTLight = light.dir + normal * 1;
half fLTDot = pow(saturate(dot(viewDir, -vLTLight)), 3.5) * 1.5;
half3 fLT = 1 * (fLTDot + 1.2) * (thickness);
return diffColor * ((light.color * fLT) * 0.4);
}
// ------------------------------------------------------------------
// Eye Subsurface Shading Function
//float3 EyeSubsurfaceShading(FGBufferData GBuffer, float3 L, float3 V, half3 N)
float3 EyeSubsurfaceShading(float3 diffColor, float3 specColor, float3 viewDir, half3 normal, float smoothness, float4 iris, UnityLight light)
{
float2 irisNormal = iris.rg;
float irisMask = iris.z;
float irisDistance = iris.w;
float3 H = normalize(viewDir + light.dir);
float VdotH = saturate(dot(viewDir, H));
float NdotV = saturate(abs(dot(normal, viewDir)) + 1e-5);
float LdotH = saturate(dot(light.dir, H));
// F_Schlick
//float F0 = GBuffer.Specular * 0.08;
//float Fc = Pow5(1 - VoH);
//float F = Fc + (1 - Fc) * F0;
float3 fresnel0 = lerp(specColor, diffColor, smoothness);
float3 F = FresnelSchlick(fresnel0, 1.0, LdotH);
//float IrisDistance = GBuffer.CustomData.w;
//float IrisMask = GBuffer.CustomData.z;
float3 IrisNormal;
IrisNormal = OctahedronToUnitVector(irisNormal * 2 - 1);
// Blend in the negative intersection normal to create some concavity
// Not great as it ties the concavity to the convexity of the cornea surface
// No good justification for that. On the other hand, if we're just looking to
// introduce some concavity, this does the job.
float3 CausticNormal = normalize(lerp(IrisNormal, -normal, irisMask*irisDistance));
float NdotL = saturate(dot(IrisNormal, light.dir));
float Power = lerp(12, 1, NdotL);
float Caustic = 0.6 + 0.2 * (Power + 1) * pow(saturate(dot(CausticNormal, light.dir)), Power);
float Iris = NdotL * Caustic;
// http://blog.stevemcauley.com/2011/12/03/energy-conserving-wrapped-diffuse/
float Wrap = 0.15;
float Sclera = saturate((dot(normal, light.dir) + Wrap) / (1 + Wrap) * (1 + Wrap));
return (1 - F) * lerp(Sclera, Iris, irisMask) * diffColor / UNITY_PI;
}
// ------------------------------------------------------------------
// Shading function selectors
//float3 SurfaceShading(/*FGBufferData GBuffer,*/ float3 LobeRoughness, float3 LobeEnergy, float3 L, float3 V, half3 N, uint2 Random)
float4 SurfaceShading(float3 diffColor, float3 specColor, float oneMinusReflectivity, float smoothness, float3 normal,
float3x3 worldVectors, float anisotropy, float4 customData, float metallic, float3 viewDir, UnityLight light, UnityIndirect gi)
{
#if defined(SHADINGMODELID_UNLIT)
{
return UnlitShading(diffColor);
}
#elif defined(SHADINGMODELID_STANDARD) || defined(SHADINGMODELID_SUBSURFACE) || defined(SHADINGMODELID_SKIN) || defined(SHADINGMODELID_FOLIAGE)
{
return StandardShading(diffColor, specColor, oneMinusReflectivity, smoothness,
normal, worldVectors, anisotropy, metallic, viewDir, light, gi);
}
#elif defined (SHADINGMODELID_CLEARCOAT)
{
return float4(1, 1, 1, 1); //ClearCoatShading(GBuffer, LobeRoughness, LobeEnergy, L, V, N);
}
#elif defined (SHADINGMODELID_CLOTH)
{
return ClothShading(diffColor, specColor, customData.rgb, customData.a, oneMinusReflectivity, smoothness, normal, viewDir, light, gi, worldVectors, anisotropy);
}
#elif defined (SHADINGMODELID_EYE)
{
return EyeShading(diffColor, specColor, viewDir, normal, smoothness, oneMinusReflectivity, light, gi); //EyeShading(GBuffer, LobeRoughness, LobeEnergy, L, V, N);
}
#endif
return float4(0, 0, 0, 0);
}
//float3 SubsurfaceShading(/*FGBufferData GBuffer,*/ float3 L, float3 V, half3 N, float Shadow, uint2 Random)
float3 SubsurfaceShading(float3 diffColor, float3 specColor, float3 normal, float smoothness, float3 viewDir, float4 customData, UnityLight light)
{
#if defined (SHADINGMODELID_SUBSURFACE)
{
return SubsurfaceShadingSimple(diffColor, normal, viewDir, customData.rgb, light);
}
#elif defined (SHADINGMODELID_SKIN)
{
return float3(0, 0, 0); //SubsurfaceShadingPreintegratedSkin(GBuffer, L, V, N);
}
#elif defined (SHADINGMODELID_FOLIAGE)
{
return float3(0, 0, 0); //SubsurfaceShadingTwoSided(SubsurfaceColor, L, V, N);
}
#elif defined (SHADINGMODELID_HAIR)
{
return float3(0, 0, 0); //HairShading(GBuffer, L, V, N, Shadow, 1, 0, Random);
}
#elif defined (SHADINGMODELID_EYE)
{
return EyeSubsurfaceShading(diffColor, specColor, viewDir, normal, smoothness, customData, light); //EyeSubsurfaceShading(GBuffer, L, V, N);
}
#endif
return float3(0, 0, 0);
}
//#endif UNITY_ADVANCED_SHADINGMODELS_INCLUDED
//-------------------------------------------------------------------------------------
// Lighting Helpers
// Glossy Environment
half3 Unity_AnisotropicGlossyEnvironment(UNITY_ARGS_TEXCUBE(tex), half4 hdr, Unity_GlossyEnvironmentData glossIn, half anisotropy) //Reference IBL from HD Pipe (Add half3 L input and replace R)
{
half perceptualRoughness = glossIn.roughness /* perceptualRoughness */;
// TODO: CAUTION: remap from Morten may work only with offline convolution, see impact with runtime convolution!
// For now disabled
#if 0
float m = PerceptualRoughnessToRoughness(perceptualRoughness); // m is the real roughness parameter
const float fEps = 1.192092896e-07F; // smallest such that 1.0+FLT_EPSILON != 1.0 (+1e-4h is NOT good here. is visibly very wrong)
float n = (2.0 / max(fEps, m*m)) - 2.0; // remap to spec power. See eq. 21 in --> https://dl.dropboxusercontent.com/u/55891920/papers/mm_brdf.pdf
n /= 4; // remap from n_dot_h formulatino to n_dot_r. See section "Pre-convolved Cube Maps vs Path Tracers" --> https://s3.amazonaws.com/docs.knaldtech.com/knald/1.0.0/lys_power_drops.html
perceptualRoughness = pow(2 / (n + 2), 0.25); // remap back to square root of real roughness (0.25 include both the sqrt root of the conversion and sqrt for going from roughness to perceptualRoughness)
#else
// MM: came up with a surprisingly close approximation to what the #if 0'ed out code above does.
perceptualRoughness = perceptualRoughness*(1.7 - 0.7*perceptualRoughness);
#endif
half mip = perceptualRoughnessToMipmapLevel(perceptualRoughness);
half3 R = glossIn.reflUVW;// -half3(anisotropy, 0, 0);
half4 rgbm = UNITY_SAMPLE_TEXCUBE_LOD(tex, R, mip);
return DecodeHDR(rgbm, hdr);
}
// Indirect Specular
inline half3 UnityGI_AnisotropicIndirectSpecular(UnityGIInput data, half occlusion, Unity_GlossyEnvironmentData glossIn, half anisotropy, half3x3 worldVectors)
{
half3 specular;
float3 tangentX = worldVectors[0];
float3 tangentY = worldVectors[1];
float3 N = worldVectors[2];
float3 V = data.worldViewDir;
float3 iblNormalWS = GetAnisotropicModifiedNormal(tangentY, N, V, anisotropy);
float3 iblR = reflect(-V, iblNormalWS);
#ifdef UNITY_SPECCUBE_BOX_PROJECTION
// we will tweak reflUVW in glossIn directly (as we pass it to Unity_GlossyEnvironment twice for probe0 and probe1), so keep original to pass into BoxProjectedCubemapDirection
half3 originalReflUVW = glossIn.reflUVW;
glossIn.reflUVW = BoxProjectedCubemapDirection(iblR, data.worldPos, data.probePosition[0], data.boxMin[0], data.boxMax[0]);
#endif
#ifdef _GLOSSYREFLECTIONS_OFF
specular = unity_IndirectSpecColor.rgb;
#else
half3 env0 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE(unity_SpecCube0), data.probeHDR[0], glossIn, anisotropy);
//half3 env0 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE(unity_SpecCube0), data.probeHDR[0], glossIn, anisotropy, L); //Reference IBL from HD Pipe
#ifdef UNITY_SPECCUBE_BLENDING
const float kBlendFactor = 0.99999;
float blendLerp = data.boxMin[0].w;
UNITY_BRANCH
if (blendLerp < kBlendFactor)
{
#ifdef UNITY_SPECCUBE_BOX_PROJECTION
glossIn.reflUVW = BoxProjectedCubemapDirection(iblR, data.worldPos, data.probePosition[1], data.boxMin[1], data.boxMax[1]);
#endif
half3 env1 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0), data.probeHDR[1], glossIn, anisotropy);
//half3 env1 = Unity_AnisotropicGlossyEnvironment(UNITY_PASS_TEXCUBE_SAMPLER(unity_SpecCube1, unity_SpecCube0), data.probeHDR[1], glossIn, anisotropy, L); //Reference IBL from HD Pipe
specular = lerp(env1, env0, blendLerp);
}
else
{
specular = env0;
}
#else
specular = env0;
#endif
#endif
return specular * occlusion;// *weightOverPdf; //Reference IBL from HD Pipe
//return specular * occlusion * weightOverPdf; //Reference IBL from HD Pipe
}
// Global Illumination
inline UnityGI UnityAnisotropicGlobalIllumination(UnityGIInput data, half occlusion, half3 normalWorld, Unity_GlossyEnvironmentData glossIn, half anisotropy, half3x3 worldVectors)
{
UnityGI o_gi = UnityGI_Base(data, occlusion, normalWorld);
o_gi.indirect.specular = UnityGI_AnisotropicIndirectSpecular(data, occlusion, glossIn, anisotropy, worldVectors);
return o_gi;
}
//-------------------------------------------------------------------------------------
// Lighting Functions
//Surface Description
struct SurfaceOutputAdvanced
{
fixed3 Albedo; // base (diffuse or specular) color
fixed3 Normal; // tangent space normal, if written
half3 Emission;
half Metallic; // 0=non-metal, 1=metal
// Smoothness is the user facing name, it should be perceptual smoothness but user should not have to deal with it.
// Everywhere in the code you meet smoothness it is perceptual smoothness
half Smoothness; // 0=rough, 1=smooth
half Occlusion; // occlusion (default 1)
fixed Alpha; // alpha for transparencies
half3 Tangent;
half Anisotropy;
half4 CustomData;
float3x3 WorldVectors;
//half ShadingModel;
};
inline half4 LightingAdvanced(SurfaceOutputAdvanced s, half3 viewDir, UnityGI gi)
{
s.Normal = normalize(s.Normal);
half oneMinusReflectivity;
half3 specColor;
s.Albedo = DiffuseAndSpecularFromMetallic(s.Albedo, s.Metallic, /*out*/ specColor, /*out*/ oneMinusReflectivity);
// shader relies on pre-multiply alpha-blend (_SrcBlend = One, _DstBlend = OneMinusSrcAlpha)
// this is necessary to handle transparency in physically correct way - only diffuse component gets affected by alpha
half outputAlpha;
s.Albedo = PreMultiplyAlpha(s.Albedo, s.Alpha, oneMinusReflectivity, /*out*/ outputAlpha);
half4 c = SurfaceShading(s.Albedo, specColor, oneMinusReflectivity, s.Smoothness, s.Normal, s.WorldVectors, s.Anisotropy, s.CustomData, s.Metallic, viewDir, gi.light, gi.indirect);
c.rgb += SubsurfaceShading(s.Albedo, specColor, s.Normal, s.Smoothness, viewDir, s.CustomData, gi.light);
//c.rgb += UNITY_BRDF_GI(s.Albedo, specColor, oneMinusReflectivity, s.Smoothness, s.Normal, viewDir, s.Occlusion, gi);
c.a = outputAlpha;
return c;
}
//This is pointless as always forward?
inline half4 LightingAdvanced_Deferred(SurfaceOutputAdvanced s, half3 viewDir, UnityGI gi, out half4 outGBuffer0, out half4 outGBuffer1, out half4 outGBuffer2)
{
half oneMinusReflectivity;
half3 specColor;
s.Albedo = DiffuseAndSpecularFromMetallic(s.Albedo, s.Metallic, /*out*/ specColor, /*out*/ oneMinusReflectivity);
half4 c = SurfaceShading(s.Albedo, specColor, oneMinusReflectivity, s.Smoothness, s.Normal, s.WorldVectors, s.Anisotropy, s.CustomData, s.Metallic, viewDir, gi.light, gi.indirect);
c.rgb += SubsurfaceShading(s.Albedo, specColor, s.Normal, s.Smoothness, viewDir, s.CustomData, gi.light);
UnityStandardData data;
data.diffuseColor = s.Albedo;
data.occlusion = s.Occlusion;
data.specularColor = specColor;
data.smoothness = s.Smoothness;
data.normalWorld = s.Normal;
UnityStandardDataToGbuffer(data, outGBuffer0, outGBuffer1, outGBuffer2);
half4 emission = half4(s.Emission + c.rgb, 1);
return emission;
}
inline void LightingAdvanced_GI(SurfaceOutputAdvanced s, UnityGIInput data, inout UnityGI gi)
{
#if defined(UNITY_PASS_DEFERRED) && UNITY_ENABLE_REFLECTION_BUFFERS
gi = UnityGlobalIllumination(data, s.Occlusion, s.Normal);
#else
Unity_GlossyEnvironmentData g = UnityGlossyEnvironmentSetup(s.Smoothness, data.worldViewDir, s.Normal, lerp(unity_ColorSpaceDielectricSpec.rgb, s.Albedo, s.Metallic));
gi = UnityAnisotropicGlobalIllumination(data, s.Occlusion, s.Normal, g, s.Anisotropy, s.WorldVectors);
#endif
}
///END
//#pragma target 5.0
#pragma surface surf Advanced vertex:vert alpha
#pragma glsl
#pragma debug
inline float4 unity_multiply_float(float4 arg1, float4 arg2)
{
return arg1 * arg2;
}
inline float unity_multiply_float(float arg1, float arg2)
{
return arg1 * arg2;
}
sampler2D Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform;
float4 Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform;
sampler2D Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform;
sampler2D Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform;
float Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform;
float Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform;
float Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform;
struct Input
{
float4 color : COLOR;
half4 meshUV0;
float4 worldTangent;
float3 worldNormal;
INTERNAL_DATA
};
void vert(inout appdata_full v, out Input o)
{
UNITY_INITIALIZE_OUTPUT(Input,o);
o.meshUV0 = v.texcoord;
o.worldTangent = float4(UnityObjectToWorldDir(v.tangent.xyz), v.tangent.w);
}
void surf(Input IN, inout SurfaceOutputAdvanced o)
{
half4 uv0 = IN.meshUV0;
float3 worldSpaceTangent = normalize(IN.worldTangent.xyz);
float3 worldSpaceNormal = normalize(IN.worldNormal);
float3 worldSpaceBitangent = cross(worldSpaceNormal, worldSpaceTangent) * IN.worldTangent.w;
float4 UV_9f41e2a6_ad5a_46ca_b34c_f60ac2c321f9_UV = uv0;
float4 Texture_02787904_5090_4666_a7c8_97507f02d498 = tex2D(Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform, (UV_9f41e2a6_ad5a_46ca_b34c_f60ac2c321f9_UV.xy));
float4 Multiply_5f63430a_31df_4533_b412_89748a592b6c_Output = unity_multiply_float(Texture_02787904_5090_4666_a7c8_97507f02d498, Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform);
float4 Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f = float4(UnpackNormal(tex2D(Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform, uv0.xy)), 0);
float4 Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2 = tex2D(Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform, uv0.xy);
float Multiply_f05d7ce8_6386_4302_bde1_cc1806075819_Output = unity_multiply_float(Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2.r, Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform);
float Multiply_f4f05e7f_9461_4ef6_b868_a0a2b57c3a83_Output = unity_multiply_float(Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2.a, Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform);
o.Albedo = Multiply_5f63430a_31df_4533_b412_89748a592b6c_Output;
o.Normal = Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f;
o.Normal += 1e-6;
o.Metallic = Multiply_f05d7ce8_6386_4302_bde1_cc1806075819_Output;
o.Smoothness = Multiply_f4f05e7f_9461_4ef6_b868_a0a2b57c3a83_Output;
o.WorldVectors = float3x3(worldSpaceTangent, worldSpaceBitangent, worldSpaceNormal);
o.Anisotropy = Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform;
o.Alpha = Multiply_5f63430a_31df_4533_b412_89748a592b6c_Output.a;
}
ENDCG
}
FallBack "Diffuse"
CustomEditor "LegacyIlluminShaderGUI"
}

10
MaterialGraphProject/Assets/Matt/CharacterRendering/AnisotropicTransparent.shader.meta


fileFormatVersion: 2
guid: d6cf794d3b991c842ba5ee650aaf280a
timeCreated: 1495748613
licenseType: Pro
ShaderImporter:
defaultTextures: []
nonModifiableTextures: []
userData:
assetBundleName:
assetBundleVariant:

9
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger.meta


fileFormatVersion: 2
guid: bbb00072bc4c43e45b7c53c3db0f2dbc
folderAsset: yes
timeCreated: 1495745555
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_Rig.fbx
文件差异内容过多而无法显示
查看文件

696
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_Rig.fbx.meta


fileFormatVersion: 2
guid: 6a0af412b3bd5e4429eb52b218255660
timeCreated: 1430294420
licenseType: Store
ModelImporter:
serializedVersion: 18
fileIDToRecycleName:
100000: //RootNode
100002: challenger_beard
100004: challenger_Belt
100006: challenger_BeltBuckle
100008: challenger_boots
100010: challenger_dress
100012: challenger_eyes_refl
100014: challenger_eyes_refl 1
100016: challenger_eyes_refl2
100018: challenger_fingers
100020: challenger_FrontGorget
100022: challenger_FrontGorget_PntCnstLoc
100024: challenger_FrontKnife
100026: challenger_geo_grp
100028: challenger_Gorget_Ik
100030: challenger_Gorget_PvLoc
100032: challenger_hair
100034: challenger_hands
100036: challenger_Head
100038: challenger_head
100040: challenger_helm
100042: challenger_Helmet
100044: challenger_Hips
100046: challenger_hood
100048: challenger_Jaw
100050: challenger_knife
100052: challenger_LeftArm
100054: challenger_LeftArmorStrap01
100056: challenger_LeftArmorStrap02
100058: challenger_LeftEye
100060: challenger_LeftFoot
100062: challenger_LeftForeArm
100064: challenger_LeftForeArmRoll
100066: challenger_LeftHand
100068: challenger_LeftHandIndex1
100070: challenger_LeftHandIndex2
100072: challenger_LeftHandIndex3
100074: challenger_LeftHandIndex4
100076: challenger_LeftHandMiddle1
100078: challenger_LeftHandMiddle2
100080: challenger_LeftHandMiddle3
100082: challenger_LeftHandMiddle4
100084: challenger_LeftHandPinky1
100086: challenger_LeftHandPinky2
100088: challenger_LeftHandPinky3
100090: challenger_LeftHandPinky4
100092: challenger_LeftHandProp
100094: challenger_LeftHandRing1
100096: challenger_LeftHandRing2
100098: challenger_LeftHandRing3
100100: challenger_LeftHandRing4
100102: challenger_LeftHandThumb1
100104: challenger_LeftHandThumb2
100106: challenger_LeftHandThumb3
100108: challenger_LeftHandThumb4
100110: challenger_LeftHemetFlap
100112: challenger_LeftLeg
100114: challenger_LeftLowerEyelid
100116: challenger_LeftShoulder
100118: challenger_LeftShoulderpad
100120: challenger_LeftToeBase
100122: challenger_LeftUpLeg
100124: challenger_LeftUpperEyelid
100126: challenger_Neck
100128: challenger_Neck1
100130: challenger_pants
100132: challenger_RearGorget
100134: challenger_RearGorget_OriCnstLoc
100136: challenger_RearGorget_PntCnstLoc
100138: challenger_RearSword
100140: challenger_RearSword_Strap_01
100142: challenger_RearSword_Strap_02
100144: challenger_RearSword_Strap_03
100146: challenger_RearSword_Strap_04
100148: challenger_Reference
100150: challenger_RightArm
100152: challenger_RightArmorStrap01
100154: challenger_RightArmorStrap02
100156: challenger_RightEye
100158: challenger_RightFoot
100160: challenger_RightForeArm
100162: challenger_RightForeArmRoll
100164: challenger_RightHand
100166: challenger_RightHandIndex1
100168: challenger_RightHandIndex2
100170: challenger_RightHandIndex3
100172: challenger_RightHandIndex4
100174: challenger_RightHandMiddle1
100176: challenger_RightHandMiddle2
100178: challenger_RightHandMiddle3
100180: challenger_RightHandMiddle4
100182: challenger_RightHandPinky1
100184: challenger_RightHandPinky2
100186: challenger_RightHandPinky3
100188: challenger_RightHandPinky4
100190: challenger_RightHandProp
100192: challenger_RightHandRing1
100194: challenger_RightHandRing2
100196: challenger_RightHandRing3
100198: challenger_RightHandRing4
100200: challenger_RightHandThumb1
100202: challenger_RightHandThumb2
100204: challenger_RightHandThumb3
100206: challenger_RightHandThumb4
100208: challenger_RightHemetFlap
100210: challenger_RightLeg
100212: challenger_RightLowerEyelid
100214: challenger_RightShoulder
100216: challenger_RightShoulderpad
100218: challenger_RightToeBase
100220: challenger_RightUpLeg
100222: challenger_RightUpperEyelid
100224: challenger_sholders
100226: challenger_Spine
100228: challenger_Spine1
100230: challenger_Spine2
100232: challenger_Spine3
100234: challenger_sword_holder
100236: challenger_sword_holder2
100238: challenger_teeth
100240: challenger_tongue
100242: challenger_torso
100244: challenger_wound
100246: dress_frontLeft_jnt1
100248: dress_frontLeft_jnt2
100250: dress_frontLeft_jnt3
100252: dress_frontLeft_jnt4
100254: dress_frontLeft_jnt5
100256: dress_frontLeft_jnt6
100258: dress_frontRight_jnt1
100260: dress_frontRight_jnt2
100262: dress_frontRight_jnt3
100264: dress_frontRight_jnt4
100266: dress_frontRight_jnt5
100268: dress_frontRight_jnt6
100270: dress_rearLeft_jnt1
100272: dress_rearLeft_jnt2
100274: dress_rearLeft_jnt3
100276: dress_rearLeft_jnt4
100278: dress_rearLeft_jnt5
100280: dress_rearLeft_jnt6
100282: dress_rearRight_jnt1
100284: dress_rearRight_jnt2
100286: dress_rearRight_jnt3
100288: dress_rearRight_jnt4
100290: dress_rearRight_jnt5
100292: dress_rearRight_jnt6
100294: left_beard_jnt01
100296: left_beard_jnt02
100298: left_beard_jnt03
100300: left_beard_jnt04
100302: left_beard_jnt05
100304: left_beard_jnt06
100306: left_beard_jnt07
100308: left_beard_jnt08
100310: left_beard_jnt09
100312: left_beard_jnt10
100314: left_beard_jnt11
100316: left_beard_jnt12
100318: left_beard_jnt13
100320: left_eyeBrow_jnt01
100322: left_eyeBrow_jnt02
100324: left_eyeBrow_jnt03
100326: left_eyeBrow_jnt04
100328: left_lowerEyelash_jnt01
100330: left_lowerEyelash_jnt02
100332: left_lowerEyelash_jnt03
100334: left_upperEyelash_jnt01
100336: left_upperEyelash_jnt02
100338: left_upperEyelash_jnt03
100340: LeftArmorStrap_AimLoc
100342: LeftArmorStrap_AimNull
100344: right_beard_jnt01
100346: right_beard_jnt02
100348: right_beard_jnt03
100350: right_beard_jnt04
100352: right_beard_jnt05
100354: right_beard_jnt06
100356: right_beard_jnt07
100358: right_beard_jnt08
100360: right_beard_jnt09
100362: right_beard_jnt10
100364: right_beard_jnt11
100366: right_beard_jnt12
100368: right_beard_jnt13
100370: right_beard_jnt14
100372: right_beard_jnt15
100374: right_eyeBrow_jnt01
100376: right_eyeBrow_jnt02
100378: right_eyeBrow_jnt03
100380: right_eyeBrow_jnt04
100382: right_lowerEyelash_jnt01
100384: right_lowerEyelash_jnt02
100386: right_lowerEyelash_jnt03
100388: right_upperEyelash_jnt01
100390: right_upperEyelash_jnt02
100392: right_upperEyelash_jnt03
100394: RightArmorStrap_AimLoc
100396: RightArmorStrap_AimNull
100398: challenger_Ctrl_BeltEffector
100400: challenger_Ctrl_BeltEffector_OFFSET_GRP
100402: challenger_Ctrl_FrontGorgetEffector
100404: challenger_Ctrl_FrontGorgetEffector_OFFSET_GRP
100406: challenger_Ctrl_FrontKnifeEffector
100408: challenger_Ctrl_FrontKnifeEffector_OFFSET_GRP
100410: challenger_Ctrl_HelmetEffector
100412: challenger_Ctrl_HelmetEffector_OFFSET_GRP
100414: challenger_Ctrl_Jaw_OFFSET_GRP
100416: challenger_Ctrl_JawEffector
100418: challenger_Ctrl_LeftHemetFlapEffector
100420: challenger_Ctrl_LeftHemetFlapEffector_OFFSET_GRP
100422: challenger_Ctrl_LeftShoulderpadEffector
100424: challenger_Ctrl_LeftShoulderpadEffector_OFFSET_GRP
100426: challenger_Ctrl_RearGorgetEffector
100428: challenger_Ctrl_RearGorgetEffector_OFFSET_GRP
100430: challenger_Ctrl_RearSwordEffector
100432: challenger_Ctrl_RearSwordEffector_OFFSET_GRP
100434: challenger_Ctrl_RightHemetFlapEffector
100436: challenger_Ctrl_RightHemetFlapEffector_OFFSET_GRP
100438: challenger_Ctrl_RightShoulderpadEffector
100440: challenger_Ctrl_RightShoulderpadEffector_OFFSET_GRP
100442: challenger_CustomRig_grp
100444: challenger_eyes_ctrl
100446: challenger_eyes_null
100448: challenger_leftHandProp_ctrl
100450: challenger_leftHandProp_null
100452: challenger_leftHandSpace_oriLoc
100454: challenger_propSpaceSwitch_grp
100456: challenger_RearSword_Grp
100458: challenger_RearSword_Ik_01
100460: challenger_RearSword_Ik_02
100462: challenger_RearSword_Ik_AimGrp
100464: challenger_RearSword_Ik_OriGrp
100466: challenger_RearSword_PosLoc
100468: challenger_RearSword_UpLoc
100470: challenger_rightHandProp_ctrl
100472: challenger_rightHandProp_null
100474: challenger_rightHandSpace_oriLoc
100476: challenger_worldSpace_oriLoc
100478: correctiveBlendShape_grp
100480: facialHair_rivets
100482: l_eye_ctrl
100484: l_eye_null
100486: left_beard_rivet01
100488: left_beard_rivet02
100490: left_beard_rivet03
100492: left_beard_rivet04
100494: left_beard_rivet05
100496: left_beard_rivet06
100498: left_beard_rivet07
100500: left_beard_rivet08
100502: left_beard_rivet09
100504: left_beard_rivet10
100506: left_beard_rivet11
100508: left_beard_rivet12
100510: left_beard_rivet13
100512: left_eyeBrow_rivet01
100514: left_eyeBrow_rivet02
100516: left_eyeBrow_rivet03
100518: left_eyeBrow_rivet04
100520: left_lowerEyelash_rivet01
100522: left_lowerEyelash_rivet02
100524: left_lowerEyelash_rivet03
100526: left_upperEyelash_rivet01
100528: left_upperEyelash_rivet02
100530: left_upperEyelash_rivet03
100532: r_eye_ctrl
100534: r_eye_null
100536: right_beard_rivet01
100538: right_beard_rivet02
100540: right_beard_rivet03
100542: right_beard_rivet04
100544: right_beard_rivet05
100546: right_beard_rivet06
100548: right_beard_rivet07
100550: right_beard_rivet08
100552: right_beard_rivet09
100554: right_beard_rivet10
100556: right_beard_rivet11
100558: right_beard_rivet12
100560: right_beard_rivet13
100562: right_beard_rivet14
100564: right_beard_rivet15
100566: right_eyeBrow_rivet01
100568: right_eyeBrow_rivet02
100570: right_eyeBrow_rivet03
100572: right_eyeBrow_rivet04
100574: right_lowerEyelash_rivet01
100576: right_lowerEyelash_rivet02
100578: right_lowerEyelash_rivet03
100580: right_upperEyelash_rivet01
100582: right_upperEyelash_rivet02
100584: right_upperEyelash_rivet03
400000: //RootNode
400002: challenger_beard
400004: challenger_Belt
400006: challenger_BeltBuckle
400008: challenger_boots
400010: challenger_dress
400012: challenger_eyes_refl
400014: challenger_eyes_refl 1
400016: challenger_eyes_refl2
400018: challenger_fingers
400020: challenger_FrontGorget
400022: challenger_FrontGorget_PntCnstLoc
400024: challenger_FrontKnife
400026: challenger_geo_grp
400028: challenger_Gorget_Ik
400030: challenger_Gorget_PvLoc
400032: challenger_hair
400034: challenger_hands
400036: challenger_Head
400038: challenger_head
400040: challenger_helm
400042: challenger_Helmet
400044: challenger_Hips
400046: challenger_hood
400048: challenger_Jaw
400050: challenger_knife
400052: challenger_LeftArm
400054: challenger_LeftArmorStrap01
400056: challenger_LeftArmorStrap02
400058: challenger_LeftEye
400060: challenger_LeftFoot
400062: challenger_LeftForeArm
400064: challenger_LeftForeArmRoll
400066: challenger_LeftHand
400068: challenger_LeftHandIndex1
400070: challenger_LeftHandIndex2
400072: challenger_LeftHandIndex3
400074: challenger_LeftHandIndex4
400076: challenger_LeftHandMiddle1
400078: challenger_LeftHandMiddle2
400080: challenger_LeftHandMiddle3
400082: challenger_LeftHandMiddle4
400084: challenger_LeftHandPinky1
400086: challenger_LeftHandPinky2
400088: challenger_LeftHandPinky3
400090: challenger_LeftHandPinky4
400092: challenger_LeftHandProp
400094: challenger_LeftHandRing1
400096: challenger_LeftHandRing2
400098: challenger_LeftHandRing3
400100: challenger_LeftHandRing4
400102: challenger_LeftHandThumb1
400104: challenger_LeftHandThumb2
400106: challenger_LeftHandThumb3
400108: challenger_LeftHandThumb4
400110: challenger_LeftHemetFlap
400112: challenger_LeftLeg
400114: challenger_LeftLowerEyelid
400116: challenger_LeftShoulder
400118: challenger_LeftShoulderpad
400120: challenger_LeftToeBase
400122: challenger_LeftUpLeg
400124: challenger_LeftUpperEyelid
400126: challenger_Neck
400128: challenger_Neck1
400130: challenger_pants
400132: challenger_RearGorget
400134: challenger_RearGorget_OriCnstLoc
400136: challenger_RearGorget_PntCnstLoc
400138: challenger_RearSword
400140: challenger_RearSword_Strap_01
400142: challenger_RearSword_Strap_02
400144: challenger_RearSword_Strap_03
400146: challenger_RearSword_Strap_04
400148: challenger_Reference
400150: challenger_RightArm
400152: challenger_RightArmorStrap01
400154: challenger_RightArmorStrap02
400156: challenger_RightEye
400158: challenger_RightFoot
400160: challenger_RightForeArm
400162: challenger_RightForeArmRoll
400164: challenger_RightHand
400166: challenger_RightHandIndex1
400168: challenger_RightHandIndex2
400170: challenger_RightHandIndex3
400172: challenger_RightHandIndex4
400174: challenger_RightHandMiddle1
400176: challenger_RightHandMiddle2
400178: challenger_RightHandMiddle3
400180: challenger_RightHandMiddle4
400182: challenger_RightHandPinky1
400184: challenger_RightHandPinky2
400186: challenger_RightHandPinky3
400188: challenger_RightHandPinky4
400190: challenger_RightHandProp
400192: challenger_RightHandRing1
400194: challenger_RightHandRing2
400196: challenger_RightHandRing3
400198: challenger_RightHandRing4
400200: challenger_RightHandThumb1
400202: challenger_RightHandThumb2
400204: challenger_RightHandThumb3
400206: challenger_RightHandThumb4
400208: challenger_RightHemetFlap
400210: challenger_RightLeg
400212: challenger_RightLowerEyelid
400214: challenger_RightShoulder
400216: challenger_RightShoulderpad
400218: challenger_RightToeBase
400220: challenger_RightUpLeg
400222: challenger_RightUpperEyelid
400224: challenger_sholders
400226: challenger_Spine
400228: challenger_Spine1
400230: challenger_Spine2
400232: challenger_Spine3
400234: challenger_sword_holder
400236: challenger_sword_holder2
400238: challenger_teeth
400240: challenger_tongue
400242: challenger_torso
400244: challenger_wound
400246: dress_frontLeft_jnt1
400248: dress_frontLeft_jnt2
400250: dress_frontLeft_jnt3
400252: dress_frontLeft_jnt4
400254: dress_frontLeft_jnt5
400256: dress_frontLeft_jnt6
400258: dress_frontRight_jnt1
400260: dress_frontRight_jnt2
400262: dress_frontRight_jnt3
400264: dress_frontRight_jnt4
400266: dress_frontRight_jnt5
400268: dress_frontRight_jnt6
400270: dress_rearLeft_jnt1
400272: dress_rearLeft_jnt2
400274: dress_rearLeft_jnt3
400276: dress_rearLeft_jnt4
400278: dress_rearLeft_jnt5
400280: dress_rearLeft_jnt6
400282: dress_rearRight_jnt1
400284: dress_rearRight_jnt2
400286: dress_rearRight_jnt3
400288: dress_rearRight_jnt4
400290: dress_rearRight_jnt5
400292: dress_rearRight_jnt6
400294: left_beard_jnt01
400296: left_beard_jnt02
400298: left_beard_jnt03
400300: left_beard_jnt04
400302: left_beard_jnt05
400304: left_beard_jnt06
400306: left_beard_jnt07
400308: left_beard_jnt08
400310: left_beard_jnt09
400312: left_beard_jnt10
400314: left_beard_jnt11
400316: left_beard_jnt12
400318: left_beard_jnt13
400320: left_eyeBrow_jnt01
400322: left_eyeBrow_jnt02
400324: left_eyeBrow_jnt03
400326: left_eyeBrow_jnt04
400328: left_lowerEyelash_jnt01
400330: left_lowerEyelash_jnt02
400332: left_lowerEyelash_jnt03
400334: left_upperEyelash_jnt01
400336: left_upperEyelash_jnt02
400338: left_upperEyelash_jnt03
400340: LeftArmorStrap_AimLoc
400342: LeftArmorStrap_AimNull
400344: right_beard_jnt01
400346: right_beard_jnt02
400348: right_beard_jnt03
400350: right_beard_jnt04
400352: right_beard_jnt05
400354: right_beard_jnt06
400356: right_beard_jnt07
400358: right_beard_jnt08
400360: right_beard_jnt09
400362: right_beard_jnt10
400364: right_beard_jnt11
400366: right_beard_jnt12
400368: right_beard_jnt13
400370: right_beard_jnt14
400372: right_beard_jnt15
400374: right_eyeBrow_jnt01
400376: right_eyeBrow_jnt02
400378: right_eyeBrow_jnt03
400380: right_eyeBrow_jnt04
400382: right_lowerEyelash_jnt01
400384: right_lowerEyelash_jnt02
400386: right_lowerEyelash_jnt03
400388: right_upperEyelash_jnt01
400390: right_upperEyelash_jnt02
400392: right_upperEyelash_jnt03
400394: RightArmorStrap_AimLoc
400396: RightArmorStrap_AimNull
400398: challenger_Ctrl_BeltEffector
400400: challenger_Ctrl_BeltEffector_OFFSET_GRP
400402: challenger_Ctrl_FrontGorgetEffector
400404: challenger_Ctrl_FrontGorgetEffector_OFFSET_GRP
400406: challenger_Ctrl_FrontKnifeEffector
400408: challenger_Ctrl_FrontKnifeEffector_OFFSET_GRP
400410: challenger_Ctrl_HelmetEffector
400412: challenger_Ctrl_HelmetEffector_OFFSET_GRP
400414: challenger_Ctrl_Jaw_OFFSET_GRP
400416: challenger_Ctrl_JawEffector
400418: challenger_Ctrl_LeftHemetFlapEffector
400420: challenger_Ctrl_LeftHemetFlapEffector_OFFSET_GRP
400422: challenger_Ctrl_LeftShoulderpadEffector
400424: challenger_Ctrl_LeftShoulderpadEffector_OFFSET_GRP
400426: challenger_Ctrl_RearGorgetEffector
400428: challenger_Ctrl_RearGorgetEffector_OFFSET_GRP
400430: challenger_Ctrl_RearSwordEffector
400432: challenger_Ctrl_RearSwordEffector_OFFSET_GRP
400434: challenger_Ctrl_RightHemetFlapEffector
400436: challenger_Ctrl_RightHemetFlapEffector_OFFSET_GRP
400438: challenger_Ctrl_RightShoulderpadEffector
400440: challenger_Ctrl_RightShoulderpadEffector_OFFSET_GRP
400442: challenger_CustomRig_grp
400444: challenger_eyes_ctrl
400446: challenger_eyes_null
400448: challenger_leftHandProp_ctrl
400450: challenger_leftHandProp_null
400452: challenger_leftHandSpace_oriLoc
400454: challenger_propSpaceSwitch_grp
400456: challenger_RearSword_Grp
400458: challenger_RearSword_Ik_01
400460: challenger_RearSword_Ik_02
400462: challenger_RearSword_Ik_AimGrp
400464: challenger_RearSword_Ik_OriGrp
400466: challenger_RearSword_PosLoc
400468: challenger_RearSword_UpLoc
400470: challenger_rightHandProp_ctrl
400472: challenger_rightHandProp_null
400474: challenger_rightHandSpace_oriLoc
400476: challenger_worldSpace_oriLoc
400478: correctiveBlendShape_grp
400480: facialHair_rivets
400482: l_eye_ctrl
400484: l_eye_null
400486: left_beard_rivet01
400488: left_beard_rivet02
400490: left_beard_rivet03
400492: left_beard_rivet04
400494: left_beard_rivet05
400496: left_beard_rivet06
400498: left_beard_rivet07
400500: left_beard_rivet08
400502: left_beard_rivet09
400504: left_beard_rivet10
400506: left_beard_rivet11
400508: left_beard_rivet12
400510: left_beard_rivet13
400512: left_eyeBrow_rivet01
400514: left_eyeBrow_rivet02
400516: left_eyeBrow_rivet03
400518: left_eyeBrow_rivet04
400520: left_lowerEyelash_rivet01
400522: left_lowerEyelash_rivet02
400524: left_lowerEyelash_rivet03
400526: left_upperEyelash_rivet01
400528: left_upperEyelash_rivet02
400530: left_upperEyelash_rivet03
400532: r_eye_ctrl
400534: r_eye_null
400536: right_beard_rivet01
400538: right_beard_rivet02
400540: right_beard_rivet03
400542: right_beard_rivet04
400544: right_beard_rivet05
400546: right_beard_rivet06
400548: right_beard_rivet07
400550: right_beard_rivet08
400552: right_beard_rivet09
400554: right_beard_rivet10
400556: right_beard_rivet11
400558: right_beard_rivet12
400560: right_beard_rivet13
400562: right_beard_rivet14
400564: right_beard_rivet15
400566: right_eyeBrow_rivet01
400568: right_eyeBrow_rivet02
400570: right_eyeBrow_rivet03
400572: right_eyeBrow_rivet04
400574: right_lowerEyelash_rivet01
400576: right_lowerEyelash_rivet02
400578: right_lowerEyelash_rivet03
400580: right_upperEyelash_rivet01
400582: right_upperEyelash_rivet02
400584: right_upperEyelash_rivet03
4300000: challenger_boots
4300002: challenger_torso
4300004: challenger_helm
4300006: challenger_hood
4300008: challenger_head
4300010: challenger_pants
4300012: challenger_dress
4300014: challenger_sholders
4300016: challenger_hands
4300018: challenger_sword_holder
4300020: challenger_knife
4300022: challenger_sword_holder2
4300024: challenger_fingers
4300026: challenger_eyes_refl2
4300028: challenger_eyes_refl
4300030: challenger_eyes_refl 1
4300032: challenger_teeth
4300034: challenger_tongue
4300036: challenger_beard
4300038: challenger_hair
4300040: challenger_wound
4300042: challenger_eyes_refl
7400000: Take 001
9500000: //RootNode
13700000: challenger_beard
13700002: challenger_boots
13700004: challenger_dress
13700006: challenger_eyes_refl
13700008: challenger_eyes_refl 1
13700010: challenger_eyes_refl2
13700012: challenger_fingers
13700014: challenger_hair
13700016: challenger_hands
13700018: challenger_head
13700020: challenger_helm
13700022: challenger_hood
13700024: challenger_knife
13700026: challenger_pants
13700028: challenger_sholders
13700030: challenger_sword_holder
13700032: challenger_sword_holder2
13700034: challenger_teeth
13700036: challenger_tongue
13700038: challenger_torso
13700040: challenger_wound
materials:
importMaterials: 0
materialName: 0
materialSearch: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
optimizeGameObjects: 0
motionNodeName:
animationCompression: 1
animationRotationError: .5
animationPositionError: .5
animationScaleError: .5
animationWrapMode: 0
extraExposedTransformPaths: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
importBlendShapes: 1
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
tangentSpace:
normalSmoothAngle: 60
splitTangentsAcrossUV: 1
normalImportMode: 0
tangentImportMode: 1
importAnimation: 1
copyAvatar: 0
humanDescription:
human: []
skeleton: []
armTwist: .5
foreArmTwist: .5
upperLegTwist: .5
legTwist: .5
armStretch: .0500000007
legStretch: .0500000007
feetSpacing: 0
rootMotionBoneName:
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 2
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_thick_SSS.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Chal_thick_SSS.png.meta


fileFormatVersion: 2
guid: 3ce2fee9b4ec4714f8b54cf287194cd7
timeCreated: 1495746074
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

9
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger.meta


fileFormatVersion: 2
guid: c77d353b3d3e718478af1d5a8a828159
folderAsset: yes
timeCreated: 1495750702
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger.unity
文件差异内容过多而无法显示
查看文件

8
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger.unity.meta


fileFormatVersion: 2
guid: c9bbf7d0dde227041810a4a02f84ddea
timeCreated: 1495746324
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

8
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/LightingData.asset
文件差异内容过多而无法显示
查看文件

9
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/LightingData.asset.meta


fileFormatVersion: 2
guid: ad8323c525acef4428c3fdbc19878373
timeCreated: 1495750703
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 25800000
userData:
assetBundleName:
assetBundleVariant:

212
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/ReflectionProbe-0.exr


v/1channelschlist7BGRcompressioncompressiondataWindowbox2i�displayWindowbox2i�lineOrderlineOrderpixelAspectRatiofloat�?screenWindowCenterv2fscreenWindowWidthfloat�?Y�*�rޒ])7�������������������������������������������) B71G �I,� 8�M4�8����?�s�?��?������� ���?��<��������4������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������?�������8�4�8��<��4�M0�N4�M0��0��(��$�q�Q<��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������p�M\������nv}���+����p�p��w�w���>������Pn��;TӀdNw�w�7;b������Cj�v��uq@���(�W������;�;�����v�������7;����%;�;���c�PNw�wq@᾿���;�;��@�4�R�����p�.�uZ����v�wa�w�w�tq7;>�����w�wY��;�w���';�;��yw;�;����@�=��(���D��+��w�v����}���ܶ����t����:���iڀSn�K��w-�����쳷:���[�������;�;��juY��;��&����æ�U\���w1��}�;�:��p��u1�������u�8Շ:�������p�����.�U��;�����W:��V��ë�����p�m���P�M;����p����nt�`� :�@aA�$0�� �5@��hI ���B% �շom���;�͕�f�fódf� !�:�Da��� �H���C@t4�@��*���C@��J� ���n wvݷ0a��� ��1�� D�D@��DA�A$a��� :A)i4��8��$�m��3���+68�� ��Ntx����� B0������$aƁ��D4 �4�#HiGT�+l�dm�l m��y�m� m�8�a��FCe00�a� J�JJ$)���`��s�
�Vl39�L��`a�Ù �C�`Y��e0&S d0QJ (�h��9E0$�aL�,��,��,�����m�F�9�Gs�s�9����v�ۻ����G9����YQQ$���9Q͜�E�������3`DNw;f�4٣���s���uHmRq�UUUUUUQ��i1��mF�U%UUUUIUV�UUUUK�ӀcK��9��v�m��i�����{wi�������ۻN�ͻ��$��,��,�M���s�;n��ۻ������F�4��6sF�9�G`BM���TY%�F �E���:�#����yU9-Qt[gLڛR�>|���+L�dvWdi��uA�A�TPa�(� qVJD�*�U
���UQQQU9-Q*/�jV�y-�aA� 8��$1��ƓCQ�q�HcMAc�aA�IC�Pҏ����v7cv7cw��u�5�"��h������ �M�G���iO�E�yyyyy�+L�7ei�hÚ1b�9��T�JZEJT�Ym�>|���n��N�s)̧2�22�22�v+F!QC�P��1��9�9K,��*****$����9��h����;���ۛi�sn������4sG9�s���TFFI$�I$�seG6Tr���+4sG+4YY�s��9��l�������9�l�i%HmRI!�UV�UUTi5MGQ�UT�F�UUF��Uit�F�UU��Y��͜��9��ݧi�w{wi�ݧwwwwwi�ٷi�,��,���,��9��l�4s��ۻ���������f�;��g9��sF�r�*####$���#!��H"Hh CI `�eC������J.�z�ػ�ߋ�K�f³�óvlFm�`b�"�"C��5C@jD;J� A@�"
��H5u ��ե Q�~u ��6�08� `p� `� Ƃ �8��28��a�A�� :CC2J���J���2� ol���fnͮ�\Z���t2�2�"acD�cEIRE��*��m�ح�lVݛn� ���CL���
2��FC�zZA�iJ�Brܗܗ�%��f��ȧ2s!̆�s!�2����R�(�
!QD(QJ�)���l�eE��Ydd�I%D���g4v�v�sG9Q�sm;Nmͻ�9�s��Y�s����FI$�I$�D+��Q͕9���Vh�,�����s�s�h��*,�ʍ�s�9�9�T���m%��UUUUSQ�iF�UUQ�Q�IRI$�UUR[MU5U_��Z��9�l�9���g6ۻ�������sf�����۴�l��Ye�YYe�VYm�����s��m���������gs�9��i��;g9�2J��**$��2I,:HEA�b&�$�� �f2T���H���qy9nW��[�>|�1]��GdvGdvV�uA�T!�IIa�h^-�V*�U
�UB$�M
�''&�R&�Qc�Ĩ�[��d�A�q�hm i F1���cCAAACQ�cM��������j�7cv7cw��\_*�(�8�: ��C �*h�z5F��$Z���yyyy���.�0�!�sshÚ0��CfNT��ZDX���s�ϛ�vn��eh�l�l�l�h�єِ�V؅P��9YC1f��6a�R�ʋ#,��I,�I$��i��9��s��9�m�nm�wwwsE��YYYYY�s��IQ%Dd�I$D� ,Vl��g6sEe���e��g9�s���9�4Ye���eG9�s��j����ڪ�����J��j��4����j6� �������i-�*�*����z_�s��9����9�����=����M;�����m�*,���,��+,������;g9�s��wwwwi������9��s�l�9ʈ�*$��22J��$����d444 ��6���Ѡ� ���@���ƀ��JJ��Q�'� �v��l��m�l��͛6Fl��cI !� !�:C0H���@�е��4 ��h (h���J�Q�d4:^�USs����$a A A�A� �@a A�A�F�� aD4C C@�h҃%����#��f�vͷf����=��t`��@Z0J60��� �EJ(ZIa:����m�f���`�،��!�2C!�2̆�l�a̬� T�i -(�}p��+lٰ[6Fl#+��y�Ùd0�CL����C�B�l��Q
���E�����FYeE�I$eD�I$�I��s����͛9�l�Gs��ww1����VVVVVs��9ʉ$��2II�Y"�b�͖Tl���+,���,�ef�s��;g*,��,�eEF�9�s�m$�%��UUUU5MTiGUUUUTmF�PЭ&���Ki��������9���Vh�g9�s�wwwwws��9�f�͛6m����IdD�Ie�YYe����6s��6s��9�v��ۛv����������9�I$���2I**#$��I��2H:�� �0�0�0�cn[D�4MQb��ڗ��b��+�]��]��GdvPd�eA�T$���Q��X�P��B��T*hTЩ�ɢ*"��q8����nM��`�c1�j46�����chchcc��(� !�ƨj�*h"�h"���T};T���n���&�TA�EDHdT(� 芈�4Ѭ��EJ^^Wevm3m���#FшlÜÜÚ1 �s�sF�E��94EDY999[f��f��dl�єٔ�)�Sl�d9���*(c�1QCa�(b���C�de���TI$�I"�II�s��*9�s���9�Nw9�Vh��YYYYYYf��9�$�I$X��E�D,X�1P��f�,�Ye��Yf�+,���s��,��+,��6YeG9��i$�J��*�J������ꪪ4��:�Cj�6�����Ki*�Ү���Y�s�ѣ��9Y�s��ۻn�����ѳf�i��sf�*,�J�$�K,�����"�9��h�G9�l�6s�wsm;���sGl�9�s��9Q$�IQ$�FI$d�IQ b���C@Z��
CHa0a�`� �4�d������J{�͍��vl��`�۰��f��1����P� ( ��� e0�H"8�
AC@��T4
CT4 (h�(+�
�@�:�߂ �!�"�0�`Ɍ laA� 0:�0� m@�j���k�|����۶ �L��� �(� 0�&� � � � "Hc 0�h �CM(�\O�6��[m�#l#)��C���!̆d04�h�`i�є�G���T5] ����[�6#3��2���2�a��2�S)��<�!D(Q (��!�R�f)̅̇2%�I$�I$�H��"I$YL�9�lٳ��9�g*9���4Yef�+4YYYYf����I$�,Y$�D,�!bŋ,���e�Ye�Ye�Ye�Y͜�*$��,�"�,��͛,�g8����Ki*ڪ����4��*���������ڦ���j�ޒ�Ҫi���s��++9�������4sn���s��4lٶ�i��r���"$���I,�K$���"#�s��9ʊ�s���Tl۴�l����s�9�s���$�I$�I$�2I$�I$���$�* �2�ʂ��$0à��:*"�nNNNN-E��yZb4�m���;خ�vGdi�TPUAUTPT�8��8� 3B�P��T"��EB���Z��~'����^/'8����&4��8�8�8� cc8�*�j�:��j�*��wU��lmSl{���*"�$�Q�P�hQ�A�EDTTѬ������������a�a�a�s�s�sf���!�4E�����\Z���r��vCfG2��ѐ�C�d;���,���1��,�P�0�(c�c�d�I$�I$�
ȅd��I��9QQQQQQQQQQ�l�g9Ye�Ye�Yf�VVh�YY�rH�$�I$�!b�,X�bŋ�YQe�TYe�Yee��Vs��Y%�Ye�Ye�TTl�8���J�������:�����*�:J��8ڭ*�j�$��-���P��g9�F���+9Y��9��h�����6l��h۴DI$��I%�I$�Id����s�ٳf͛6l��s�s���͚9��h�9�s���r�P��I$�I$�""I$�I$���(��d4T4 ��A �`�F �0�#���TP�@���Knlٲ[i��en�fݷ�Vl�I�CT4 ��A `��A� �`0�#@�" ��h�� "C@ �0d1��%Ap\u��-GQ��$0a�F`A$a�F 0 `,a�0H��� � � ��0A!h"���%�U��r6Ͷ��l��m���80���#0B�� J� 0�� C a�����2�+l;9Y�� 1��y�� ��� 2s!�L�!���!�2�RCT J�Z���� �>퍔�2�Y���� �c)�&F�`1�B�|�Q
�D(,�
)A�)@YE0s�(d(9��,�"I$�I$�Eb�+$�X�deEEEEEG6l�EEEG9e�Ye�Ye�VVY�Ee�9Y���I$�I$�I,X�"E�",VYde�TYe�YQe�YdD��IYe�Ye�Y�f͛,��q�m%�IUUU5UUUUUQ�UUUt�USUUU�I%���P�9YY�VVh�Y��9YY�s���s���i�f͝��$�I$�K$�K"$������$��9�TTTTTTTTTl�9Qg9�sM��g9�s��*,TFI$�$�Y$D�I$�I$�Hd�e�TPmT$thaGQ�PdhEB�x�^'P�ô�v&�x�Fد�.�ya�ITPU@� u@���Ɔ `����@�4F"h:�6�� ����~�q Ĵ*�U
�^hi44�5���D�1��q�q�� !�tP� P�J5��C��m���m����:�EB�"�U
�Q���"�$��%�R�ܖ���1a�a�a�a�a͘s�c�cFч9�6a� Qx�]
�^/'��LV������C����B�1e YB�P�E
TPŔ)�1e h���d�I$�I"�bŊ�D,�bŋ �FTTlٳfʈ�D�Ide�Ye�Yf�+,�Yf��4rE�$�bŋ,X�bŋ,H�X��"2H�*#,��$��P��J�$��K,��,��,��6t��%UIUUUUGq��UUSUUUUZUUUUU�I%�I%��@�4s����4r�Eg4h�9�h�f�,�h흦�,��I$�I$�I+$�I,��H��$���*9͛6l�9�g9e�9�Ye�Y�s��9QeD��$�I$�!Y"�"Ed�+$�I�H� i*H
IP���0 aA��� �CF� ��� �����`k6��S>�-��.ݸ-�m�("q��5������0��`�A� `4`�c0a�����P� Hhҁ�������Z�����0�"�"0a�� `Ì"�l`�� Ƃ d44 0�� ��$���J4 _��>㶛cn�a�p���"��I@�FAAT5A:���ku J�̈́f��ll�d9���!�!�fC� �Ne0es)�fC������B��~�?M�S6�L���
1J3�<��(�9%�QD,�� (�e�QE,�� (��)�E�b�I$�E�I$�I$B�,�b�b�b�"�B1dd�I$�I$de��Ye�h��,�Ee�,�Y"��Bő�,X�bʼn$H�"��"D�$H�Y"ŋ,X�b�$�Jȉ,��,��,���,����T�UUTiUUURUQ�UU]UiiSUUUUU�T��%��+4hѣF�+,�Y���4hѢ�,�e�Yf�$�J�$�I$��I$��I$���I$�""I9͛***9�f͛6Yf�s��*,��"+,��ȉ�+$Y$�I�H�DI$�+$VI$@��£A�8d�UAUI@�cC@�@�@�@�@��U��xk��ka�b;�[��FؖŦ���(¦��P>���H`�� `��(t
�@��(t�T�P:�24����=�*"�8z��1ƇCHc�����tq�M PD�� F4�T4�T>;�C��v7cj�7ki�u�8�b��T*�U
:P��I
�UB*bq4"P��<3�������9�9�9�9�9�s h���(�4*�丵����x�1��;lF�1� h�)��,–@��)e
YC�)e
YB�P���
r���Pf!�*#$T,�I$�"!dBŋ�ċ $F,H�b��$�P�EDe�YQe�Ye�Y����$X�Ш;F,X�bŋ,T$H�"D�$H�"D�����bŋ,X�b�$���",����"�,��-Um%UUUUUT�U[UUQ���T�V�U:UUUUUI%[T���_ŋ,ѣF�+,�Y����F�,��",��,�I$�I$�I$�Q$�I$�I$�I%eb���b��l�QQQ͛6l��s��e�Yd�YY$�+"$VDH�2I$�!d�$Y"�"I�` �`�� (��&C@�9R@�h��@��ADAh��C@A5K�]qm���m��pg#6f�̀A0Ì"���DCN�2���$`�"0J0
�#6� 0��� ���h��0���"(J�r��*J�]�?l0d A�A�0�X� �e0�`�� 0H� � �@-@�4��&4 ��H"zU��G;��l�m����p���� b �b@5@-A A A2�!�d�Z�M;�m�#6��3`$d0�C� 1��.d0�C2�9��(�0YD( (�B�:0dCB!�������7�`��f�:��e1�Xc!�d����!E0r�P
�9@�TQ
(�8Q
(�(�J!@1
9@��9CCB�ò2E�$T,X�bŋĉ $H�H�"EBŋ$�E�,�YeE�Ye�YYd�,X��,,,+bŊŋ"$F,T$T""$<H�Hx�<<X�bŋ,V,VIYYdE��H�F,X�RUU�UUUUUIUUUUUSUUUUUMUUUUV�RI+���,Y��F�+,������F�,�"�,���$�I$Y$�I$�H��ED�I$�I$��CB�Bŋ+$��QQ͛6Yg9�h�2ʉ,�"��$�Y�Y�Y"�bŒ,Y�Y"�XXf�`P� 8�є`���*P] t� C@�@�@��-4
T
T
T��x^��wa݉Q8� �i��v $q�c�1�ѠZ�t���
`�4��54�04m��4t�0P����@����nA�M�c���އCcQ�q�i lca�q�CQ�t5CT5CCT5J��$�����7cv7i�zv�8��p��G8�Ì�6�Lb&�M
�UA�4%��ja�ga��v���ц9�9�9�;
h����YQ@���E�q�TPthT��x�^-Dm�i��� �aNaK(R�VP��FP��)e*(R�TaK(9��� TP(�D�42
���Ù�X�1P�T,T#*�$H�H�"D�bE�,X��Y$d��FFYe�YP�bŋ,XXd
��f,H�b!"D���b �<Hxv"��A��1b�"D��,VIY%e�YX�H�bŋ �UUUmUTmUV�UUU5UUUT�UUUSUUUTt3w;,H�b�ŋ$Ѣ��+,�E�VYe�VY$�I$�I��EB�$TFI"�$�DAaaaaXhhh�bŋD,�f�,����,���#,��$�I"""""�" ,X�bŋ,V+aaaaaaPXT�� �,0a�� ��A�`5CA ��0���c@&��h�ѡ�"���/���7���`9�L�
�vVd4������ 0 b�"D44c��<�*0�"�"���  f0a���p�&� ) e�IR^�޸�a 60���h �� :`Ì`q�Ha ��2A�`�j0� P�D4��J�6�%���ێ�ݛL�:��� 0 `q� �f`��&0d���P�$���v��ٰ)��`Q��C��2b��C�D( �%�(��D,�PA�D!��c*T� ��`k6��1��e0(�h�0$��QJ�E���*(�R�YD0P�2�(
��@ �9C��I�4,,,,,,���s,X��H�H�"D�$H�"D����$Y�Q�Q ����$X�bŊ��,HXXT���X:���"D��A�v""����!���D�ŋ ,Y$D��*$H�"D�,F����������J�����������*j���wwj�wp���b�b�Bŋ�+,�f�$��,��""��DI$�+$�bő�*#$Y$�XXXXXXXV����",X�b�*6l�ʊ�#**#,���T,X�"""!dB�bŋ,X�bŋa`�+
���0)P4���0 q���(@t�,i����� 5P��&�h��J�� p�±�SL��m���m�%$$0 t�CQ��c�A���)!���14����&����00h`h��C4 T T T60�å�+��/��/����cQ�q�q�A��CQ�t1���I$5CT5CT5C�Z���7i���iݧs��#8�� 40q���A��I�:���.�f�m�v�Wa]�9�9�9�6aM B%���P$��E�
,���3@� u@��Ѡ�Љ�a݇i�v���х9B�P���Y�(9e,�ʈ� �A�H@ ��IdH�����t�����(�"D�$D$;$H�"D���v$V,X�1b�Db�*$H�"1bĈŊ�bŇ���������Z��-1" ���<;���������xxv$X�F#�,��P��H�"E�$H�b�UUT�UTm%ImUUUUR[UUUUUUUUQ�T�[�����Q�"Ŋŋ����$���"$��,��H�$VI$�I$�,X�2E����:A`�,,,,,+ *,X�bŋ,X�����IQY"ŋH�X�V+�,V,X�bŋ����X:@�,,+ � �G�����������������������������������������������������������������������������������������������������������������������������������������������������~���������������~������������������������������ۯ�w���l�}���}��z�����?����ޞ��>�;���^�xL��Yoz|���������:��������������NI�k��3{Y��ޭ�> E���@ZE@`@��P@)H P� B�n�6  @@�@��@@@,D�RJj;F�$AFq� �J(��,�M0Ì4ӎ8�N8����8��<�8��������?��?��'?�3����O�L��`���|�O�H�ʏ�p�ɏ������D������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������$��O���N?��?�#���O�������O?��<������0����O���?�����N;��<�<�O<�O��<��?��<����<����<�?��<��<�?��<�����<��?�����8�<��<�������<���<�O���<�<�;�O���;��<�<�N?�����?��<��?��;��8�<�N8��<�<��<�������<����<����<�?��<�<��8ӏ��N<�M8ӎ8�M�M4��8Ӎ<��4ӌ4Ӎ8� 8�N4ӎ8�M4�M0 0�N4�L4� 0� 0�0� 0��0��,��4� 0�L,� 4Ì4Ì4� 0��0��4��0� ,�L0�L4��,��,��,��,��,� ,��(��(��,��,��,��(��(�I$��(��$�I$�H � $� q� q�q�<������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������?������������~6��_�&�y0���~<���~<����V�����X �倿m[����逿p��p���/��/���/�� ��~z��_���p�/��p���ν�_���w~8�/����_�;� �Uwwo�����5���AWn�����{�~~�/�^������������ �� �g׸ �%����i��~R������`/⚻����;���� ��w~<����� ���p����������������o��/ϟw0��/��/��_��� ��wwwv�/���_�?������������������n����/n������������������~8�ۿ��:���_��_�5ww�wwwn��`/�����p�����/��/�o���������/��� ��w� ��w� �� �v�/�]�_�?�����������������}�_�?���_����~\��p�.������ݸ �ev�/��}�� �����/��/�_��~��}�_�;�� ��wp�N����5]�_���~F�s��������?��0���_���F�y ���~<���0���������}������0�O������{����/К����[����Bj��������/���~����_�+�~@��������}�~L��������/Ο}��}���p�o�o�����o� �V���}�������/ϝ���������_�5wwp�������]ۀ�Wwo������p��������������������������׿�������"����_����~h�������������_�:������^���� �Gwww~�������CWww�~����/���_�;���(j�������� �wo������������}��~�����￿����}��p���O�������������������}��}��}����}����}����wwww{��j������/�����/�Z����������/��p�
���������Pwv�������5�=c���G�������;���������s��;��;������;�� ������G��?��������������������G��?��{��G������~��Wwwwww{�������p�n��������]���_��_�;����+Ww����������]���_������Ww�ww���}��}��}���}��}�~L�������������}��}��p�������������������}��}���}��}��}��}����■��}�[��������������������������������������������_�5wwwww�wp�����]����www~z���������������v�A��-������Vr|�o���w�����������w���:���;��������;���G��� ����=z?��������y��7^w�ݯ;�8�sw���G�?�����G��u��u�������8������3%���LLLK���+6�ѣF�7wwwww}�������������������6���������������������� �������]���������������������Q�wwww����������wwww��������ﻻ��ٶ��V]�f{����n�EqR�EL��S��W;Ѻ=�wG����z=������z=�G���y�w�tz=����z=�ѭ�G���p����}�ѭ�G����{」���m����v�G�V����ε�����5����v�G�����F���G��z=��h��8��������d�K0�f&���essss��m�Fۢ��wwwv������ڻ��������������4h����m����������j�����������������������������-ڻ�ݪ7wwww����������wwwm����wwwww���MCԠ�OS�*J ��)=�jPH�PH��H���,��<�(�=I�T*MR�T�AR��J���k��� ��h�����E�h���4�"y($T�(&���z@jJ ��i($y($�PH�PPMS�)I��$y'�')�S��PH��$#��GT� �Rjz�ʕ&�P՟���"�y����$��%�u=#�A@eJ J �A#�=@���S�����m'�D����%��T*;U=UJu]W^�u���-��E�h� �6΢� ��/�_�~�x ����<"�P�.���A RM"��H'$�G��@��MR��J��S;E�v�m�h�M7h�,� �D�&��mȚ:h铥N�8&4trt�Цt����GE�IN�0p�PQR����R���R��**T���Cm���-'����m�&�%D� Λ:Ht��Eh�D�!LᓤgL��%:88Jp���� N g N���N2pK8Jp�郅�0�LL)yyyyyyye-$�)$�.�fY�52�L���MMMM)�fjfjjnnnq����d��ffji������f榦攺&&ļ��������I$�I#$�f���������3%fT�333332�M3L�75%����U2�3L��Қ�������J�kZ֭4��V���ֵ�Zֵ�kZֵ�j�Zֵ�k֪�Z��ֻ����575777574�٥4��ҚSJje�������S�qN)ɶm�f��'''''''&�椪baK��˩�b^^]�������I�M��mM��������M3sSSL�98�N��ٵ777997778�����қ���RYu.�������yu.�&u.�%�(u��O =�i J�l�F��h�H�4�R�@�����kR��Z�MJ�R�R�Ԏ��LqXߍ푶�ݒ6��5D��"EQ�:x��R@��*�l��SH�4��4KH�,���$G���H�Tr�����-$ii#M$j�H�Tp�Q�ԉj8\sr;���I��Y*�-*�R�R�OM)J�����JSJ�JSJSJU*��+JV�Z�jz�*��z��]�ڽ]���Q��0��G�y��紖J��i,�K&��T�MI�թ�jb��Z��;0��v]D��:9:�GT��:@rp��� ��#��'T� Ԝ�<؞l�cs��Oi,�����������M�[,�1s��U�Z&�]�gK�D���#8��s�8BqNSd������'���&ƧlO6y�) �G�D�����KKKKI�I+$�I$��U���jjeL�����)�fjK1.�&���ĖK%d�*J�Y�2�f��ʘR�ZZE"R8:Ht����K)$�I$�J�YU++$ed��0��2�d�ʙ��ffY��J�&�����ĕLIY,�J��J��feMM)���e�Z֭kZֵ��JֻZֵ�ֵ�kZֵ����U�Z�UV�Z�� ��9u,˩vesssSsSJm�f����Y�52�)��78��6ͳl���9994��aLK�
aL)t��e�y�bbbbaLK 8I�E-/-0̢iM�sssssSSSL��52�)�fjjm���SsssssssssI%R�^a��e�Գ.�������Լ��R�$�E"���t���P2yCòJ)�A!�(&�$;%҂Dd���$$��J %:���USX����ݭ�Ǿ&�;�9�՝DZ�"�'Q8�����=�(y��M(���d��I��&�I4�c�J)&���t�g�M'M"䞔����i&�j��J���EOQ5R��'-S���h�%���҂ZPJ &�($�PM(%��� =OJ��������S�=5=PUZ�����֟�m�ih�F��Y�l�6u ��-��@u5�͞P����M#4��J �U=Fjz��F7^4�m��:�Q8����OD��i�GT鳢����铂Y�''L���@�)���c�� f��<�sbY�҉���&�g��5AQS�h�Mc?�ͽ��(�E�u�'�q��GO:d��p����%8������l���l��8JpG8`�  �6:l���l���6D�,�B�2
��*t��2I$�H�ed�I$���������FˢJ�e�H��I$���eىyvbbaL2Y,���VJ�)iU+$d�I"�HT�C!���Ft�I*�%eeeeT����J�ʲ9�U�e�0���$RE$�"ZY�f&&&&�J�$��%��T�%�I$R��I$����Zֵ���[Zֵ�iU�k]�kZ�Uk���Z��Z���Wv�UUX ����ZZZY���D�4����ffe�SS3S,ҙ�d�Y,’�,�4�T—�����R��
aK�������e���d�C!�H�Q��ZYKKKKKK�GM����)�i�ff�Y�52̩�K%��Y�i��I��yu0����˲���]KK�iyiyyye��E"�F�o%'��S�g���q�R4MFi�f�Fi�d�F)T�R�b�F)�d����Ӎ5&�
�ڑ*Ȯ8�ȑJ#TODd��3F��#T[�)<V|�Y��y�POD���#5U&��i%�b�F)i&x��x�,��ZFi�f���>�R@�!TT�4�*��VCV6ic=�ڱ�li���M)L��I��)T�*�M*�)M)M'��ST�R�R�J�mR��U�^�����-�j��7F�0��Td( �T��!=��D��U*�J��U�U��9�������D�$(�!:�H� ;:@vp��� ;:@uN M�lN4��q�6-6͋ͳb�l������Ʃg���B�R9J*U\�+�����V8E�8F��Dp��ԝ 98BuN�� 98@rp|��96>rp|�M�ͤМiB�JhZi�f�����) ���
������'J���I++++++#R���VF�r9�F�YU*�����켼�11%d�Y,đH�eed����RI$�D�R �B����$h��d�VU��eeY�dr5��G#dr6VVVU�d�̴����1111%��RE#����eeY"�I$�k]V��kZkZ�kZֵ��kZֵ��ֽk�U�Z�UUv������� ��I$����KKK)e,�ٙ�3354�Y��ffe�d�Y,�K11/0˩y�]L)v^^]�e唴�����#s�d
B���d2)��2�Y���)ifZH��"�d�ʚf���iL�33*K%RY*�S
J�Y�//.�������唼����e����$�C!��"d*E"�H�1%��L��O(xK<����4yD�� �(���i6�iU�����OI���JPP|J
;Y�A(%*UUY���*�-[8�D�'Q�'Q2��h�D�'Qb��䞚I�*<���yC���l����<O(xzy4�I4��(�tI4��A&M!����&x�'��I�)<�B�OH�'���I��%zS�[� ��V�ݎ��R�QJ ��R�GR�R��u'��PH�PKS�Q'�����)���T��T�UUJ��'��� �[m��m,�4�(��D�E�_��c�P� e�2���P���<=I3�:OQ�=UR����O8�,-�q�DR��I�:ΙDpt����)���S��l��e�CE͐.lM�6>h���e�%6��<"P��H|��GRz�SԚ���W�D�E��2t�)D�%��:�L�2pRp��#���Ⴣ� ��6>l��H,ljh��zh����sa(�cCcE͔6\�����)�Ad�?Q�(�5��>��r�YYYU#��ʩ�G#���9eT��KKIiif^bYJ�*D�x��$r�����2FH�#$�ԊE!�)~?�����5�cU1�H�29Y�G#���lr�ls��G+++$�K2E,�K���U#���x�8�Q#������eYVI,���Zִ�U��v��iU�ֵ�k]�k־�֭z�j���v���WYI$�Ii$���YK)"J�ʩYf]�fY��,�K2��Y�1.��yy�^^Y�����RҪ9��A!R!d2
�Ȕ���Y�D�$�I$��,��I$RE*ʲ��Fa��ffJ��U%�RY�%f%�����ye,�奥���ZV9IH$2 �� ��d*DȤR)���H�)H���I=OS�����|��z�#��9��-(�&�����`�SH���)�b�4J)*�b��NؚՉ����3�b�����3E�4tE�Qr��Ҕ�I�$<G>������<<��9�,�PD�<�x��H�|�A,�A,��Z��g�Ҕ�*|OKQ:�&��ˉ��QTc��ɶ3v4�SJRҔ��4��R�UZR��4�4���M*�R����V�U��^�ׯZ�V��ڻW�Th�ѻ��!@h�� �� ���x�3�I�3=O��4KH�Z�+Q��8jȶ@��#D� EQ�S�3�pO6��i�6+8�ij�bQ�lK76+6͋ �bÓb�l�������C���j���i*��4���5Ʒ; ����8:�H�S�gHN�9856��F�hN4LдҚ��SBY��Y�lVnlVm���f���ȤR)�@����F�kƪ4Q����3Q���c">�����r9�G1�r��%�i"RƬlt��F�Dȣx�9�c�呩����RFUI$���ԊD�1�Q��6��UƱ��h�63��5FJ3D}�#�s�1�r��#d�F9Q�G�1�H�E"R(�8�#�+#eed�U�d�I$�uZ֭-Uk]�UkZֵU�ֵ�v��k���^����UUV��j����I$����K)$��R��VVVVVVVF��ᑢH�vK%��)yye///-/$H�H�A Q��}�G��H�A d ���d,��H�RI$�����I$�I"�)YYYYU#R���G*8��U�D�J�&����R����H��"RR@�ԁ�H$
A �2 �A!��dR)��]�ΞP���ҩ(��y4�I� �M'�L��<�Y���I��(xW<t�G���&�RQ!�R��4�:hp�Ҧ����[�uq�h�Q8���BD�*��B��l�g��&���B%�&�K$�PI4� �S�'�>yD��@y�x��(xaI4������)�8yC�BPV� ���=DJ��%գ�.�h%҂PI4�ɞM(%Rz��֔�PKS҂OV�����'��J�*�����J�?���-�m-��D�4N�gQ����C@yP@E@R��'�S�%RL���iSɤE=�*k��ET�p��֭Q6uL� � �(p��c8`�3f ���N� �˚�.l.�.mN6�� �l���h�����(z'��"�P󇎤;*
�=C�R��P䩭� �գm�D�N�:�M' Np���l�� �4M�4L�!��h��l���h��&� ��Se���d��l��V6Hl��CBtODd��!�(����6cE(�F��g(�2��(�1Q��Tb�F�b�*0c͍h�V5���A D�E"���8�#�8R3�jU��YYF�B�1:'�"6D�Hd��F�6cX�4Q���f�q�g�Q��c�1�c1���F,`�&5Q��Tk�ΐH$(�H�v7c��9Q�26G++++#Qʑ) k]V�kKT�֪��kZ�k]�k��ֵk^���׭@_���_��� �E"F���ʲҪUJ��Ԭ�J��Y�Tp��G
8�ᐩ �C!�� ����}G��c�~A �����$ �H$*B�1�FI'HdH����J�TJ�e$R��������Y���9�TqG��$R ��� �@�$  �G� ���� }G�A �H$ �6H�"�D�mBx�{@8l����é����3úU!�����HsJ�9�É�É��3���4��E=úQ��GS�R�,I�lM�����ؚ��"�E��"�Z!��������<;<F=�FM!�*���<9�x����*x�z�P�!��g��"�����j#���Y��a�-V�j���Q9V'���b�U��cV��zZR�R�R��+JR��Ҕҕ�V�KT����Z�j��j�UkZ֛��ڽ]��4U�*��EQ�������D��MR1KH��F)�1KQEUE������TE��-��TD��tJ;:%g��pI98$�g��bI��(�6$�Sb9���I���h?4��i��a��a����<b�Td����UF+��A؜��9�S�ÊtVvtVrpJ6���sbQ�lJ54%f��SbQ��$�ДjhJ54#�I��d�"�̈Rh?54&��T_^���1��X�4Q�f�5�q�b��1��#���FEE0�c����l��~?�"E"cx�F�8�$I!Q�l�f?��$&�؛"�/��]Q"5�#V4��Fq���&2�Tb�F��#F�aFQ�F�5�N��#��B��1Ž#v8�$JA��� �A ��kKMikUUUZ��kZֵ��kZ֪��UZֺ�]V�k�P�;�j��W���� ��H$ ��1�#eYYVU���l�G1�r�,q���
�� �H$���� ~?���
?������
5H�"zE�.��_"dLQ6@�$� ���"cv9eedr��G*��s�1Ž#���H�L�B� ���#�?�����?���񲏱����1�F*'�&(�/�ؘ�ț`7:xFH�����1㧇���(� � �@1㧄c�O�#��d��7�P��yC�m<t�L<�@*�S�I���� ��������Rj�?m�F�6���'�D�&Q6t�R< G��"P󧎞O(� '���<y㧄sǐ�#�玞.H����k<u,�:x�<# :� � �&����Ǔ<��x�'�ʦN�&�z���Fu��GJ ��d�H�PI�A#�zA1OH�PHEJ I��(�ҩ=%**T�5J�Ug��:�y��t.�Ͷζ�gQ6��a��(� ��� �
��R�LR��������yC�*��iT�Jg�ک�N�A���2&��Β��� :`��e��͗8���*dEL�&J� f��M�d�Ȟh��l4FhQ4FdA�ǁd���i<x�������$=J ���JPP ꚶ�"�'QEOgYc�N G �2ta��Ʀ� F�$60�SB����!����$f@���� &H� �G&@�#2'�M� ��E�-�TY(�D���TI�1"#�������Ȍ��1�c�E�TQ�1EE0c�1���5D~>����(��aF��c�3Q�1�kc�B�\t_E�lZődW��Ĩ��LH� V��<����Tc�
0QE�1E�1F(� b�Q�e1�jtl���(�#$FQ�a���Lg��F��l�$ }V���UUWZֵ�kZ�j�Z֪�U��uZծ�Z��k��U_�}z�_��2@��Q��FѴ~6��l�XՍ� "�#���F�7�� �C!�H#���F�6Q����f6c����(�/<X�[E�[E�k�s��1��^����
�2 �(�l�Xٍ�h�6�cV>���(��r�
7�)
�� �A ���e�����~?��3H�x��lYűt]E�|_L��1��Zx>�u�@�0�L�i
m�[=O G���=(* ��{@/ q΁�a��{<?>xn=�#�C�iOg��8�OPާ������F!�D�riDDvQ=���TB��h&8x\=�OE�z�ϞPS����Ǣ�`@�0΁�jj ����@B=�!��HPG�@9$��)JCrT�-!�N�qTTEZ�*���F�!4�ڢ�Ҕ�OM /��T��iJiJj��ST�)Z�� �J�*���k���]����n�EZ���/�Á4I�"� �R�I�rm��@GA�OS�c���HyV�B���:��X���(�"R4C�Ĝ��s�p:I� ��Cq���I4���c34�3A��2���_%RP�d�P�%&`�J �D����a��t'�Ǣ�4������F\<7��b�z"Q�8%�Ω����cL،mMSH&P% �O2̤�h%I��K% �fC9�d2��a2�P�d�P�`�(U%@�BQCz��� ��h���"9�&$���:��!�FP�����C��TC�"<HbSŌ\�ؘ����+�ر�bغ.�ؽ��M��:(1��1���/H�+QdVŬ[C�D8�C�"#���D�D���J�
#�u <�xQ#0��;(vD<�"$�%�c�/��MQ1E�lWز.�غ.��dM��9��(1�c(�"���E�,�b�.��ZkKZ��kZֵ�kUUZ�UkUZ��WuZկZ�~�_������&15DȽ���'E1cDF��kƑ�h�%��2��d�Q�b��3cH�5���E��bEj+�ز+QdYőcűlX�Ȗ�!��� !�!��LCQ2&D�/��^���0cF5�ce��4�f�Lg1�f�%�1�FlhƱ���`�b�NQ5"ċ"Ȳ,�bص�b�.bص�X�+H��!�� "Ca�"DH>x�e@yP@ �D��O��:LRL �
P8LRLD�(@R�P mJ|@R��$�M�P�C$t��<&��=AqOZ�@�Um�eZ-BCF�E���Z'}#�S�Oy��㧁�����h���"���I�O4���Q@TL���LT��b�`�LTL�����@A�$�Q-$� J�J���F�%v� mgYD��I�������A'� iA()����OKS�z��=OT�R��J���^�~���n�]��:��u��~��a�C$��`�&�D���8���E��:x:$�N�����FڢqrD�("d�6.më́����M4 &�&��L��������*L �J����ܔ�(�� d�s���P' G��̃:�3h
��H"��o@x�g�<�&z)A!=OS���n���8uN�8��'8\�7$2L�SA,���#�P]27%27%BQ�(�(��L(`��("0P�nJ��)BQ��5�� O272!�(pP�!���l�� P�
��T2C:!�܈����s�8�q"�Xs�8s�8s�8ta݈�y����Ĉ���!�!�C�!�T:���b<HbTJb��-b�.b$8���� �z�
�� �� P�P�P� �4�؈�t8�"��!�C�p�j�ՇHt�Ht�fyQ��!�"$�&$�yHwHt�F�v�xx��"$1)�lKbȵE�Z�굦�UJֵ�v��UkZֵݪ�Uv�������������X �!z���/��\�ر�b�1-Eq\K�j,b�&1==�
(�B'��؞�����t](�E�b�j+�⸱�'��i) ��t@P܈n� 7�؃ AQ �lC�T[1|]��,�"ȭ�⸗�J����'�(1F(�B'���؜�b��轋�]�X�ċ"�,�[� �I�7�oa� �oa��0�Xp�Q
!Ë1��f��ԅlA`؂P��xJ@�A3� P $��@g&t�6D�#ɝ&E�ě@H4y�����U �zT'�<�:�IZA�'a��qB�8��V,,"�B�ԝ� ����oA� ���G��I��J̅f'@% �IC�q4I��C�̚%ԣ&��0wB�<�8LOS��H<%&M�)�����*u!Y(�-Q������V�OKI���5U5JiJiJj�iT�+J�T�Uj�!*��]k��Wj�]��Wwm�h�F��!GN�b����� E@�N�a=P �P Ǥ����t��ڵ ʋ � Ȥ�]F�[8��hښSI4FJ�I%
F ���)�̕IA"Jy�H���,�8��Pr2��.�8���’�9�e±C��C��:��(4'���|�B�R�����V����gB����rp.Sal��Y2�(%�J�RU0��0 $�:�I�t0���^Jf&��0 "U0f%��.���aIA��2��P�¢!�B���^:N�CL!����!��1C� и� e P���,��,��-B�l�^��`: ���C L5�s""!Ɉ�9�Q�;�X��2C�DD�q!��� l*(Uat+ ,.� G�~t?��k��iP� ��2�1�a�� ���r.([��[an]��^a��(cD3"�ha���� ����XsP�ó�4<D�$(xHuH���Ia�5���V�^ֵ�j�Z�k�UUڪ�V�����կ���/�����_����� BDE:�yDIDVŌX����Z�1!D��,<De�;(tP�T9(�0�� �����7(mP� ��l��la��ڡ���mP����CQ��!y!`�@�
pJ0� �?DADE:��,V�q\W�\J�1&$��*TF�����9�9$9C��"8(o�,7�7D (��?��n�
�@�὆�O ��ҁ\��@�U�!<y������&:L�2��������&�@PTL$��!@.�"(��@����D(�D&��|P ��byAQ0.��I�1$�D䊉�rPP��@�K3�T��5ت��D�Q:��ɞ:yC�1��&�D�M�I�I�JBb��8@"�)&t�|PJ����<�|P�@�P���atB��Pb:���ba�0/<�����H4� �N5�HDI8
az�vM�)A#�A'��T:�<�J S�:���OMPID��i=I���=PT����OO���Z��m�l�:���4[gQ6��~�lt"��pt"����[&��P=( ��$��������GRzMQ`:��pt��N�6(,lɢ3BY����GD�&� 0 ���� � �` ������4�aa!p��%� �B���&*��x�D,P>(�$�/���@uQ��'� �8�DM6`� F� ��J��dpJ$����`���`lX�q�p�XjX ��ˈ���,,5*%��� �V\���\����%�&����)�$�(�P���I�A�A�A�kPj`�PkD��`l�3aU�a�VabT,0� *X[:!r� 0� 0$/$-��xW< O�B�A��X%N�"!Y�v��`�(dD3CB!����������H>B������� ����Pq��A��:A��R8 � �D+"N��ar�^ay���}�$C$2C# �T/���i!�@��H@� �D, L!�\8�bD1�+ �4CI�� �6֖�J�mkZֵ��VֻZֻZ�V�Ujꮪ����������W�t?�Ԇ�j��jP�xh�� ��1�c�(d�XC� ��(��Ë"1DE�8C��
�?H~�l4���C
B��@*�e �`��uD�<0�
B���!E�$B� �
�*�TP��m����i�� 0�P� ���R�da�C# �!Ά�DD(qb$9DUT9(��� 7�z� �7CY����
�
��QP{D(Š��)(QaIB� ��Ta¤*B�
� !B��kA*��H�M -RP�1 L����h%'��#���$RP �t B�tx���E��n:dt �&���`N�lt �HI�gT
��  �Ǚ@O8�a�PeS��E��Q`tJR3Ґ)J��I� 䞐&�L�&@�%�&��=%�I0(!�P Eh:tt����&
1�22�f4)A5`��`Q:<B� R�2)�C���D�T��������T�Bb�&��4�g���)J�R�R�R��4��T��iJj�T�Uj�UZ�J�W_�~�_�ڣwwm�n��GX�6���6�YFLI��3���<$��-)H03༜Z�WE��:΂�3@�m&@�0y�=�S�HH��8<�J�� ˁ�������:Y�����n.�p(L2�p0�`6�X
���t�JQD��j�M@�a����� i� J� ,� DN����cl�" �2cRPAI(��IH�K�ܪ�u.yP8�I  K��L�����8�e��Y�zJ˂�*%�@���,�0� ��Y�q8��B������rPqPH(#��ܠ֠ҐhP�b`Ƞ�b��HD$�#�ơ%e��BaИ�1���l:�8"0s`�t!D�% �aUB�8V��B�u��ePȐ����⅓�yР���$΃��~P}P|P�����
�E��� ��P �gH3(KP��*�%�b!6 0F��#�=,���b���x8�>�
��a�.³
�!�]D.�^a}�6a��t�4�_P��U�V���kZֻUZֵ��k�[Z���W�_������΅�C3"� I 0� 0� ��3(eP� L0�`� DŽ4,$+º�"��
B��A� ��L������xPv��B|'���I(ODa=w`��P`���L($XPD�=���(<����6� d���Y:Q ,2��� ��� ��3C,2C1C�`����,�XP��uH%� � !UA��
j�I�jJ`�����
xaA�� �t)�����E!FaI�����>���Od�I@�)��<���`F"����҅�@o(Pxt�@i&)0�� �7�:NP .)�8젨t�� `�"�la���RH*�����<lx ��N"(�@#�x�(q�
E11����.$��Q���L=@n���GTq>�i�T��T�e�Ty���z��<� G��2càI�@T�������¡�ǃ�J��à��8���#�@!`��HG���)�dx��� ��� �1A��OI��'�k@=&Fx�@:�ꑪ�R���������OTz�OI�=4�����z��Ҫ�J�j�=V�i�}z�ڶշm�jΣh�E�-���_��w(*(�t>(��x��|RPx�$ �M��y4�=�63L"�Jt1�S��df�-"0�&'y̰B���ņ�@s
�,6,��jF�A���ؐ�a�p K�04!n5��Tn`ْC$K䠤��1I0
��A�c��3���z�y48�M'�ډ���$�3�.lRhrd) p�\��r�B��F3$�XlU�2��#2d�B@ ����n$�|�)r"�:�K�L0`�R�L�2��sCsD��h�D�T��@�� ^Z>�0:`2�@T
�Q���)��à�0p ����E`%K�D�R@M@���< ���l G@�\ (�@�x��� 聹�B�����)��pB0B�+�,�A���a4�#X5��Br!5!- ʐ�ZAy ��E("S�M <��� U0=�H�<����p�)T��P��PQ`����)�z`�x
��`��:�9��� s8xT�90:"f
H���*�;Lഈ." ���� �p��k� 胋KT�UkU��k��z֠/�+^���j��u�]�_�,��8�����lPi�B��3��3(JH2(1("� � j J ux,Af
�DL,A]�(�U(
��A
@�LX(�Rt���7�< �i���g�9�'�������>� {�=��
b`���J@�8 �rA� ҡ5A�BZ��JP��KP���Z����Ăʂ‚�����-� �X/Ax�W<LL"�@���Z���}P*Px<ā�����NL��6a�@0T:�A`�,��/�_H.�H: �@�c��4p +�2���C���R�D��Ȅf ��@��b`]@z�R�#�yJ�h`�>�b�G���JL�E��*��?
��:l���"� C��!E&G@�&m"L:L�@ �<�tU�e z�`xd�� ��GQv��j�v�P<���6yC�K�:x��)h:��!J�@�<�r���R"� �N����@���L
�(��O�4P��
�2L � ����Ҕ�UR���ZU*��U+J�J�JR��UZ��U��R�V�z��׭���������p��,P&x�Ԙ
�L h<��
���P#U��H
Qg �l����pBQ��`,<H��p�H�|�T���=�H��Se@|$e�@��L�\�p!L.D�٠" �0�ɀ% ��2`�L�D ��D DPH��@��
r�����
=@�J
q)P"d΀�8���6<қ��p! *s����R4�ZX!h����D3"IG�$��$�)�# MJh���K�d�s�i8d�Θ:
'L�TC<6�<�(�ij���t|�l��q����șb��s�kR%�'.� ���`�A�>��A`����0 (� �PU� +� PS2s��l�W�/�u[<Y�FDBJ� ��& ���A�� ) � �� �� �ġ�Bⅵ JT!T+$! � T*�UP�����
I�
'A� ���L�����2�H����-�B0+��hN,�20��J`Ȑ����Z!2
X3�j Р�`ԈN8��V�Z�U��k�����}�W]V��V�u�U����T {�NPlPkPjPh<&$%(KH2(1��T��� J
ǂ���PA( T)���NP 
2 y< #@U�C@�� T�h���CA���!���+�Bi���9SAE�M���A��B���x�d6�b!ɃrA� �mPjH4A�!1!*TR�� )�.(-�]C�
��i
@�<l��@��AlQs��x+Ae����-�e �p$ �A��$���h �@(@(@DB� �Ӂ��ga��50@K a����������������������$�Ā )�P�(!�@P
� �@ DL �Ju�
4P0QTq �xM�d@BPA��@ @� B��D ��@��%A!�#�J� D@
RR�%�<�^�������p1�8�L�_�w�6�D"[��%�8��TV��Bpb0R��H(,��0X�E4@� `�QX�:� (Z谨ȓeKW����> @�P��*!� ��@�� pKJJR����1r $�J,�
(��,� ��4���M;Ì4�8�
��+��(�(��,��4�
0�K0��(��(��(�
��,�@0� 8�N4�{4�8�7��4�8� 8� �M0�N8�4Ӎ,L0Ӎ4�, 4� 0� 8��Ӏ0��4� 8� 8�0� 4� 8� 8� 8Í0�,� 0� ��0�;����8L/�M0���� ��3��4� 8�L0� 0�N�����8 0��N������7�3�;��;�3�8�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������";�S�8��0�L4ӌ8��(�qC8���_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W�[�����o�{}i#3I�q��q�]��\a�W���������n�]e�����|v-��(�#�"H�%`�`�at.��.�� �ZbT$���š��y$�I$�I$�I'9�UUUUUUUS���I$�I$�I$�I$x��Ǐ<x���$�I$�I$�I$�:J���������UUUUUUUUUNs��9�s��9�s��I$�Ns��$�I$�H��1��J���������s��9�s��9�s���I$�s���$�I$�I$�#�_K n6�ٖ��;J��S�Ӊ*#�u����~?�l[Rrrrr<�>|~N?����������/����������{bړ����������ϟ''''''����~?������~?ض����~?ż_>|������{������~?������{bڏ�����d����d��Q4"b(�"��8�#B8�#���I$�I���9�s��9�l��9�s���S9�s��IT��s��9���9�s��9�s��9�s��Ȏs��9�iU3��_�s��*�9�s��9���9�s��9�s��9�s���s��9�s�Ds��9�U6s��9�r3G9�s��9�s��9�s��9�#��9�s�UL�9���9xo�w\K�����O��O��O��O��������'�'�'�'�'�'��p���O��O��O��O��O��O��������'�'�'�'�'�'�������P��@W|p���ʭ@W|p��+��W����_���?��/��������������������������������������_�������_������_�����_����������
����+��W����_����
����+��W����_����
����+��W��������8
����}�]�@W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
����+��W����_����
���d�QA����!��(4B,p��H[6�Ni���1)���pZ�r��f9�B��.ax`# �ݪ)J�wq�B(Ձ+N�CF��%�66X��"bf,š���Z��c��Ѡ$�C��Ţ�"�2#3A7[�2���w�"�X��T4ie��X��b����B#" s���b3" ��MɎ�FD�!4D�:�ѡѠҝ!���핖5�qKc҃s+�Q����
���\x +�q�CDB��Z�1�Y1Ѣ#F�hs�4�3h̬��+a4hҍ0`ѣJ*4Th���0��A�h�х �4aF
� "
����Q `�*! �*PCDB��Z�1�Y1Ѣ#F�hs�4�3h̬��+a4hѣF�4hҊ�0h��F�(��q(4aA�F�0TTh��A��
*4Th�� `�0B*4%x`
!(�@D�f$� d@ ����hD`0`t�v@ r�h�A�(� �(��p�Ā7H ��I@��|��,���X/�^ -���S ( �x����@C!`C��|@���?%<����� L(�QPY c�4�� �q�\��`J1������6 ������� pj`��X6 i@P03@�`^ d 
Àd& ���X�HX)��y�<X~@G !���C���� ��?%<�H n@�@��%IUUUR[J�.����R�����q��O�@W J�VXBa� �B0� !�,6�B�Vp<`y�F#C�P>������P
�# AP�4'���8`'
�D`Q()�
�]��
l
�Z�`h.0�P](��ª
�h���@ $��0$� �A0ԡ�5a�&0�#0�0��hD(E`w�����`r4<�P ب =� �0�D �Bx�Jလ*�D��PS(+ v )�+�i`h.0�P �/0�ª
��p+ Y�����*
(�c���`$ A ��(�7�I��ZP�p T�MB�x�A9 P f�:Hc86��X� 8�36 ��
e!B�G(Wc� B�!P]be��PX(��JPU(�&9@�0YA0�cBp��@���Y2�D��f M:�3��;6��qQ02,Y�4�@Ď �̓+#FB�HP�Qe
�r�hPD* �L��Q� �T)J
�!AI�P( PL(�М4q���3:G36f���6���J��t�U%K[�J����ݲ�vݷm��Waف4�`�e?T Ff@��`��͠MPL
Hl
hbS��
hd�aQ�aU�`�ƔJ4�\�(16P�(8�Vl�\�J���](�@�P5��TPP�
aF4!��aف4�`�e?T Ff@��`��͠MPL
Hl
hbS��
hd�aQ�aU�`�ƔJ4�\�(16P�(8�Vl�\�(�R�t��R�(36PF2�9F ҌH Aa�` �7*` �!�p~0��p&0&XN(#E@�`���� ��t�axb��d��C6 ���8��ht�ѡ.J�������� �ÈHAp�a � �d&
l 0�P�P�0$0�ØtöXyz�ℨLa.�:A�9q�b� �?0���Ń�0~P͆�Ca����480�hK������<A�$��H9�0�F"�C0��4 ���_�Ki*V�-�ޗ���I�����~����
l 0�P�P�0$0�ØtöXyz�ℨLa.�:A�9q�b� �?0���Ń�0~P͆�Ca����480�hK������<A�$��H9�l90�����Q��&
l 0�P�P�0$0�ØtöXyz�ℨLa.�:A�9q�b� �?0���Ń�0~P͆�Ca����480�hK������<A�$��H9�0�F"�C0��4 ����hM@S�g�o��!�Ã_�� x�N?�E����'qF��w���<.2��R�l��i� V#��/�/��pQ���_��?�E����'qF��w���<.2��R�l�c�C��1̆9��D2"*"4j���Ti#IU�Z����m��V�쬬iL�\w�V4��@���#�?���Ĝ�p"s���.)��q��S���V������\��e)X�R�V4��@���#�?���Ĝ�p"s���.)��q��S���V�§ 7l��[( f�Ls��M�d�I��$�I<x�I$�I$�I<x�I$�H�I$���$�4J40
F�����H,�9$�9��$���I$�<x���I$�I$�<x���I$��I"9͒I�,h�h`0��[UU����+I%��%_��>��+�����Ӏ�G�% ���h�#$�NFI$�H��ǒI$�I$�H��ǒI$�DrI$��6I'8���h;( aA����ĤC��M�d�I��$�I<x�I$�I$�I<x�I$�H�I$���$�4J40
FD��s�Q|_��.���'����������'���/���Q|_Ǹ�ؒ6���ĒE�z����'qu��>'��_��_q>'��|]�ڋ���=Ŷđ��V�h��fs3��GF�F�*J��t�%T�K�����v�ʝ��)�����_8�H��Q|_��.���'����������'���/���Q|_Ǹ�+�C��$�.��_��;���/��>.���/b����>/���&�_���-�$����3��f�rI9�$�d�I�uUUUSg9�UUUS���I�$�$����r"3��f�rI9�$�d�I�uUUUSg9�UUUS���I�$�$����r/�UUUR[J�m$��UUK�O����~��ڷp��s��9�$�$���I'9�UUUM���UUUNs�I$G$���NsdG9Ȉ�s��9�$�$���I'9�UUUM���UUUNs�I$G$���NsdG9ȁ�����������y�;��� ����3�{�(�������$��/���������e�S�]��p��F��1�Fc�Lt#1�Dc�!�D"1���&�4D-�C�F��*F��v����͕�ec
4��iHQ�Q�,w���?�����������{��?�uw���| ���/����� �������w�����W|A��5w����9�U:���ꪪ��lꪪ����4���������U3��9�U:���ꪪ��lꪪ����4���������U3�����I-��Zޒ�ꪪ���������~��;��W9Β��UUWUUUUSgUUUUUU9�UUUU�UUT꩜�9Β��UUWUUUUSgUUUUUU9�UUUU�UUT꩜�>u>�w>}Us�ϟ]u�]s�ϟ]\��j�|�|�������Uϟ>}u�]uϟ>}us�ͪ����sG36fsF�*4�)�F�IQ�GIRT��/����v�wm�*e,����ϝO��ϟU\����]u�\����W>|ګ�;�>u>�w>}Us�ϟ]u�]s�ϟ]\��j�|��UUt�UU}UUUUUUUUUUUUUW�UUR�UU�UUt�UU}UUUUUUUUUUUUUW�UUR�UU�UU[���-m$�uUUU��ӯ��om��wi�
�j���j�����������������ꪪ�j���ꪪ�j�����������������ꪪ�j���N��������������Ϳ�|����}r>��?뮿�z���o��#�>�;�c��2���C"�"��4h���"T���]j�}��+��۲���2�(�0��,w�uϮO��?��u���]��m���~��'|�s�������]u�{�|��>�����UU�UU���UUUUZ��UUUUK��UU_UUUU�UU���UUUUZ��UUUUK��UU_UU����R[J�%�I$�Z������oo�����W�UU�UU���UUUUZ��UUUUK��UU_UUUU�UU���UUUUZ��UUUUK��UU_UU]u�]u�_P̝u��U��O]u�]u�_P̝u��U��OGH��flѴ��iIRT�N��Z�������n�M���L�h���p��]W]u��s']t��}u��]W]u��s']t��}u�ֿ�UU�
� UW��U���Uj�CUU��׵��RIm%J�J����
�-�}?��[N������ꪵ]!����j�����@WHj���ڀ��B�������]��o��1o��+w�����O����w�����ſ�����q!�b3�юbCfc�" �t"D1h�Z4%2!h�Y�F���S���cm��!6�2�qecY
0�F
0��X
��/��#������������5o������/��#���������������� ��}5U����UV�+�5UUK���U/MU��5UU�
� UUR���UK�kN�J�J�K�J��W_M�M��u��[��
�I��������\����_����zj���骪�@W(j�������^��뮾�+�.��p�]u�M���]u��q��]n�ˮ�������hљȎ���ѥI%UT�]U�����v��v�v����R����W�_�u�_P�]u�
�.�릿���������뮷\e�]t����UPȓUUUJ�
��\m5U\�5UUT�+���_�괚��I]���W�w�����_U]7��O�m5v�+�&��+�&����rUJ��j��j���@W!UT��_�u�_�����_���W_�׷_�u�_�����_���W_�׷!�s�c��I�����"�HȨ��I%H־�۫em��em����Ʋ�ieR�aeX
��������������������������������������������j�\eUU@W$UUP�ڪ^��@WUUP�UTq������I^�ޕ���_��m^��Uo�M;�V�wp�SU�
�*���"����6�R��j�ʪ���H���+��T����]@W:]mt���}���]@W:]mt���ts3f�39�6���uI%UT��OUn��vݷm�ٔ�V�e�VYe�����뮠+�.��k������뮠+�.��k��������tF��r��j�#UK���ZMi}-+�������?�������oowv���i��+ʦ�P��P��U�
��U/�������_�������]��o����������_��}[�|Y�b3��14Dh�"D6��F9�"$hZ3���#D����k��ͶVأ+edcJ*Ɣc+(Ҕ�J(Q���������������������������������������������
늩�������_�������i^�z_�������uUU�N�����M@W�MTu�T����U]qU/���r��]n�Z����+�.��p��_���h��6�9�J���&�i%��T�]]w{n۷n�e����)m�V[nX
�k�
�ˮ��r���]@W.]u��+�����
� ����\�W�Ts�UUR��^����ߥ��ZZZW�_[]�����Um�����=���W�U\�5UUT�+������`����P�����]��_�����7���������_�����_�]��|�9�sFD�D9�#!��$j�Q�Z5F�4���VڶV���R��c
W)X�4�4�(��4�����]��_�����7���������_�����_�]��p�UP�U(
�i��
䊪�rUU�$����---+��}��ڽ�ު���v��v����+Ҧ��+�*�P��UP�U(
�+��
�N��+�.��+�:ڀ�<g39��Nm$�$si&�uUZOOO����v�wi�e)l�����)[e�����������
�K��
�N��+�*�sƪ�­@W<j�+�*��ߥ}��_��}��W��6۽Sm�ۻۻ���y�Z��x�@W8U�
��Tq�`� �����������h ��S1G(���� 3�|7�s 7���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}4� 4��(�#@�'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� ��'���� �@<�$x H�����$x H���'����a�H" (A@`��@BHHDI�&I$�����TH1����* @�@�� Q� @<�$x H���$#�HG������$#�HG���?���$x��&�r�T ���32rI������:w�-�Us*�m�[m�0ʔ��d�NSJ��H�����` <��t���0�� �0��a���L�-�)���J��h�"�UR�EEcLY����` <��t�"�9�%q2` )�+����d������>��w�7m��W2�im����S�W&�r����?���%��~��%��~ �H"H# ��$ �H �#!) HI!,䑓���߃�h8� �4TEEQA�� ` ?�����?���������������3��'���_^o�Sݿ�ʹm�[��۶�S�[���[�����?0�3�I�a��a�a���RL��ry,�coZ�R�E�*#V��h�����K�<����0��%�������g��������V6�n����K��%��/���B��Da �B ) HH!2��"I�I���`���:( TP4D
��E���O�/��O��?��O������m��[��m�'���aI$��2L�L0��e2��6���{�R�GE���jիV0���L�$���y��=Jn�m���m���m��� ��& �����# � �!) ����K91��?����EE�*"�E���h��J0���L#������?����m����k[w������ � �Ja�faJI���e���x��ԣQh��h�jբ����� r~�����R��)JR�����n[��_���L�$x�<���������<` ?��������B��@1@R�  �B��$�����$0D���f�Ǽ��@tPh�T(A�TP
��  ���H��$x����������$x�<�������O��~�?�����n�km��[m����m��l?��<��<��)�%`���y��yL%��Ha�d�� ������=��x���n (�Z-UR�UV�����Vl��<��<���g�y��y�0��8d��SH��Ij���O���Ζ�[m���[�r�����5L/kIiL#�L+e0�0���` &y�P��0�<�$hA �# �A���� $�99��H�aXZ�h�Ph�Pb*�� @q�_���$�;J���g��%�` ,3&�r��$�̘IVV�u�-���)Km��ib���Z����#]0��$�3Ia�0���%�d��` :,(&���DIC(P� ���̥2�RcH��z�Z-@V�@Ĉ1�1�0���$��tXPL'E�%�����sI�` Y����R�k���J[m��m[m��jƾ�\��3�NJ�' �$���S��������������B 1 �P� )I B@ɂ�I�d��0��A* PX�6*�����Q@ ��1���1�%�o?�����o=����0��y�0�Q '�CI ����Խ--�����(���mʶ�Ƭo��ް��Q '�CI��JQ�0�0�S����)B�)�e2�2�r=&4�{ك��E�����Z-11(��0���$`ـ%(��J �R�)�$����&���S ����uן���R�im�)m��im��ܯ�lcc��%�` )�%0ɀ$����&�����UY�����UUf��B2�A� � �C0�ÒA�3&L�a�*��j����� " 8�� b�� ^` o[��{����6����J��ـ$p�J�L$e�U��Y�y�MMK�Jkiu��JR��m�ڶ��X�j'�L,�H�f�D�H�0�$�:o0�)L#�JҔ��e0�B�(a����Y�N�(�Z-�G�UEڃ��ccـ%�o������)�$`�` ZR�F�0�$�6Y�%q'���{���������֗P��m��m�m�c�Z��` cXFK0�$�6Y�%q'��

76
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Challenger/ReflectionProbe-0.exr.meta


fileFormatVersion: 2
guid: 7bcedc354b8ea8e4c9ce906708ebe468
timeCreated: 1495750703
licenseType: Pro
TextureImporter:
fileIDToRecycleName:
8900000: generatedCubemap
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 1
seamlessCubemap: 1
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: 0
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 100
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

9
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials.meta


fileFormatVersion: 2
guid: 905a9ecc96431e648821b17f68505aa1
folderAsset: yes
timeCreated: 1430208493
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

116
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_beard.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: challenger_beard
m_Shader: {fileID: 4800000, guid: d6cf794d3b991c842ba5ee650aaf280a, type: 3}
m_ShaderKeywords: _ALPHABLEND_ON _DETAIL_MULX2 _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _NORMALMAP
_UVSEC_UV1
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform:
m_Texture: {fileID: 2800000, guid: 6500e60964980894786107d201e2a7f7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform:
m_Texture: {fileID: 2800000, guid: 5ea5965e46e2ba745b364d724b7991a2, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform:
m_Texture: {fileID: 2800000, guid: 016765d5cd020814cb1f61ddea564538, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 7417c3df9c832f5448716e9cdeab9381, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 2800000, guid: 5794e01efe77f944dbf2985b92afa924, type: 3}
m_Scale: {x: 2, 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: 2800000, guid: c7dfbf40506c78e44b5963b2ffdf4dd0, type: 3}
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}
- _KKFlowMap:
m_Texture: {fileID: 2800000, guid: d4b77a55bf0f99d45af89fd601b45224, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 84f0944b919b9fd4693a119215d95fad, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Occlusion:
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}
- _SpecGlossMap:
m_Texture: {fileID: 2800000, guid: 4970233d1c8c00445bc4a6fa2eb02d2d, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform: 1
- Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform: 1
- Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform: 0.5
- _AlphaTestRef: 0.5
- _BumpScale: 1
- _Cull: 0
- _Cutoff: 0.5
- _DetailNormalMapScale: 1.1
- _DstBlend: 10
- _EmissionScaleUI: 1
- _Glossiness: 0.161
- _HelmetHairScale: 0.05
- _HelmetHairStrength: 0
- _KKPrimaryRootShift: 0.275
- _KKPrimarySpecularExponent: 100
- _KKReflectionGrayScale: 12
- _KKReflectionSmoothness: 0.7
- _KKSecondaryRootShift: -0.04
- _KKSecondarySpecularExponent: 60
- _Lightmapping: 1
- _Mode: 2
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SrcBlend: 5
- _UVSec: 0
- _ZTest: 4
- _ZWrite: 0
m_Colors:
- Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 0.86764705, g: 0.86764705, b: 0.86764705, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 0.99999994}
- _EmissionColorUI: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorWithMapUI: {r: 1, g: 1, b: 1, a: 1}
- _KKPrimarySpecularColor: {r: 0.30147058, g: 0.30147058, b: 0.30147058, a: 1}
- _KKSecondarySpecularColor: {r: 0.24264705, g: 0.24264705, b: 0.24264705, a: 1}
- _KKSpecularMixDirectFactors: {r: 0.07, g: 0.04, b: 0.024, a: 0}
- _KKSpecularMixIndirectFactors: {r: 0.5, g: 0.33, b: 0.1, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_beard.mat.meta


fileFormatVersion: 2
guid: ffbce07eaf0a5b046b8aeed1f892c58e
NativeFormatImporter:
userData:
assetBundleName:

143
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body.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: challenger_body
m_Shader: {fileID: 4800000, guid: f354e64a3ee15af459e4a31439c1953a, type: 3}
m_ShaderKeywords: _DETAIL_MULX2 _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME
_NORMALMAP _SPECGLOSSMAP _UVSEC_UV1
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform:
m_Texture: {fileID: 2800000, guid: 8e93a12d4c162ce4488017d7c43a860f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_11a92303_cad4_4ed7_b9a2_01fe39187cce_Uniform:
m_Texture: {fileID: 2800000, guid: 38cfa8e556a37e149b3bc96a9c9dbc61, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_182faa0c_4b84_44f9_8526_6a2b5d1bfceb_Uniform:
m_Texture: {fileID: 2800000, guid: 7625758b151ed664988fcdd859df18fe, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_68ab3d7b_7589_4916_9403_99039a71dca2_Uniform:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_6bba204c_5a19_44ba_9609_fc2dce308020_Uniform:
m_Texture: {fileID: 2800000, guid: 3ce2fee9b4ec4714f8b54cf287194cd7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform:
m_Texture: {fileID: 2800000, guid: 8a79f067c75365a4d93dfdaacfb9dc25, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform:
m_Texture: {fileID: 2800000, guid: a6363ba401c18bb41ac19249e97cf0e9, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_fa598f24_b328_4d21_a9aa_ded3cd2600dd_Uniform:
m_Texture: {fileID: 2800000, guid: c38826c181bea7c43b1698d6bf8c97df, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 22a9038440051aa428baf054a2f5d969, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 20, y: 20}
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: 2800000, guid: 3bae2a5a2ca118742bc6a1e58dc62f27, type: 3}
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}
- _EmissionTempRamp:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: a62fc4a66f9d2c54e81ccddf12d028d2, type: 3}
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}
- _Occlusion:
m_Texture: {fileID: 2800000, guid: 826fb572f807d3943b8980d8f26f9af6, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 2800000, guid: 826fb572f807d3943b8980d8f26f9af6, type: 3}
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}
- _SpecGlossMap:
m_Texture: {fileID: 2800000, guid: ce7c0c14466315747a26650ebb28c915, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- Vector1_078dba25_d724_4a74_99fe_078c8dc7ebf6_Uniform: 0.5
- Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform: 1
- Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform: 1
- Vector1_66d312ef_3451_4b07_9f27_d37785582eb7_Uniform: 1
- Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform: 0.364
- Vector1_d429c42e_84f9_4cd9_aeff_2b5531f4227d_Uniform: 1
- _AlphaTestRef: 0.5
- _BumpScale: 1
- _CullMode: 2
- _Cutoff: 0.5
- _DetailNormalMapScale: 0.3
- _DstBlend: 0
- _EmissionScaleUI: 1
- _EmissionTemperature: 0
- _Glossiness: 0
- _Lightmapping: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 0.912
- _Parallax: 0.02
- _PlaneReflectionBumpClamp: 0.05
- _PlaneReflectionBumpScale: 0.4
- _ProbesBoost: 1
- _SmoothnessInAlbedo: 0
- _SmoothnessTweak1: 0.9
- _SmoothnessTweak2: 0
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- Color_14397097_d99f_4fb0_84c5_307d9e0d6ea9_Uniform: {r: 1, g: 1, b: 1, a: 0}
- Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform: {r: 1, g: 1, b: 1, a: 0}
- Color_edaba26b_8c62_4e4c_8e17_5626c4a01b5c_Uniform: {r: 0.58088225, g: 0.33910328,
b: 0.11959336, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorUI: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorWithMapUI: {r: 1, g: 1, b: 1, a: 1}
- _SmoothnessTweaks: {r: 0.9, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularMapColorTweak: {r: 0.6911765, g: 0.6911765, b: 0.6911765, a: 1}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body.mat.meta


fileFormatVersion: 2
guid: 670fd5b5fc536574db1f7390c4058569
NativeFormatImporter:
userData:
assetBundleName:

235
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body2.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: challenger_body2
m_Shader: {fileID: 4800000, guid: cc77cd34d845f4a479ddec96dd10a3f9, type: 3}
m_ShaderKeywords: _DETAIL_MULX2 _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME
_NORMALMAP _SPECGLOSSMAP _UVSEC_UV1
m_LightmapFlags: 5
m_CustomRenderQueue: -1
stringTagMap: {}
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: c9bef58345ac9994391314bea6ede4d3, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _BumpMap
second:
m_Texture: {fileID: 2800000, guid: 565bc95711290fa49b5fa43c3c8f9253, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailNormalMap
second:
m_Texture: {fileID: 2800000, guid: 3bae2a5a2ca118742bc6a1e58dc62f27, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _ParallaxMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _SpecGlossMap
second:
m_Texture: {fileID: 2800000, guid: bf4aaec5882cb034199c32c8d89d08ce, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailMask
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailAlbedoMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 20, y: 20}
m_Offset: {x: 0, y: 0}
data:
first:
name: _OcclusionMap
second:
m_Texture: {fileID: 2800000, guid: 6e7c96eb24538cc41937fbdac110fedd, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _MetallicGlossMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _Occlusion
second:
m_Texture: {fileID: 2800000, guid: 6e7c96eb24538cc41937fbdac110fedd, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionTempRamp
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionTemperatureRamp
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
name: _SrcBlend
second: 1
data:
first:
name: _DstBlend
second: 0
data:
first:
name: _Cutoff
second: .5
data:
first:
name: _AlphaTestRef
second: .5
data:
first:
name: _Parallax
second: .0199999996
data:
first:
name: _ZWrite
second: 1
data:
first:
name: _Glossiness
second: 0
data:
first:
name: _BumpScale
second: 1
data:
first:
name: _OcclusionStrength
second: .880999982
data:
first:
name: _DetailNormalMapScale
second: .400000006
data:
first:
name: _UVSec
second: 0
data:
first:
name: _Mode
second: 0
data:
first:
name: _EmissionScaleUI
second: 1
data:
first:
name: _Metallic
second: 0
data:
first:
name: _Lightmapping
second: 1
data:
first:
name: _SmoothnessInAlbedo
second: 0
data:
first:
name: _SmoothnessTweak1
second: .699999988
data:
first:
name: _SmoothnessTweak2
second: 0
data:
first:
name: _CullMode
second: 2
data:
first:
name: _PlaneReflectionBumpScale
second: .400000006
data:
first:
name: _PlaneReflectionBumpClamp
second: .0500000007
data:
first:
name: _EmissionTemperature
second: 0
data:
first:
name: _ProbesBoost
second: 1
m_Colors:
data:
first:
name: _EmissionColor
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _Color
second: {r: 1, g: 1, b: 1, a: 1}
data:
first:
name: _SpecColor
second: {r: .200000003, g: .200000003, b: .200000003, a: 1}
data:
first:
name: _EmissionColorUI
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _EmissionColorWithMapUI
second: {r: 1, g: 1, b: 1, a: 1}
data:
first:
name: _SpecularMapColorTweak
second: {r: .735294104, g: .735294104, b: .735294104, a: 1}
data:
first:
name: _SpecularColor
second: {r: .200000003, g: .200000003, b: .200000003, a: 1}
data:
first:
name: _SmoothnessTweaks
second: {r: .699999988, g: 0, b: 0, a: 0}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_body2.mat.meta


fileFormatVersion: 2
guid: 56750778a74d762469ce6b4598125cd3
NativeFormatImporter:
userData:
assetBundleName:

294
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eye_wetness.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: challenger_eye_wetness
m_Shader: {fileID: 4800000, guid: cc77cd34d845f4a479ddec96dd10a3f9, type: 3}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _DETAIL_MULX2 _LIGHTMAPPING_DYNAMIC_LIGHTMAPS
_LIGHTMAPPING_REALTIME _NORMALMAP _SPECGLOSSMAP _UVSEC_UV1
m_LightmapFlags: 5
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
name: _MainTex
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _BumpMap
second:
m_Texture: {fileID: 2800000, guid: 6164f86085ef15b4da15538826d3c7ba, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _NormalMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailNormalMap
second:
m_Texture: {fileID: 2800000, guid: 6164f86085ef15b4da15538826d3c7ba, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _ParallaxMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _SpecGlossMap
second:
m_Texture: {fileID: 2800000, guid: e226e64fed228564b9719ee97391c288, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailMask
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailAlbedoMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _OcclusionMap
second:
m_Texture: {fileID: 2800000, guid: e305301cb56859e43b6c492a63eb8ce3, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _Occlusion
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: Aux
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _Subdermal
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _SpecularMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: beckmannTex
second:
m_Texture: {fileID: 2800000, guid: 1f8a2a9513b71304096392a57129f8b7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
name: _SrcBlend
second: 1
data:
first:
name: _DstBlend
second: 10
data:
first:
name: _Cutoff
second: .5
data:
first:
name: _AlphaTestRef
second: .5
data:
first:
name: _Parallax
second: .0199999996
data:
first:
name: _ZWrite
second: 0
data:
first:
name: _Glossiness
second: .899999976
data:
first:
name: _BumpScale
second: .439999998
data:
first:
name: _OcclusionStrength
second: 1
data:
first:
name: _DetailNormalMapScale
second: .340000004
data:
first:
name: _UVSec
second: 0
data:
first:
name: _Mode
second: 3
data:
first:
name: _EmissionScaleUI
second: 1
data:
first:
name: _Lightmapping
second: 1
data:
first:
name: _SmoothnessInAlbedo
second: 0
data:
first:
name: _SmoothnessTweak1
second: 1
data:
first:
name: _SmoothnessTweak2
second: 0
data:
first:
name: _CullMode
second: 2
data:
first:
name: _PlaneReflectionBumpScale
second: .400000006
data:
first:
name: _PlaneReflectionBumpClamp
second: .0500000007
data:
first:
name: _ProbesBoost
second: 1
data:
first:
name: _Tile
second: 1
data:
first:
name: _Distortion
second: .0500000007
data:
first:
name: _F0
second: .0199999996
data:
first:
name: _ReflectionBlur
second: .0199999996
data:
first:
name: _RefractionBlur
second: .0199999996
data:
first:
name: DepthTest2
second: 0
data:
first:
name: _Wrap
second: 0
data:
first:
name: Refraction
second: 1
data:
first:
name: Dilation
second: 0
data:
first:
name: _AlbedoDesaturation
second: 0
data:
first:
name: AOsaturation
second: .5
data:
first:
name: Roughness
second: .5
data:
first:
name: _LightenShadows
second: .0599999987
m_Colors:
data:
first:
name: _EmissionColor
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _Color
second: {r: .99999994, g: .99999994, b: .99999994, a: 0}
data:
first:
name: _SpecColor
second: {r: .220588207, g: .220588207, b: .220588207, a: 1}
data:
first:
name:
second: {r: 0, g: 0, b: 0, a: 0}
data:
first:
name: _EmissionColorUI
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _EmissionColorWithMapUI
second: {r: 1, g: 1, b: 1, a: 1}
data:
first:
name: _SpecularMapColorTweak
second: {r: 1, g: 1, b: 1, a: 1}
data:
first:
name: _SmoothnessTweaks
second: {r: 1, g: 0, b: 0, a: 0}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eye_wetness.mat.meta


fileFormatVersion: 2
guid: 660c6527d2d42df49b0371c1d20e7960
NativeFormatImporter:
userData:
assetBundleName:

115
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eyes.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: challenger_eyes
m_Shader: {fileID: 4800000, guid: d386c0d8a077a82498535a9a1a03bb8d, type: 3}
m_ShaderKeywords: _DETAIL_MULX2 _LIGHTMAPPING_REALTIME _NORMALMAP _SPECGLOSSMAP
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_11a92303_cad4_4ed7_b9a2_01fe39187cce_Uniform:
m_Texture: {fileID: 2800000, guid: 38cfa8e556a37e149b3bc96a9c9dbc61, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_182faa0c_4b84_44f9_8526_6a2b5d1bfceb_Uniform:
m_Texture: {fileID: 2800000, guid: 7625758b151ed664988fcdd859df18fe, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_fa598f24_b328_4d21_a9aa_ded3cd2600dd_Uniform:
m_Texture: {fileID: 2800000, guid: 56ab0b747de8bcd408585ebf4c5e4f2a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 2800000, guid: 5794e01efe77f944dbf2985b92afa924, type: 3}
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: 2800000, guid: 6164f86085ef15b4da15538826d3c7ba, type: 3}
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}
- _EmissionTempRamp:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: e908a97418bbd80429da0e4f4fe82b0b, type: 3}
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}
- _Occlusion:
m_Texture: {fileID: 2800000, guid: a53cd3661bc370d4b8f26e23cc135050, type: 3}
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}
- _SpecGlossMap:
m_Texture: {fileID: 2800000, guid: 06839874ae17dbe4ba573070b04d84fb, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- Vector1_d429c42e_84f9_4cd9_aeff_2b5531f4227d_Uniform: 1
- _AlphaTestRef: 0.5
- _BumpScale: 1
- _CullMode: 2
- _Cutoff: 0.5
- _DetailNormalMapScale: 0.4
- _DstBlend: 0
- _EmissionScaleUI: 1
- _EmissionTemperature: 0
- _Glossiness: 0.255
- _Lightmapping: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Orthonormalize: 0
- _Parallax: 0.02
- _PlaneReflectionBumpClamp: 0.05
- _PlaneReflectionBumpScale: 0.4
- _ProbesBoost: 1
- _SmoothnessInAlbedo: 0
- _SmoothnessTweak1: 1
- _SmoothnessTweak2: 0
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- Color_14397097_d99f_4fb0_84c5_307d9e0d6ea9_Uniform: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 0.7827638, g: 0.8015093, b: 0.83823526, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorUI: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorWithMapUI: {r: 1, g: 1, b: 1, a: 1}
- _SmoothnessTweaks: {r: 1, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularMapColorTweak: {r: 1, g: 1, b: 1, a: 1}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_eyes.mat.meta


fileFormatVersion: 2
guid: b34f3e6005067dd43a59972bf58dfb25
NativeFormatImporter:
userData:
assetBundleName:

239
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_fingers.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: challenger_fingers
m_Shader: {fileID: 4800000, guid: cc77cd34d845f4a479ddec96dd10a3f9, type: 3}
m_ShaderKeywords: _DETAIL_MULX2 _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME
_NORMALMAP _SPECGLOSSMAP _UVSEC_UV1
m_LightmapFlags: 5
m_CustomRenderQueue: -1
stringTagMap: {}
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: e908a97418bbd80429da0e4f4fe82b0b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _BumpMap
second:
m_Texture: {fileID: 2800000, guid: ab505ce17bdf25b46b0b716592d1b99b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailNormalMap
second:
m_Texture: {fileID: 2800000, guid: 3bae2a5a2ca118742bc6a1e58dc62f27, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _ParallaxMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _SpecGlossMap
second:
m_Texture: {fileID: 2800000, guid: 06839874ae17dbe4ba573070b04d84fb, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailMask
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailAlbedoMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 10, y: 10}
m_Offset: {x: 0, y: 0}
data:
first:
name: _OcclusionMap
second:
m_Texture: {fileID: 2800000, guid: 70f21b489d46f664693dba36123952a6, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _MetallicGlossMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _Occlusion
second:
m_Texture: {fileID: 2800000, guid: a53cd3661bc370d4b8f26e23cc135050, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionTempRamp
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionTemperatureRamp
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
name: _SrcBlend
second: 1
data:
first:
name: _DstBlend
second: 0
data:
first:
name: _Cutoff
second: .5
data:
first:
name: _AlphaTestRef
second: .5
data:
first:
name: _Parallax
second: .0199999996
data:
first:
name: _ZWrite
second: 1
data:
first:
name: _Glossiness
second: 0
data:
first:
name: _BumpScale
second: 1
data:
first:
name: _OcclusionStrength
second: .842000008
data:
first:
name: _DetailNormalMapScale
second: .5
data:
first:
name: _UVSec
second: 0
data:
first:
name: _Mode
second: 0
data:
first:
name: _EmissionScaleUI
second: 1
data:
first:
name: _Metallic
second: 0
data:
first:
name: _Lightmapping
second: 1
data:
first:
name: _SmoothnessInAlbedo
second: 0
data:
first:
name: _SmoothnessTweak1
second: 1
data:
first:
name: _SmoothnessTweak2
second: 0
data:
first:
name: _CullMode
second: 2
data:
first:
name: _PlaneReflectionBumpScale
second: .400000006
data:
first:
name: _PlaneReflectionBumpClamp
second: .0500000007
data:
first:
name: _Orthonormalize
second: 0
data:
first:
name: _EmissionTemperature
second: 0
data:
first:
name: _ProbesBoost
second: 1
m_Colors:
data:
first:
name: _EmissionColor
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _Color
second: {r: 1, g: 1, b: 1, a: 1}
data:
first:
name: _SpecColor
second: {r: .200000003, g: .200000003, b: .200000003, a: 1}
data:
first:
name: _EmissionColorUI
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _EmissionColorWithMapUI
second: {r: .99999994, g: .858622611, b: .750003457, a: 1}
data:
first:
name: _SpecularMapColorTweak
second: {r: 1, g: .985699773, b: .977941155, a: 1}
data:
first:
name: _SpecularColor
second: {r: .200000003, g: .200000003, b: .200000003, a: 1}
data:
first:
name: _SmoothnessTweaks
second: {r: 1, g: 0, b: 0, a: 0}

8
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_fingers.mat.meta


fileFormatVersion: 2
guid: 7cb1969e058fe7647922c8f60b75db2f
timeCreated: 1430920760
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

122
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_hair.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: challenger_hair
m_Shader: {fileID: 4800000, guid: d6cf794d3b991c842ba5ee650aaf280a, type: 3}
m_ShaderKeywords: DBG_HAIR_NONE _ALPHABLEND_ON _DETAIL_MULX2 _LIGHTMAPPING_DYNAMIC_LIGHTMAPS
_NORMALMAP _UVSEC_UV1
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform:
m_Texture: {fileID: 2800000, guid: 3f262c34c1f2a5f4f8f243e5579d9525, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform:
m_Texture: {fileID: 2800000, guid: 3196c4e0db69952419630bf48b17dbee, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform:
m_Texture: {fileID: 2800000, guid: 016765d5cd020814cb1f61ddea564538, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 5b28d7ada5320cf41ac398cbc0a64475, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 2800000, guid: 5794e01efe77f944dbf2985b92afa924, type: 3}
m_Scale: {x: 1, y: 0.5}
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: 2800000, guid: c7dfbf40506c78e44b5963b2ffdf4dd0, type: 3}
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}
- _FlowMap:
m_Texture: {fileID: 2800000, guid: d4b77a55bf0f99d45af89fd601b45224, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _KKFlowMap:
m_Texture: {fileID: 2800000, guid: d4b77a55bf0f99d45af89fd601b45224, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 8d789775a75c5e94fa4007f289b19a1e, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Occlusion:
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}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform: 0
- Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform: 0
- Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform: 1
- _AlphaTestRef: 0.5
- _BumpScale: 1
- _Cull: 0
- _Cutoff: 0.5
- _DetailNormalMapScale: 0.7
- _DstBlend: 10
- _EmissionScaleUI: 1
- _Glossiness: 0.342
- _HelmetHairScale: 0.05
- _HelmetHairStrength: 0
- _KKPrimaryRootShift: 0.275
- _KKPrimarySpecularExponent: 72
- _KKReflectionGrayScale: 8
- _KKReflectionSmoothness: 0.6
- _KKSecondaryRootShift: -0.04
- _KKSecondarySpecularExponent: 48
- _Lightmapping: 1
- _Mode: 2
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessInAlbedo: 0
- _SrcBlend: 5
- _UVSec: 0
- _ZTest: 4
- _ZWrite: 0
m_Colors:
- Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform: {r: 0.31617647, g: 0.28362888,
b: 0.28362888, a: 1}
- _Color: {r: 0.8308824, g: 0.8308824, b: 0.8308824, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 0.99999994}
- _EmissionColorUI: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorWithMapUI: {r: 1, g: 1, b: 1, a: 1}
- _KKPrimarySpecularColor: {r: 0.35294116, g: 0.35294116, b: 0.35294116, a: 1}
- _KKSecondarySpecularColor: {r: 0.30147058, g: 0.30147058, b: 0.30147058, a: 1}
- _KKSpecularMixDirectFactors: {r: 0.08, g: 0.045, b: 0.033, a: 0}
- _KKSpecularMixIndirectFactors: {r: 0.65, g: 0.4, b: 0.15, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularColor: {r: 0.30147058, g: 0.29780155, b: 0.2881704, a: 1}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_hair.mat.meta


fileFormatVersion: 2
guid: 6248d5c42dd5d9b498f99b7f2c382bef
NativeFormatImporter:
userData:
assetBundleName:

117
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_head.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: challenger_head
m_Shader: {fileID: 4800000, guid: 0d4982b947b0df64d91f2b8b435889a3, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_02787904_5090_4666_a7c8_97507f02d498_Uniform:
m_Texture: {fileID: 2800000, guid: 7625758b151ed664988fcdd859df18fe, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_11a92303_cad4_4ed7_b9a2_01fe39187cce_Uniform:
m_Texture: {fileID: 2800000, guid: b77d4112820cb1e4db4ce35ac1aa3d9c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_182faa0c_4b84_44f9_8526_6a2b5d1bfceb_Uniform:
m_Texture: {fileID: 2800000, guid: 7625758b151ed664988fcdd859df18fe, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_68ab3d7b_7589_4916_9403_99039a71dca2_Uniform:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_6bba204c_5a19_44ba_9609_fc2dce308020_Uniform:
m_Texture: {fileID: 2800000, guid: 3ce2fee9b4ec4714f8b54cf287194cd7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_71f3d401_2df9_4089_9d97_b67c1150fd8f_Uniform:
m_Texture: {fileID: 2800000, guid: c38826c181bea7c43b1698d6bf8c97df, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_8d2e732f_5ca2_405f_9835_5f727d9e43e2_Uniform:
m_Texture: {fileID: 2800000, guid: 38cfa8e556a37e149b3bc96a9c9dbc61, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_fa598f24_b328_4d21_a9aa_ded3cd2600dd_Uniform:
m_Texture: {fileID: 2800000, guid: 56ab0b747de8bcd408585ebf4c5e4f2a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _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:
- Vector1_078dba25_d724_4a74_99fe_078c8dc7ebf6_Uniform: 0.2
- Vector1_1a947b3b_f0d1_47e4_923c_a34e01736c82_Uniform: 1
- Vector1_1f0b0b76_65f8_4986_8eb5_9f7ef1373895_Uniform: 1
- Vector1_66d312ef_3451_4b07_9f27_d37785582eb7_Uniform: 0.6
- Vector1_d193efae_d745_43f0_8f92_f814516da592_Uniform: 0.5
- Vector1_d429c42e_84f9_4cd9_aeff_2b5531f4227d_Uniform: 0.25
- _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_14397097_d99f_4fb0_84c5_307d9e0d6ea9_Uniform: {r: 1, g: 1, b: 1, a: 1}
- Color_c9de3ed1_a353_4808_af95_5a93b2d8ea8d_Uniform: {r: 1, g: 1, b: 1, a: 0}
- Color_edaba26b_8c62_4e4c_8e17_5626c4a01b5c_Uniform: {r: 0.88235295, g: 0.52529544,
b: 0.20112455, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

9
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_head.mat.meta


fileFormatVersion: 2
guid: d1d48ca80950ac1409339f67c37c9152
timeCreated: 1495746592
licenseType: Pro
NativeFormatImporter:
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

127
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_teeth.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: challenger_teeth
m_Shader: {fileID: 4800000, guid: 9ab5e16c2083a4fe689209a8c1ae425e, type: 3}
m_ShaderKeywords: _DETAIL_MULX2 _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME
_NORMALMAP _UVSEC_UV1
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture_11a92303_cad4_4ed7_b9a2_01fe39187cce_Uniform:
m_Texture: {fileID: 2800000, guid: 38cfa8e556a37e149b3bc96a9c9dbc61, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_182faa0c_4b84_44f9_8526_6a2b5d1bfceb_Uniform:
m_Texture: {fileID: 2800000, guid: 3f262c34c1f2a5f4f8f243e5579d9525, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_6bba204c_5a19_44ba_9609_fc2dce308020_Uniform:
m_Texture: {fileID: 2800000, guid: 3ce2fee9b4ec4714f8b54cf287194cd7, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_fa598f24_b328_4d21_a9aa_ded3cd2600dd_Uniform:
m_Texture: {fileID: 2800000, guid: c38826c181bea7c43b1698d6bf8c97df, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: ab505ce17bdf25b46b0b716592d1b99b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 2800000, guid: 5794e01efe77f944dbf2985b92afa924, type: 3}
m_Scale: {x: 19, y: -0.81}
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: 2800000, guid: 530f1bcdd1a12c745998eab674699d24, type: 3}
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}
- _EmissionTempRamp:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionTemperatureRamp:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: e908a97418bbd80429da0e4f4fe82b0b, type: 3}
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}
- _Occlusion:
m_Texture: {fileID: 2800000, guid: a53cd3661bc370d4b8f26e23cc135050, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 2800000, guid: 70f21b489d46f664693dba36123952a6, type: 3}
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}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- Vector1_078dba25_d724_4a74_99fe_078c8dc7ebf6_Uniform: 0.5
- Vector1_66d312ef_3451_4b07_9f27_d37785582eb7_Uniform: 1
- Vector1_d429c42e_84f9_4cd9_aeff_2b5531f4227d_Uniform: 1
- _AlphaTestRef: 0.5
- _BumpScale: 1
- _CullMode: 2
- _Cutoff: 0.5
- _DetailNormalMapScale: 0.3
- _DstBlend: 0
- _EmissionScaleUI: 0
- _EmissionTemperature: 0
- _Glossiness: 0.599
- _Lightmapping: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 0.8
- _Orthonormalize: 0
- _Parallax: 0.02
- _PlaneReflectionBumpClamp: 0.05
- _PlaneReflectionBumpScale: 0.4
- _SmoothnessInAlbedo: 0
- _SmoothnessTweak1: 1
- _SmoothnessTweak2: 0
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- Color_14397097_d99f_4fb0_84c5_307d9e0d6ea9_Uniform: {r: 1, g: 1, b: 1, a: 0}
- Color_edaba26b_8c62_4e4c_8e17_5626c4a01b5c_Uniform: {r: 0.58088225, g: 0.33910328,
b: 0.11959336, a: 0}
- _Color: {r: 0.88978046, g: 0.89705884, b: 0.76513845, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColorUI: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColorWithMapUI: {r: 0.99999994, g: 0.8586226, b: 0.75000346, a: 1}
- _SmoothnessTweaks: {r: 1, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.1544118, g: 0.1544118, b: 0.1544118, a: 1}
- _SpecularColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _SpecularMapColorTweak: {r: 1, g: 1, b: 1, a: 1}

5
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/Materials/challenger_teeth.mat.meta


fileFormatVersion: 2
guid: 86b4a36f979f49343a52a421b753ad55
NativeFormatImporter:
userData:
assetBundleName:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_1.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_1.png.meta


fileFormatVersion: 2
guid: b3d266fd85b1a1543a2ba6a27abbf905
timeCreated: 1495745579
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_2_1.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_AO_2_1.png.meta


fileFormatVersion: 2
guid: 5432e989083065e408cd84871a84df9e
timeCreated: 1495745565
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

84
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_NM_1.png.meta


fileFormatVersion: 2
guid: 8a79f067c75365a4d93dfdaacfb9dc25
timeCreated: 1495745572
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_NM_2_1.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_NM_2_1.png.meta


fileFormatVersion: 2
guid: dea611536adaf2f4a99a2c2b2bd52095
timeCreated: 1495745589
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_1.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_1.png.meta


fileFormatVersion: 2
guid: 8e93a12d4c162ce4488017d7c43a860f
timeCreated: 1495745573
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_2_1.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_albedo_2_1.png.meta


fileFormatVersion: 2
guid: 934df7ffc390fad4fbdc9b17f74d7d49
timeCreated: 1495745574
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

407
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_albedo_white.tga
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_albedo_white.tga.meta


fileFormatVersion: 2
guid: 6500e60964980894786107d201e2a7f7
timeCreated: 1495745568
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

742
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_nm.png

之前 之后
宽度: 512  |  高度: 512  |  大小: 122 KiB

84
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_nm.png.meta


fileFormatVersion: 2
guid: 5ea5965e46e2ba745b364d724b7991a2
timeCreated: 1495745567
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_refl.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_beard_refl.png.meta


fileFormatVersion: 2
guid: 016765d5cd020814cb1f61ddea564538
timeCreated: 1495745555
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_diff_white.tga
文件差异内容过多而无法显示
查看文件

84
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_diff_white.tga.meta


fileFormatVersion: 2
guid: 3f262c34c1f2a5f4f8f243e5579d9525
timeCreated: 1495745563
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_flow_t2_3.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_flow_t2_3.png.meta


fileFormatVersion: 2
guid: 3292972a78a46ed4e85adee98ec5c61e
timeCreated: 1495745561
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_nm.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_hair_nm.png.meta


fileFormatVersion: 2
guid: 3196c4e0db69952419630bf48b17dbee
timeCreated: 1495745561
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

84
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_NM_1.png.meta


fileFormatVersion: 2
guid: 56ab0b747de8bcd408585ebf4c5e4f2a
timeCreated: 1495745567
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_SG2.tga.meta


fileFormatVersion: 2
guid: 38cfa8e556a37e149b3bc96a9c9dbc61
timeCreated: 1495745562
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_albedo2.png.meta


fileFormatVersion: 2
guid: 7625758b151ed664988fcdd859df18fe
timeCreated: 1495745570
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

1001
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_base_AO.png
文件差异内容过多而无法显示
查看文件

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_head_base_AO.png.meta


fileFormatVersion: 2
guid: eb083b9297f924b47920129c1c80cb56
timeCreated: 1495745590
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_refl_1.tga.meta


fileFormatVersion: 2
guid: a6363ba401c18bb41ac19249e97cf0e9
timeCreated: 1495745789
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

75
MaterialGraphProject/Assets/Matt/CharacterRendering/Challenger/challenger_refl_2_1.tga.meta


fileFormatVersion: 2
guid: d95db1982bdf2a5409da69fa4b6c0058
timeCreated: 1495745790
licenseType: Pro
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

部分文件因为文件数量过多而无法显示

正在加载...
取消
保存