Sebastien Lagarde
7 年前
当前提交
a5003db5
共有 123 个文件被更改,包括 9653 次插入 和 4753 次删除
-
999ImageTemplates/HDRenderPipeline/Scenes/2xxx_Lighting/2001_Dynamic_Directional.unity.png
-
999ImageTemplates/HDRenderPipeline/Scenes/2xxx_Lighting/2003_Light_Parameters.unity.png
-
2ScriptableRenderPipeline/Core/CoreRP/MousePositionDebug.cs
-
10ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/API/GLCore.hlsl
-
10ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/API/GLES3.hlsl
-
2ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/API/PSSL.hlsl
-
2ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Color.hlsl
-
34ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Common.hlsl
-
14ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/ImageBasedLighting.hlsl
-
39ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Packing.hlsl
-
11ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Shadow/ShadowAlgorithms.hlsl
-
245ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Shadow/ShadowSampling.hlsl
-
13ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/UnityInstancing.hlsl
-
2ScriptableRenderPipeline/Core/package.json
-
66ScriptableRenderPipeline/HDRenderPipeline/HDRP/Camera/HDAdditionalCameraData.cs
-
9ScriptableRenderPipeline/HDRenderPipeline/HDRP/Debug/DebugDisplay.hlsl
-
4ScriptableRenderPipeline/HDRenderPipeline/HDRP/Debug/DebugViewTiles.shader
-
1ScriptableRenderPipeline/HDRenderPipeline/HDRP/Debug/MaterialDebug.cs
-
3ScriptableRenderPipeline/HDRenderPipeline/HDRP/Debug/MaterialDebug.cs.hlsl
-
2ScriptableRenderPipeline/HDRenderPipeline/HDRP/Editor/Camera/HDCameraEditor.Handlers.cs
-
3ScriptableRenderPipeline/HDRenderPipeline/HDRP/Editor/Camera/HDCameraEditor.cs
-
2ScriptableRenderPipeline/HDRenderPipeline/HDRP/Editor/Material/DiffusionProfile/DiffusionProfileSettingsEditor.cs
-
3ScriptableRenderPipeline/HDRenderPipeline/HDRP/Editor/RenderLoopSettings/RenderPipelineSettingsUI.cs
-
2ScriptableRenderPipeline/HDRenderPipeline/HDRP/Editor/RenderLoopSettings/SerializedRenderPipelineSettings.cs
-
30ScriptableRenderPipeline/HDRenderPipeline/HDRP/HDRenderPipeline.cs
-
29ScriptableRenderPipeline/HDRenderPipeline/HDRP/HDRenderPipelineAsset.cs
-
30ScriptableRenderPipeline/HDRenderPipeline/HDRP/Material/LayeredLit/LayeredLitData.hlsl
-
2ScriptableRenderPipeline/HDRenderPipeline/HDRP/Material/Lit/Lit.cs
-
2ScriptableRenderPipeline/HDRenderPipeline/HDRP/Material/Lit/Lit.cs.hlsl
-
330ScriptableRenderPipeline/HDRenderPipeline/HDRP/Material/Lit/Lit.hlsl
-
12ScriptableRenderPipeline/HDRenderPipeline/HDRP/Material/Lit/LitDataIndividualLayer.hlsl
-
6ScriptableRenderPipeline/HDRenderPipeline/HDRP/Material/SubsurfaceScattering/SubsurfaceScattering.hlsl
-
4ScriptableRenderPipeline/HDRenderPipeline/HDRP/RenderPipeline/FrameSettings.cs
-
1ScriptableRenderPipeline/HDRenderPipeline/HDRP/RenderPipeline/RenderPipelineSettings.cs
-
2ScriptableRenderPipeline/HDRenderPipeline/HDRP/ShaderPass/ShaderPassForward.hlsl
-
3ScriptableRenderPipeline/HDRenderPipeline/HDRP/ShaderPass/ShaderPassForwardUnlit.hlsl
-
7ScriptableRenderPipeline/HDRenderPipeline/HDRP/Sky/ProceduralSky/Resources/ProceduralSky.shader
-
4ScriptableRenderPipeline/HDRenderPipeline/package.json
-
110ScriptableRenderPipeline/LightweightPipeline/LWRP/Data/LightweightPipelineAsset.cs
-
13ScriptableRenderPipeline/LightweightPipeline/LWRP/LightweightConstantBuffer.cs
-
124ScriptableRenderPipeline/LightweightPipeline/LWRP/LightweightPipeline.cs
-
11ScriptableRenderPipeline/LightweightPipeline/LWRP/ShaderLibrary/Input.hlsl
-
4ScriptableRenderPipeline/LightweightPipeline/LWRP/ShaderLibrary/InputSurface.hlsl
-
118ScriptableRenderPipeline/LightweightPipeline/LWRP/ShaderLibrary/Lighting.hlsl
-
82ScriptableRenderPipeline/LightweightPipeline/LWRP/ShaderLibrary/LightweightPassLit.hlsl
-
22ScriptableRenderPipeline/LightweightPipeline/LWRP/ShaderLibrary/Particles.hlsl
-
80ScriptableRenderPipeline/LightweightPipeline/LWRP/ShaderLibrary/Shadows.hlsl
-
1ScriptableRenderPipeline/LightweightPipeline/LWRP/Shaders/LightweightStandard.shader
-
18ScriptableRenderPipeline/LightweightPipeline/LWRP/Shaders/LightweightStandardParticles.shader
-
60ScriptableRenderPipeline/LightweightPipeline/LWRP/Shaders/LightweightStandardTerrain.shader
-
5ScriptableRenderPipeline/LightweightPipeline/LWRP/Shaders/LightweightStandardUnlit.shader
-
4ScriptableRenderPipeline/LightweightPipeline/package.json
-
2ScriptableRenderPipeline/master-package.json
-
1Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/Sphere/Sphere.fbx.meta
-
3Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/HDRP_GraphicTests_Asset.asset
-
3Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/HDRP_Test_Camera.prefab
-
1Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Assets/CommonAssets/Cornell Box.fbx.meta
-
4Tests/GraphicsTests/RenderPipeline/LightweightPipeline/LightweightPipelineAsset.asset
-
3Tests/GraphicsTests/RenderPipeline/LightweightPipeline/LightweightPipelineAsset.asset.meta
-
65Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/LightingData.asset
-
2Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/LightingData.asset.meta
-
999Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-0_comp_dir.png
-
1001Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-0_comp_light.exr
-
999Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-1_comp_dir.png
-
1001Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-1_comp_light.exr
-
1Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Models/Environment/Floor.fbx.meta
-
1001Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/ReflectionProbe-0.exr
-
1001ImageTemplates/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.unity.png
-
83ImageTemplates/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.unity.png.meta
-
244ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Shadow/ShadowSamplingTent.hlsl
-
9ScriptableRenderPipeline/Core/CoreRP/ShaderLibrary/Shadow/ShadowSamplingTent.hlsl.meta
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf.meta
-
85Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/Head.prefab
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/Head.prefab.meta
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/PerryHead.meta
-
72Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/HDRP_Black_Sky_Shadow500.prefab
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/HDRP_Black_Sky_Shadow500.prefab.meta
-
179Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/Tests_Diffusion_Profile_Settings.asset
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/Tests_Diffusion_Profile_Settings.asset.meta
-
1Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/Textures/LayerMask.tga
-
94Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/Textures/LayerMask.tga.meta
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.meta
-
1001Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.unity
-
7Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.unity.meta
-
249Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf.FBX
-
92Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf.FBX.meta
-
211Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf.mat
-
8Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf.mat.meta
-
83Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf.tga.meta
-
83Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf_Masks.tga.meta
-
83Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf_Normal.tga.meta
-
1001Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf_Thickness.png
-
94Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/GroundLeaf/GroundLeaf_Thickness.png.meta
-
1001Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/CommonAssets/3DObjects/PerryHead/Head.fbx
999
ImageTemplates/HDRenderPipeline/Scenes/2xxx_Lighting/2001_Dynamic_Directional.unity.png
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
999
ImageTemplates/HDRenderPipeline/Scenes/2xxx_Lighting/2003_Light_Parameters.unity.png
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
{ |
|||
"name": "com.unity.render-pipelines.core", |
|||
"description": "Core library for Unity render pipelines.", |
|||
"version": "0.1.24", |
|||
"version": "0.1.25", |
|||
"unity": "2018.1", |
|||
"dependencies": { |
|||
"com.unity.postprocessing": "0.1.7" |
|
|||
{ |
|||
"name": "com.unity.render-pipelines.high-definition", |
|||
"description": "HD Render Pipeline for Unity.", |
|||
"version": "0.1.24", |
|||
"version": "0.1.25", |
|||
"com.unity.render-pipelines.core": "0.1.24" |
|||
"com.unity.render-pipelines.core": "0.1.25" |
|||
} |
|||
} |
|
|||
{ |
|||
"name": "com.unity.render-pipelines.lightweight", |
|||
"description": "Lightweight Render Pipeline for Unity.", |
|||
"version": "0.1.24", |
|||
"version": "0.1.25", |
|||
"com.unity.render-pipelines.core": "0.1.24" |
|||
"com.unity.render-pipelines.core": "0.1.25" |
|||
} |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: e6987eea1dd29074597d54ed91a54a26 |
|||
timeCreated: 1489068733 |
|||
licenseType: Pro |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
65
Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/LightingData.asset
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
999
Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-0_comp_dir.png
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
1001
Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-0_comp_light.exr
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
999
Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-1_comp_dir.png
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
1001
Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/Lightmap-1_comp_light.exr
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
1001
Tests/GraphicsTests/RenderPipeline/LightweightPipeline/Scenes/040_UpgradeScene/ReflectionProbe-0.exr
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
1001
ImageTemplates/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.unity.png
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: 89e02855449d87a4fab88a0119af55e5 |
|||
TextureImporter: |
|||
fileIDToRecycleName: {} |
|||
externalObjects: {} |
|||
serializedVersion: 5 |
|||
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 |
|||
singleChannelComponent: 0 |
|||
maxTextureSizeSet: 0 |
|||
compressionQualitySet: 0 |
|||
textureFormatSet: 0 |
|||
platformSettings: |
|||
- serializedVersion: 2 |
|||
buildTarget: DefaultTexturePlatform |
|||
maxTextureSize: 2048 |
|||
resizeAlgorithm: 0 |
|||
textureFormat: -1 |
|||
textureCompression: 0 |
|||
compressionQuality: 50 |
|||
crunchedCompression: 0 |
|||
allowsAlphaSplitting: 0 |
|||
overridden: 0 |
|||
androidETC2FallbackOverride: 0 |
|||
spriteSheet: |
|||
serializedVersion: 2 |
|||
sprites: [] |
|||
outline: [] |
|||
physicsShape: [] |
|||
bones: [] |
|||
spriteID: |
|||
vertices: [] |
|||
indices: |
|||
edges: [] |
|||
weights: [] |
|||
spritePackingTag: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
// ------------------------------------------------------------------ |
|||
// PCF Filtering Tent Functions |
|||
// ------------------------------------------------------------------ |
|||
|
|||
// Assuming a isoceles right angled triangle of height "triangleHeight" (as drawn below). |
|||
// This function return the area of the triangle above the first texel. |
|||
// |
|||
// |\ <-- 45 degree slop isosceles right angled triangle |
|||
// | \ |
|||
// ---- <-- length of this side is "triangleHeight" |
|||
// _ _ _ _ <-- texels |
|||
real SampleShadow_GetTriangleTexelArea(real triangleHeight) |
|||
{ |
|||
return triangleHeight - 0.5; |
|||
} |
|||
|
|||
// Assuming a isoceles triangle of 1.5 texels height and 3 texels wide lying on 4 texels. |
|||
// This function return the area of the triangle above each of those texels. |
|||
// | <-- offset from -0.5 to 0.5, 0 meaning triangle is exactly in the center |
|||
// / \ <-- 45 degree slop isosceles triangle (ie tent projected in 2D) |
|||
// / \ |
|||
// _ _ _ _ <-- texels |
|||
// X Y Z W <-- result indices (in computedArea.xyzw and computedAreaUncut.xyzw) |
|||
void SampleShadow_GetTexelAreas_Tent_3x3(real offset, out real4 computedArea, out real4 computedAreaUncut) |
|||
{ |
|||
// Compute the exterior areas |
|||
real offset01SquaredHalved = (offset + 0.5) * (offset + 0.5) * 0.5; |
|||
computedAreaUncut.x = computedArea.x = offset01SquaredHalved - offset; |
|||
computedAreaUncut.w = computedArea.w = offset01SquaredHalved; |
|||
|
|||
// Compute the middle areas |
|||
// For Y : We find the area in Y of as if the left section of the isoceles triangle would |
|||
// intersect the axis between Y and Z (ie where offset = 0). |
|||
computedAreaUncut.y = SampleShadow_GetTriangleTexelArea(1.5 - offset); |
|||
// This area is superior to the one we are looking for if (offset < 0) thus we need to |
|||
// subtract the area of the triangle defined by (0,1.5-offset), (0,1.5+offset), (-offset,1.5). |
|||
real clampedOffsetLeft = min(offset,0); |
|||
real areaOfSmallLeftTriangle = clampedOffsetLeft * clampedOffsetLeft; |
|||
computedArea.y = computedAreaUncut.y - areaOfSmallLeftTriangle; |
|||
|
|||
// We do the same for the Z but with the right part of the isoceles triangle |
|||
computedAreaUncut.z = SampleShadow_GetTriangleTexelArea(1.5 + offset); |
|||
real clampedOffsetRight = max(offset,0); |
|||
real areaOfSmallRightTriangle = clampedOffsetRight * clampedOffsetRight; |
|||
computedArea.z = computedAreaUncut.z - areaOfSmallRightTriangle; |
|||
} |
|||
|
|||
// Assuming a isoceles triangle of 1.5 texels height and 3 texels wide lying on 4 texels. |
|||
// This function return the weight of each texels area relative to the full triangle area. |
|||
void SampleShadow_GetTexelWeights_Tent_3x3(real offset, out real4 computedWeight) |
|||
{ |
|||
real4 dummy; |
|||
SampleShadow_GetTexelAreas_Tent_3x3(offset, computedWeight, dummy); |
|||
computedWeight *= 0.44444;//0.44 == 1/(the triangle area) |
|||
} |
|||
|
|||
// Assuming a isoceles triangle of 2.5 texel height and 5 texels wide lying on 6 texels. |
|||
// This function return the weight of each texels area relative to the full triangle area. |
|||
// / \ |
|||
// _ _ _ _ _ _ <-- texels |
|||
// 0 1 2 3 4 5 <-- computed area indices (in texelsWeights[]) |
|||
void SampleShadow_GetTexelWeights_Tent_5x5(real offset, out real3 texelsWeightsA, out real3 texelsWeightsB) |
|||
{ |
|||
// See _UnityInternalGetAreaPerTexel_3TexelTriangleFilter for details. |
|||
real4 computedArea_From3texelTriangle; |
|||
real4 computedAreaUncut_From3texelTriangle; |
|||
SampleShadow_GetTexelAreas_Tent_3x3(offset, computedArea_From3texelTriangle, computedAreaUncut_From3texelTriangle); |
|||
|
|||
// Triangle slope is 45 degree thus we can almost reuse the result of the 3 texel wide computation. |
|||
// the 5 texel wide triangle can be seen as the 3 texel wide one but shifted up by one unit/texel. |
|||
// 0.16 is 1/(the triangle area) |
|||
texelsWeightsA.x = 0.16 * (computedArea_From3texelTriangle.x); |
|||
texelsWeightsA.y = 0.16 * (computedAreaUncut_From3texelTriangle.y); |
|||
texelsWeightsA.z = 0.16 * (computedArea_From3texelTriangle.y + 1); |
|||
texelsWeightsB.x = 0.16 * (computedArea_From3texelTriangle.z + 1); |
|||
texelsWeightsB.y = 0.16 * (computedAreaUncut_From3texelTriangle.z); |
|||
texelsWeightsB.z = 0.16 * (computedArea_From3texelTriangle.w); |
|||
} |
|||
|
|||
// Assuming a isoceles triangle of 3.5 texel height and 7 texels wide lying on 8 texels. |
|||
// This function return the weight of each texels area relative to the full triangle area. |
|||
// / \ |
|||
// _ _ _ _ _ _ _ _ <-- texels |
|||
// 0 1 2 3 4 5 6 7 <-- computed area indices (in texelsWeights[]) |
|||
void SampleShadow_GetTexelWeights_Tent_7x7(real offset, out real4 texelsWeightsA, out real4 texelsWeightsB) |
|||
{ |
|||
// See _UnityInternalGetAreaPerTexel_3TexelTriangleFilter for details. |
|||
real4 computedArea_From3texelTriangle; |
|||
real4 computedAreaUncut_From3texelTriangle; |
|||
SampleShadow_GetTexelAreas_Tent_3x3(offset, computedArea_From3texelTriangle, computedAreaUncut_From3texelTriangle); |
|||
|
|||
// Triangle slope is 45 degree thus we can almost reuse the result of the 3 texel wide computation. |
|||
// the 7 texel wide triangle can be seen as the 3 texel wide one but shifted up by two unit/texel. |
|||
// 0.081632 is 1/(the triangle area) |
|||
texelsWeightsA.x = 0.081632 * (computedArea_From3texelTriangle.x); |
|||
texelsWeightsA.y = 0.081632 * (computedAreaUncut_From3texelTriangle.y); |
|||
texelsWeightsA.z = 0.081632 * (computedAreaUncut_From3texelTriangle.y + 1); |
|||
texelsWeightsA.w = 0.081632 * (computedArea_From3texelTriangle.y + 2); |
|||
texelsWeightsB.x = 0.081632 * (computedArea_From3texelTriangle.z + 2); |
|||
texelsWeightsB.y = 0.081632 * (computedAreaUncut_From3texelTriangle.z + 1); |
|||
texelsWeightsB.z = 0.081632 * (computedAreaUncut_From3texelTriangle.z); |
|||
texelsWeightsB.w = 0.081632 * (computedArea_From3texelTriangle.w); |
|||
} |
|||
|
|||
// 3x3 Tent filter (45 degree sloped triangles in U and V) |
|||
void SampleShadow_ComputeSamples_Tent_3x3(real4 shadowMapTexture_TexelSize, real2 coord, out real fetchesWeights[4], out real2 fetchesUV[4]) |
|||
{ |
|||
// tent base is 3x3 base thus covering from 9 to 12 texels, thus we need 4 bilinear PCF fetches |
|||
real2 tentCenterInTexelSpace = coord.xy * shadowMapTexture_TexelSize.zw; |
|||
real2 centerOfFetchesInTexelSpace = floor(tentCenterInTexelSpace + 0.5); |
|||
real2 offsetFromTentCenterToCenterOfFetches = tentCenterInTexelSpace - centerOfFetchesInTexelSpace; |
|||
|
|||
// find the weight of each texel based |
|||
real4 texelsWeightsU, texelsWeightsV; |
|||
SampleShadow_GetTexelWeights_Tent_3x3(offsetFromTentCenterToCenterOfFetches.x, texelsWeightsU); |
|||
SampleShadow_GetTexelWeights_Tent_3x3(offsetFromTentCenterToCenterOfFetches.y, texelsWeightsV); |
|||
|
|||
// each fetch will cover a group of 2x2 texels, the weight of each group is the sum of the weights of the texels |
|||
real2 fetchesWeightsU = texelsWeightsU.xz + texelsWeightsU.yw; |
|||
real2 fetchesWeightsV = texelsWeightsV.xz + texelsWeightsV.yw; |
|||
|
|||
// move the PCF bilinear fetches to respect texels weights |
|||
real2 fetchesOffsetsU = texelsWeightsU.yw / fetchesWeightsU.xy + real2(-1.5,0.5); |
|||
real2 fetchesOffsetsV = texelsWeightsV.yw / fetchesWeightsV.xy + real2(-1.5,0.5); |
|||
fetchesOffsetsU *= shadowMapTexture_TexelSize.xx; |
|||
fetchesOffsetsV *= shadowMapTexture_TexelSize.yy; |
|||
|
|||
real2 bilinearFetchOrigin = centerOfFetchesInTexelSpace * shadowMapTexture_TexelSize.xy; |
|||
fetchesUV[0] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.x); |
|||
fetchesUV[1] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.x); |
|||
fetchesUV[2] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.y); |
|||
fetchesUV[3] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.y); |
|||
|
|||
fetchesWeights[0] = fetchesWeightsU.x * fetchesWeightsV.x; |
|||
fetchesWeights[1] = fetchesWeightsU.y * fetchesWeightsV.x; |
|||
fetchesWeights[2] = fetchesWeightsU.x * fetchesWeightsV.y; |
|||
fetchesWeights[3] = fetchesWeightsU.y * fetchesWeightsV.y; |
|||
} |
|||
|
|||
// 5x5 Tent filter (45 degree sloped triangles in U and V) |
|||
void SampleShadow_ComputeSamples_Tent_5x5(real4 shadowMapTexture_TexelSize, real2 coord, out real fetchesWeights[9], out real2 fetchesUV[9]) |
|||
{ |
|||
// tent base is 5x5 base thus covering from 25 to 36 texels, thus we need 9 bilinear PCF fetches |
|||
real2 tentCenterInTexelSpace = coord.xy * shadowMapTexture_TexelSize.zw; |
|||
real2 centerOfFetchesInTexelSpace = floor(tentCenterInTexelSpace + 0.5); |
|||
real2 offsetFromTentCenterToCenterOfFetches = tentCenterInTexelSpace - centerOfFetchesInTexelSpace; |
|||
|
|||
// find the weight of each texel based on the area of a 45 degree slop tent above each of them. |
|||
real3 texelsWeightsU_A, texelsWeightsU_B; |
|||
real3 texelsWeightsV_A, texelsWeightsV_B; |
|||
SampleShadow_GetTexelWeights_Tent_5x5(offsetFromTentCenterToCenterOfFetches.x, texelsWeightsU_A, texelsWeightsU_B); |
|||
SampleShadow_GetTexelWeights_Tent_5x5(offsetFromTentCenterToCenterOfFetches.y, texelsWeightsV_A, texelsWeightsV_B); |
|||
|
|||
// each fetch will cover a group of 2x2 texels, the weight of each group is the sum of the weights of the texels |
|||
real3 fetchesWeightsU = real3(texelsWeightsU_A.xz, texelsWeightsU_B.y) + real3(texelsWeightsU_A.y, texelsWeightsU_B.xz); |
|||
real3 fetchesWeightsV = real3(texelsWeightsV_A.xz, texelsWeightsV_B.y) + real3(texelsWeightsV_A.y, texelsWeightsV_B.xz); |
|||
|
|||
// move the PCF bilinear fetches to respect texels weights |
|||
real3 fetchesOffsetsU = real3(texelsWeightsU_A.y, texelsWeightsU_B.xz) / fetchesWeightsU.xyz + real3(-2.5,-0.5,1.5); |
|||
real3 fetchesOffsetsV = real3(texelsWeightsV_A.y, texelsWeightsV_B.xz) / fetchesWeightsV.xyz + real3(-2.5,-0.5,1.5); |
|||
fetchesOffsetsU *= shadowMapTexture_TexelSize.xxx; |
|||
fetchesOffsetsV *= shadowMapTexture_TexelSize.yyy; |
|||
|
|||
real2 bilinearFetchOrigin = centerOfFetchesInTexelSpace * shadowMapTexture_TexelSize.xy; |
|||
fetchesUV[0] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.x); |
|||
fetchesUV[1] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.x); |
|||
fetchesUV[2] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.x); |
|||
fetchesUV[3] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.y); |
|||
fetchesUV[4] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.y); |
|||
fetchesUV[5] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.y); |
|||
fetchesUV[6] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.z); |
|||
fetchesUV[7] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.z); |
|||
fetchesUV[8] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.z); |
|||
|
|||
fetchesWeights[0] = fetchesWeightsU.x * fetchesWeightsV.x; |
|||
fetchesWeights[1] = fetchesWeightsU.y * fetchesWeightsV.x; |
|||
fetchesWeights[2] = fetchesWeightsU.z * fetchesWeightsV.x; |
|||
fetchesWeights[3] = fetchesWeightsU.x * fetchesWeightsV.y; |
|||
fetchesWeights[4] = fetchesWeightsU.y * fetchesWeightsV.y; |
|||
fetchesWeights[5] = fetchesWeightsU.z * fetchesWeightsV.y; |
|||
fetchesWeights[6] = fetchesWeightsU.x * fetchesWeightsV.z; |
|||
fetchesWeights[7] = fetchesWeightsU.y * fetchesWeightsV.z; |
|||
fetchesWeights[8] = fetchesWeightsU.z * fetchesWeightsV.z; |
|||
} |
|||
|
|||
// 7x7 Tent filter (45 degree sloped triangles in U and V) |
|||
void SampleShadow_ComputeSamples_Tent_7x7(real4 shadowMapTexture_TexelSize, real2 coord, out real fetchesWeights[16], out real2 fetchesUV[16]) |
|||
{ |
|||
// tent base is 7x7 base thus covering from 49 to 64 texels, thus we need 16 bilinear PCF fetches |
|||
real2 tentCenterInTexelSpace = coord.xy * shadowMapTexture_TexelSize.zw; |
|||
real2 centerOfFetchesInTexelSpace = floor(tentCenterInTexelSpace + 0.5); |
|||
real2 offsetFromTentCenterToCenterOfFetches = tentCenterInTexelSpace - centerOfFetchesInTexelSpace; |
|||
|
|||
// find the weight of each texel based on the area of a 45 degree slop tent above each of them. |
|||
real4 texelsWeightsU_A, texelsWeightsU_B; |
|||
real4 texelsWeightsV_A, texelsWeightsV_B; |
|||
SampleShadow_GetTexelWeights_Tent_7x7(offsetFromTentCenterToCenterOfFetches.x, texelsWeightsU_A, texelsWeightsU_B); |
|||
SampleShadow_GetTexelWeights_Tent_7x7(offsetFromTentCenterToCenterOfFetches.y, texelsWeightsV_A, texelsWeightsV_B); |
|||
|
|||
// each fetch will cover a group of 2x2 texels, the weight of each group is the sum of the weights of the texels |
|||
real4 fetchesWeightsU = real4(texelsWeightsU_A.xz, texelsWeightsU_B.xz) + real4(texelsWeightsU_A.yw, texelsWeightsU_B.yw); |
|||
real4 fetchesWeightsV = real4(texelsWeightsV_A.xz, texelsWeightsV_B.xz) + real4(texelsWeightsV_A.yw, texelsWeightsV_B.yw); |
|||
|
|||
// move the PCF bilinear fetches to respect texels weights |
|||
real4 fetchesOffsetsU = real4(texelsWeightsU_A.yw, texelsWeightsU_B.yw) / fetchesWeightsU.xyzw + real4(-3.5,-1.5,0.5,2.5); |
|||
real4 fetchesOffsetsV = real4(texelsWeightsV_A.yw, texelsWeightsV_B.yw) / fetchesWeightsV.xyzw + real4(-3.5,-1.5,0.5,2.5); |
|||
fetchesOffsetsU *= shadowMapTexture_TexelSize.xxxx; |
|||
fetchesOffsetsV *= shadowMapTexture_TexelSize.yyyy; |
|||
|
|||
real2 bilinearFetchOrigin = centerOfFetchesInTexelSpace * shadowMapTexture_TexelSize.xy; |
|||
fetchesUV[0] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.x); |
|||
fetchesUV[1] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.x); |
|||
fetchesUV[2] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.x); |
|||
fetchesUV[3] = bilinearFetchOrigin + real2(fetchesOffsetsU.w, fetchesOffsetsV.x); |
|||
fetchesUV[4] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.y); |
|||
fetchesUV[5] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.y); |
|||
fetchesUV[6] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.y); |
|||
fetchesUV[7] = bilinearFetchOrigin + real2(fetchesOffsetsU.w, fetchesOffsetsV.y); |
|||
fetchesUV[8] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.z); |
|||
fetchesUV[9] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.z); |
|||
fetchesUV[10] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.z); |
|||
fetchesUV[11] = bilinearFetchOrigin + real2(fetchesOffsetsU.w, fetchesOffsetsV.z); |
|||
fetchesUV[12] = bilinearFetchOrigin + real2(fetchesOffsetsU.x, fetchesOffsetsV.w); |
|||
fetchesUV[13] = bilinearFetchOrigin + real2(fetchesOffsetsU.y, fetchesOffsetsV.w); |
|||
fetchesUV[14] = bilinearFetchOrigin + real2(fetchesOffsetsU.z, fetchesOffsetsV.w); |
|||
fetchesUV[15] = bilinearFetchOrigin + real2(fetchesOffsetsU.w, fetchesOffsetsV.w); |
|||
|
|||
fetchesWeights[0] = fetchesWeightsU.x * fetchesWeightsV.x; |
|||
fetchesWeights[1] = fetchesWeightsU.y * fetchesWeightsV.x; |
|||
fetchesWeights[2] = fetchesWeightsU.z * fetchesWeightsV.x; |
|||
fetchesWeights[3] = fetchesWeightsU.w * fetchesWeightsV.x; |
|||
fetchesWeights[4] = fetchesWeightsU.x * fetchesWeightsV.y; |
|||
fetchesWeights[5] = fetchesWeightsU.y * fetchesWeightsV.y; |
|||
fetchesWeights[6] = fetchesWeightsU.z * fetchesWeightsV.y; |
|||
fetchesWeights[7] = fetchesWeightsU.w * fetchesWeightsV.y; |
|||
fetchesWeights[8] = fetchesWeightsU.x * fetchesWeightsV.z; |
|||
fetchesWeights[9] = fetchesWeightsU.y * fetchesWeightsV.z; |
|||
fetchesWeights[10] = fetchesWeightsU.z * fetchesWeightsV.z; |
|||
fetchesWeights[11] = fetchesWeightsU.w * fetchesWeightsV.z; |
|||
fetchesWeights[12] = fetchesWeightsU.x * fetchesWeightsV.w; |
|||
fetchesWeights[13] = fetchesWeightsU.y * fetchesWeightsV.w; |
|||
fetchesWeights[14] = fetchesWeightsU.z * fetchesWeightsV.w; |
|||
fetchesWeights[15] = fetchesWeightsU.w * fetchesWeightsV.w; |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: 6ff912bb23fcd5b468dd2e5c37addac3 |
|||
timeCreated: 1491321444 |
|||
licenseType: Pro |
|||
ShaderImporter: |
|||
defaultTextures: [] |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: cb59a03526126ed46a0f14718ef4645b |
|||
folderAsset: yes |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1001 &100100000 |
|||
Prefab: |
|||
m_ObjectHideFlags: 1 |
|||
serializedVersion: 2 |
|||
m_Modification: |
|||
m_TransformParent: {fileID: 0} |
|||
m_Modifications: [] |
|||
m_RemovedComponents: [] |
|||
m_ParentPrefab: {fileID: 0} |
|||
m_RootGameObject: {fileID: 1792460656933372} |
|||
m_IsPrefabParent: 1 |
|||
--- !u!1 &1792460656933372 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
serializedVersion: 5 |
|||
m_Component: |
|||
- component: {fileID: 4961272497354926} |
|||
- component: {fileID: 33869923870575626} |
|||
- component: {fileID: 23113962114029628} |
|||
m_Layer: 0 |
|||
m_Name: Head |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4961272497354926 |
|||
Transform: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1792460656933372} |
|||
m_LocalRotation: {x: 1.5099031e-14, y: -1, z: 0.000000081460335, w: 0.00000017881392} |
|||
m_LocalPosition: {x: 0, y: 0.75, z: 0} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_Children: [] |
|||
m_Father: {fileID: 0} |
|||
m_RootOrder: 0 |
|||
m_LocalEulerAnglesHint: {x: 0, y: -180.00002, z: 0} |
|||
--- !u!23 &23113962114029628 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1792460656933372} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RenderingLayerMask: 4294967295 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: f7f23f7e601fd0d4d8a290d91be59d02, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 0 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
--- !u!33 &33869923870575626 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1792460656933372} |
|||
m_Mesh: {fileID: 4300000, guid: 003b412a0b1ef1e4c9038104f29ee2d4, type: 3} |
|
|||
fileFormatVersion: 2 |
|||
guid: f2effce216eb4e643a653d29bfa79bf0 |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 100100000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: da9d9d87d41bca5468e5ef7bce2555b0 |
|||
folderAsset: yes |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1001 &100100000 |
|||
Prefab: |
|||
m_ObjectHideFlags: 1 |
|||
serializedVersion: 2 |
|||
m_Modification: |
|||
m_TransformParent: {fileID: 0} |
|||
m_Modifications: [] |
|||
m_RemovedComponents: [] |
|||
m_ParentPrefab: {fileID: 0} |
|||
m_RootGameObject: {fileID: 1673868521865844} |
|||
m_IsPrefabParent: 1 |
|||
--- !u!1 &1673868521865844 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
serializedVersion: 5 |
|||
m_Component: |
|||
- component: {fileID: 4295600896743834} |
|||
- component: {fileID: 114888363301181934} |
|||
- component: {fileID: 114663566010530930} |
|||
m_Layer: 0 |
|||
m_Name: HDRP_Black_Sky_Shadow500 |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4295600896743834 |
|||
Transform: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1673868521865844} |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 0, z: 0} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_Children: [] |
|||
m_Father: {fileID: 0} |
|||
m_RootOrder: 0 |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!114 &114663566010530930 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1673868521865844} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 441482e8936e35048a1dffac814e3ef8, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
m_Profile: {fileID: 11400000, guid: 0d615c3f4f4e27d44af6c4fed3bb683c, type: 2} |
|||
m_BakingSkyUniqueID: 1 |
|||
--- !u!114 &114888363301181934 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1673868521865844} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
isGlobal: 1 |
|||
priority: 0 |
|||
blendDistance: 0 |
|||
weight: 1 |
|||
sharedProfile: {fileID: 11400000, guid: 0d615c3f4f4e27d44af6c4fed3bb683c, type: 2} |
|
|||
fileFormatVersion: 2 |
|||
guid: b186ef7597e8a464c9a4af7b87825a5f |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 100100000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!114 &11400000 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 0} |
|||
m_GameObject: {fileID: 0} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: b2686e09ec7aef44bad2843e4416f057, type: 3} |
|||
m_Name: Tests_Diffusion_Profile_Settings |
|||
m_EditorClassIdentifier: |
|||
profiles: |
|||
- name: Skin |
|||
scatteringDistance: {r: 0.7568628, g: 0.32156864, b: 0.20000002, a: 1} |
|||
transmissionTint: {r: 0.7568628, g: 0.32156864, b: 0.20000002, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 2 |
|||
thicknessRemap: {x: 0, y: 8.152544} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3019608, g: 0.20000002, b: 0.20000002, a: 0} |
|||
scatterDistance2: {r: 0.6, g: 0.20000002, b: 0.20000002, a: 0} |
|||
lerpWeight: 0.5 |
|||
- name: Foliage |
|||
scatteringDistance: {r: 0.7568628, g: 0.7019608, b: 0.24313727, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 1 |
|||
thicknessRemap: {x: 0, y: 0.2873168} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 0.5 |
|||
- name: Skin_Post-Scatter |
|||
scatteringDistance: {r: 0.75686276, g: 0.32156864, b: 0.2, a: 1} |
|||
transmissionTint: {r: 0.7568628, g: 0.32156864, b: 0.20000002, a: 1} |
|||
texturingMode: 1 |
|||
transmissionMode: 2 |
|||
thicknessRemap: {x: 0, y: 8.152548} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Foliage_Transmission-None |
|||
scatteringDistance: {r: 0.76052475, g: 0.70110214, b: 0.2422812, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 0 |
|||
thicknessRemap: {x: 0, y: 2.7123199} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Foliage_Transmission-Regular |
|||
scatteringDistance: {r: 0.76052475, g: 0.70110214, b: 0.2422812, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 2 |
|||
thicknessRemap: {x: 0, y: 0.2873168} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: ThicknessTest |
|||
scatteringDistance: {r: 0.76052475, g: 0.70110214, b: 0.2422812, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 1 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Profile 7 |
|||
scatteringDistance: {r: 0.5, g: 0.5, b: 0.5, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 0 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Profile 8 |
|||
scatteringDistance: {r: 0.5, g: 0.5, b: 0.5, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 0 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Profile 9 |
|||
scatteringDistance: {r: 0.5, g: 0.5, b: 0.5, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 0 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Layer_1 |
|||
scatteringDistance: {r: 1, g: 0, b: 0, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 1 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Layer_2 |
|||
scatteringDistance: {r: 0, g: 1, b: 0, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 1 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Layer_3 |
|||
scatteringDistance: {r: 0, g: 0, b: 1, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 1 |
|||
transmissionMode: 1 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Layer_Base |
|||
scatteringDistance: {r: 1, g: 1, b: 1, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 1 |
|||
transmissionMode: 1 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Profile 14 |
|||
scatteringDistance: {r: 0.5, g: 0.5, b: 0.5, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 0 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|||
- name: Profile 15 |
|||
scatteringDistance: {r: 0.5, g: 0.5, b: 0.5, a: 1} |
|||
transmissionTint: {r: 1, g: 1, b: 1, a: 1} |
|||
texturingMode: 0 |
|||
transmissionMode: 0 |
|||
thicknessRemap: {x: 0, y: 5} |
|||
worldScale: 1 |
|||
ior: 1.4 |
|||
scatterDistance1: {r: 0.3, g: 0.3, b: 0.3, a: 0} |
|||
scatterDistance2: {r: 0.5, g: 0.5, b: 0.5, a: 0} |
|||
lerpWeight: 1 |
|
|||
fileFormatVersion: 2 |
|||
guid: 802c802428a2d9640a87e821dfcdd9e8 |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: a710a085bb92d7a40b77a8a2d47fee21 |
|||
TextureImporter: |
|||
fileIDToRecycleName: {} |
|||
externalObjects: {} |
|||
serializedVersion: 5 |
|||
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 |
|||
singleChannelComponent: 0 |
|||
maxTextureSizeSet: 0 |
|||
compressionQualitySet: 0 |
|||
textureFormatSet: 0 |
|||
platformSettings: |
|||
- serializedVersion: 2 |
|||
buildTarget: DefaultTexturePlatform |
|||
maxTextureSize: 2048 |
|||
resizeAlgorithm: 0 |
|||
textureFormat: -1 |
|||
textureCompression: 0 |
|||
compressionQuality: 50 |
|||
crunchedCompression: 0 |
|||
allowsAlphaSplitting: 0 |
|||
overridden: 0 |
|||
androidETC2FallbackOverride: 0 |
|||
- serializedVersion: 2 |
|||
buildTarget: Standalone |
|||
maxTextureSize: 2048 |
|||
resizeAlgorithm: 0 |
|||
textureFormat: -1 |
|||
textureCompression: 0 |
|||
compressionQuality: 50 |
|||
crunchedCompression: 0 |
|||
allowsAlphaSplitting: 0 |
|||
overridden: 0 |
|||
androidETC2FallbackOverride: 0 |
|||
spriteSheet: |
|||
serializedVersion: 2 |
|||
sprites: [] |
|||
outline: [] |
|||
physicsShape: [] |
|||
bones: [] |
|||
spriteID: |
|||
vertices: [] |
|||
indices: |
|||
edges: [] |
|||
weights: [] |
|||
spritePackingTag: |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
fileFormatVersion: 2 |
|||
guid: b08f3b14ba3ebb1429d1b6734658d10b |
|||
folderAsset: yes |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
1001
Tests/GraphicsTests/RenderPipeline/HDRenderPipeline/Scenes/1xxx_Materials/1301_SubSurfaceScattering.unity
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: 201c29a239df4c74ea9e1ab47082abea |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
Kaydara FBX Binary � � FBXHeaderExtension\ FBXHeaderVersionI� x |
|||
FBXVersionI� � EncryptionTypeI � CreationTimeStamp� VersionI� � YearI� � MonthI DayI
' HourI ? MinuteI3 W SecondI t MillisecondI� � ' |