浏览代码

Added TangentToWorld and Eye master

/main
Matt Dean 7 年前
当前提交
bce48128
共有 24 个文件被更改,包括 3711 次插入25 次删除
  1. 40
      MaterialGraphProject/Assets/Matt/AbstractAdvancedMasterNode.cs
  2. 2
      MaterialGraphProject/Assets/Matt/AnisotropicMaster.ShaderGraph
  3. 14
      MaterialGraphProject/Assets/Matt/AnisotropicMetallicMasterNode.cs
  4. 2
      MaterialGraphProject/Assets/Matt/ClothMaster.ShaderGraph
  5. 11
      MaterialGraphProject/Assets/Matt/ClothMasterNode.cs
  6. 10
      MaterialGraphProject/Assets/Matt/SubsurfaceMetallicMasterNode.cs
  7. 9
      MaterialGraphProject/Assets/Matt/Eye.meta
  8. 1
      MaterialGraphProject/Assets/Matt/EyeMaster.ShaderGraph
  9. 9
      MaterialGraphProject/Assets/Matt/EyeMaster.ShaderGraph.meta
  10. 99
      MaterialGraphProject/Assets/Matt/EyeMasterNode.cs
  11. 12
      MaterialGraphProject/Assets/Matt/EyeMasterNode.cs.meta
  12. 69
      MaterialGraphProject/Assets/Matt/TangentToWorldNode.cs
  13. 8
      MaterialGraphProject/Assets/Matt/TangentToWorldNode.cs.meta
  14. 80
      MaterialGraphProject/Assets/Matt/Eye/DispMap.png
  15. 75
      MaterialGraphProject/Assets/Matt/Eye/DispMap.png.meta
  16. 615
      MaterialGraphProject/Assets/Matt/Eye/IrisTexture.png
  17. 75
      MaterialGraphProject/Assets/Matt/Eye/IrisTexture.png.meta
  18. 550
      MaterialGraphProject/Assets/Matt/Eye/Normal.png
  19. 75
      MaterialGraphProject/Assets/Matt/Eye/Normal.png.meta
  20. 898
      MaterialGraphProject/Assets/Matt/Eye/ScleraMap.png
  21. 75
      MaterialGraphProject/Assets/Matt/Eye/ScleraMap.png.meta
  22. 932
      MaterialGraphProject/Assets/Matt/Eye/WetNormal.png
  23. 75
      MaterialGraphProject/Assets/Matt/Eye/WetNormal.png.meta

40
MaterialGraphProject/Assets/Matt/AbstractAdvancedMasterNode.cs


public const int OcclusionSlotId = 5;
public const int AlphaSlotId = 6;
public const string AnisotropySlotName = "Anisotropy";
public const int AnisotropySlotId = 7;
public const int TangentSlotId = 8;
public const int TangentSlotId = 7;
[SerializeField]
private SurfaceMaterialOptions m_MaterialOptions = new SurfaceMaterialOptions();

public abstract string GetSurfaceOutputName();
public abstract string GetLightFunction();
//Deal with custom data packing
// Check for whether tangents are needed in the BRDF
public virtual bool RequireTangentCalculation()
{
return false;
}
public override string GetSubShader(GenerationMode mode, PropertyGenerator shaderPropertiesVisitor)
{

shaderBody.AddShaderChunk("o." + slot.shaderOutputName + " += 1e-6;", true);
}
// If tangents are needed for the BRDF
var edges = owner.GetEdges(slot.slotReference);
if (edges.Any())
{
shaderBody.AddShaderChunk("float3x3 worldToTangent;", false);
shaderBody.AddShaderChunk("worldToTangent[0] = float3(1, 0, 0);", false);
shaderBody.AddShaderChunk("worldToTangent[1] = float3(0, 1, 0);", false);
shaderBody.AddShaderChunk("worldToTangent[2] = float3(0, 0, 1);", false);
shaderBody.AddShaderChunk("float3 tangentTWS = mul(o." + slot.shaderOutputName + ", worldToTangent);", false);
shaderBody.AddShaderChunk("o.WorldVectors = float3x3(tangentTWS, " + ShaderGeneratorNames.WorldSpaceBitangent + ", " + ShaderGeneratorNames.WorldSpaceNormal + ");", false);
}
else
if (RequireTangentCalculation())
shaderBody.AddShaderChunk("o.WorldVectors = float3x3(" + ShaderGeneratorNames.WorldSpaceTangent + ", " + ShaderGeneratorNames.WorldSpaceBitangent + ", " + ShaderGeneratorNames.WorldSpaceNormal + ");", false);
var edges = owner.GetEdges(slot.slotReference);
if (edges.Any())
{
shaderBody.AddShaderChunk("float3x3 worldToTangent;", false);
shaderBody.AddShaderChunk("worldToTangent[0] = float3(1, 0, 0);", false);
shaderBody.AddShaderChunk("worldToTangent[1] = float3(0, 1, 0);", false);
shaderBody.AddShaderChunk("worldToTangent[2] = float3(0, 0, 1);", false);
shaderBody.AddShaderChunk("float3 tangentTWS = mul(o." + slot.shaderOutputName + ", worldToTangent);", false);
shaderBody.AddShaderChunk("o.WorldVectors = float3x3(tangentTWS, " + ShaderGeneratorNames.WorldSpaceBitangent + ", " + ShaderGeneratorNames.WorldSpaceNormal + ");", false);
}
else
{
shaderBody.AddShaderChunk("o.WorldVectors = float3x3(" + ShaderGeneratorNames.WorldSpaceTangent + ", " + ShaderGeneratorNames.WorldSpaceBitangent + ", " + ShaderGeneratorNames.WorldSpaceNormal + ");", false);
}
}
}
}

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

14
MaterialGraphProject/Assets/Matt/AnisotropicMetallicMasterNode.cs


public const string MetallicSlotName = "Metallic";
public const int MetallicSlotId = 2;
public const string AnisotropySlotName = "Anisotropy";
public const int AnisotropySlotId = 8;
public const string LightFunctionName = "Advanced";
public const string SurfaceOutputStructureName = "SurfaceOutputAdvanced";

return "SHADINGMODELID_STANDARD";
}
public override bool RequireTangentCalculation()
{
return true;
}
public override int[] GetCustomDataSlots()
{
return new int[] { };

AddSlot(new MaterialSlot(MetallicSlotId, MetallicSlotName, MetallicSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(SmoothnessSlotId, SmoothnessSlotName, SmoothnessSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(OcclusionSlotId, OcclusionSlotName, OcclusionSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(AnisotropySlotId, AnisotropySlotName, AnisotropySlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(AnisotropySlotId, AnisotropySlotName, AnisotropySlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(AlphaSlotId, AlphaSlotName, AlphaSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
// clear out slot names that do not match the slots

SmoothnessSlotId,
OcclusionSlotId,
AlphaSlotId,
AnisotropySlotId,
TangentSlotId
TangentSlotId,
AnisotropySlotId
});
}

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

11
MaterialGraphProject/Assets/Matt/ClothMasterNode.cs


//public const string MetallicSlotName = "Metallic";
//public const int MetallicSlotId = 2;
public const string AnisotropySlotName = "Anisotropy";
public const int AnisotropySlotId = 8;
public const string ClothFactorSlotName = "ClothFactor";
public const int ClothFactorSlotId = 10;

return "SHADINGMODELID_CLOTH";
}
public override bool RequireTangentCalculation()
{
return true;
}
public override int[] GetCustomDataSlots()
{
return new int[] { 9, 10 };

//AddSlot(new MaterialSlot(MetallicSlotId, MetallicSlotName, MetallicSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(SmoothnessSlotId, SmoothnessSlotName, SmoothnessSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(OcclusionSlotId, OcclusionSlotName, OcclusionSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(AnisotropySlotId, AnisotropySlotName, AnisotropySlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(TangentSlotId, TangentSlotName, TangentSlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));
AddSlot(new MaterialSlot(AnisotropySlotId, AnisotropySlotName, AnisotropySlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(FuzzSlotId, FuzzSlotName, FuzzSlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));

SmoothnessSlotId,
OcclusionSlotId,
AlphaSlotId,
AnisotropySlotId,
AnisotropySlotId,
FuzzSlotId,
ClothFactorSlotId
});

10
MaterialGraphProject/Assets/Matt/SubsurfaceMetallicMasterNode.cs


public const string MetallicSlotName = "Metallic";
public const int MetallicSlotId = 2;
public const string AnisotropySlotName = "Anisotropy";
public const int AnisotropySlotId = 8;
public const string TranslucencySlotName = "Translucency";
public const int TranslucencySlotId = 9;

return "SHADINGMODELID_SUBSURFACE";
}
public override bool RequireTangentCalculation()
{
return true;
}
public override int[] GetCustomDataSlots()
{
return new int[] { 9 };

AddSlot(new MaterialSlot(MetallicSlotId, MetallicSlotName, MetallicSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(SmoothnessSlotId, SmoothnessSlotName, SmoothnessSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(OcclusionSlotId, OcclusionSlotName, OcclusionSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(AnisotropySlotId, AnisotropySlotName, AnisotropySlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(TangentSlotId, TangentSlotName, TangentSlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));
AddSlot(new MaterialSlot(AnisotropySlotId, AnisotropySlotName, AnisotropySlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(TranslucencySlotId, TranslucencySlotName, TranslucencySlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));

SmoothnessSlotId,
OcclusionSlotId,
AlphaSlotId,
AnisotropySlotId,
AnisotropySlotId,
TranslucencySlotId
});
}

9
MaterialGraphProject/Assets/Matt/Eye.meta


fileFormatVersion: 2
guid: 1150d4b56951dcb4ca61d22f832b4837
folderAsset: yes
timeCreated: 1495637066
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

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

9
MaterialGraphProject/Assets/Matt/EyeMaster.ShaderGraph.meta


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

99
MaterialGraphProject/Assets/Matt/EyeMasterNode.cs


using System;
using UnityEngine.Graphing;
namespace UnityEngine.MaterialGraph
{
[Serializable]
[Title("Master/Eye")]
public class EyeMasterNode : AbstractAdvancedMasterNode
{
//public const string MetallicSlotName = "Metallic";
//public const int MetallicSlotId = 2;
public const string LightFunctionName = "Advanced";
public const string SurfaceOutputStructureName = "SurfaceOutputAdvanced";
public const string IrisMaskSlotName = "IrisMask";
public const int IrisMaskSlotId = 8;
public const string IrisDistanceSlotName = "IrisDistance";
public const int IrisDistanceSlotId = 9;
public EyeMasterNode()
{
name = "EyeMaster";
UpdateNodeAfterDeserialization();
}
public override string GetMaterialID()
{
return "SHADINGMODELID_EYE";
}
public override int[] GetCustomDataSlots()
{
return new int[] { 8, 9 };
}
public override string[] GetCustomData()
{
string tangentInput = GetVariableNameForSlotAtId(7);
if (tangentInput == "")
tangentInput = "float2(1,0)";
else
tangentInput = tangentInput + ".rg";
string irisMaskInput = GetVariableNameForSlotAtId(8);
if (irisMaskInput == "")
irisMaskInput = "0";
else
irisMaskInput = irisMaskInput + ".r";
string irisDistanceInput = GetVariableNameForSlotAtId(9);
if (irisDistanceInput == "")
irisDistanceInput = "0";
else
irisDistanceInput = irisDistanceInput + ".r";
return new string[] { "o.CustomData = float4(" + tangentInput + ", " + irisMaskInput + ", " + irisDistanceInput + ");" };
}
public sealed override void UpdateNodeAfterDeserialization()
{
AddSlot(new MaterialSlot(AlbedoSlotId, AlbedoSlotName, AlbedoSlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));
AddSlot(new MaterialSlot(NormalSlotId, NormalSlotName, NormalSlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));
AddSlot(new MaterialSlot(EmissionSlotId, EmissionSlotName, EmissionSlotName, SlotType.Input, SlotValueType.Vector3, Vector4.zero));
//AddSlot(new MaterialSlot(MetallicSlotId, MetallicSlotName, MetallicSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(SmoothnessSlotId, SmoothnessSlotName, SmoothnessSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(OcclusionSlotId, OcclusionSlotName, OcclusionSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(TangentSlotId, TangentSlotName, TangentSlotName, SlotType.Input, SlotValueType.Vector2, Vector4.zero));
AddSlot(new MaterialSlot(IrisMaskSlotId, IrisMaskSlotName, IrisMaskSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(IrisDistanceSlotId, IrisDistanceSlotName, IrisDistanceSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
AddSlot(new MaterialSlot(AlphaSlotId, AlphaSlotName, AlphaSlotName, SlotType.Input, SlotValueType.Vector1, Vector4.zero));
// clear out slot names that do not match the slots
// we support
RemoveSlotsNameNotMatching(
new[]
{
AlbedoSlotId,
NormalSlotId,
EmissionSlotId,
//MetallicSlotId,
SmoothnessSlotId,
OcclusionSlotId,
AlphaSlotId,
TangentSlotId,
IrisMaskSlotId,
IrisDistanceSlotId
});
}
public override string GetSurfaceOutputName()
{
return SurfaceOutputStructureName;
}
public override string GetLightFunction()
{
return LightFunctionName;
}
}
}

12
MaterialGraphProject/Assets/Matt/EyeMasterNode.cs.meta


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

69
MaterialGraphProject/Assets/Matt/TangentToWorldNode.cs


using UnityEngine.Graphing;
namespace UnityEngine.MaterialGraph
{
[Title("Math/Vector/TangentToWorld")]
public class TangentToWorldNode : Function1Input, IGeneratesFunction, IMayRequireNormal, IMayRequireTangent, IMayRequireBitangent
{
public TangentToWorldNode()
{
name = "TangentToWorld";
}
protected override string GetFunctionName()
{
return "unity_tangenttoworld_" + precision;
}
protected override MaterialSlot GetInputSlot()
{
return new MaterialSlot(InputSlotId, GetInputSlotName(), kInputSlotShaderName, SlotType.Input, SlotValueType.Vector3, Vector4.zero);
}
protected override MaterialSlot GetOutputSlot()
{
return new MaterialSlot(OutputSlotId, GetOutputSlotName(), kOutputSlotShaderName, SlotType.Output, SlotValueType.Vector3, Vector4.zero);
}
protected override string GetFunctionPrototype(string argName)
{
return "inline " + precision + outputDimension + " " + GetFunctionName() + " ("
+ precision + inputDimension + " " + argName + ", float3 tangent, float3 bitangent, float3 normal )";
}
public void GenerateNodeFunction(ShaderGenerator visitor, GenerationMode generationMode)
{
var outputString = new ShaderGenerator();
outputString.AddShaderChunk(GetFunctionPrototype("arg1"), false);
outputString.AddShaderChunk("{", false);
outputString.Indent();
//outputString.AddShaderChunk("float3x3 tangentToWorld = transpose(float3x3(" + ShaderGeneratorNames.WorldSpaceTangent + ", " + ShaderGeneratorNames.WorldSpaceBitangent + ", " + ShaderGeneratorNames.WorldSpaceNormal + "));", false);
outputString.AddShaderChunk("float3x3 tangentToWorld = transpose(float3x3(tangent, bitangent, normal));", false);
outputString.AddShaderChunk("return saturate(mul(tangentToWorld, normalize(arg1)));", false);
outputString.Deindent();
outputString.AddShaderChunk("}", false);
visitor.AddShaderChunk(outputString.GetShaderString(0), true);
}
protected override string GetFunctionCallBody(string inputValue)
{
return GetFunctionName() + " (" + inputValue + ", "+ShaderGeneratorNames.WorldSpaceTangent + ", " + ShaderGeneratorNames.WorldSpaceBitangent + ", " + ShaderGeneratorNames.WorldSpaceNormal +")";
}
public bool RequiresNormal()
{
return true;
}
public bool RequiresTangent()
{
return true;
}
public bool RequiresBitangent()
{
return true;
}
}
}

8
MaterialGraphProject/Assets/Matt/TangentToWorldNode.cs.meta


fileFormatVersion: 2
guid: e4bc0eb2ab0981b448548e5714f19f78
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:

80
MaterialGraphProject/Assets/Matt/Eye/DispMap.png

之前 之后
宽度: 459  |  高度: 459  |  大小: 22 KiB

75
MaterialGraphProject/Assets/Matt/Eye/DispMap.png.meta


fileFormatVersion: 2
guid: f147ecc73752dd84c862347627c2506c
timeCreated: 1495637066
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:

615
MaterialGraphProject/Assets/Matt/Eye/IrisTexture.png

之前 之后
宽度: 408  |  高度: 408  |  大小: 194 KiB

75
MaterialGraphProject/Assets/Matt/Eye/IrisTexture.png.meta


fileFormatVersion: 2
guid: 6ff1e57e8df9d2948bb6d703d02af730
timeCreated: 1495637066
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:

550
MaterialGraphProject/Assets/Matt/Eye/Normal.png

之前 之后
宽度: 511  |  高度: 511  |  大小: 168 KiB

75
MaterialGraphProject/Assets/Matt/Eye/Normal.png.meta


fileFormatVersion: 2
guid: c8b9bf23e571a674b9bad3ba063fafea
timeCreated: 1495637066
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:

898
MaterialGraphProject/Assets/Matt/Eye/ScleraMap.png

之前 之后
宽度: 408  |  高度: 408  |  大小: 206 KiB

75
MaterialGraphProject/Assets/Matt/Eye/ScleraMap.png.meta


fileFormatVersion: 2
guid: 153d265862621434696692a6c4c4400c
timeCreated: 1495637066
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:

932
MaterialGraphProject/Assets/Matt/Eye/WetNormal.png

之前 之后
宽度: 418  |  高度: 418  |  大小: 184 KiB

75
MaterialGraphProject/Assets/Matt/Eye/WetNormal.png.meta


fileFormatVersion: 2
guid: 67f43d22ab857a0429a4ce5bda45a211
timeCreated: 1495637066
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:
正在加载...
取消
保存