game: terrain update
This commit is contained in:
parent
4995621f10
commit
887e0a6601
123 changed files with 9239 additions and 0 deletions
8
SSLR/Assets/WorldCreatorBridge/Content/Materials.meta
Normal file
8
SSLR/Assets/WorldCreatorBridge/Content/Materials.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7a3991507c91afe4daafa62d79688003
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,102 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: WC_Default_Terrain_Diffuse
|
||||
m_Shader: {fileID: 4800000, guid: ad589b38de531e34ea75fb9c3d648ffb, type: 3}
|
||||
m_ShaderKeywords: _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ColorMap:
|
||||
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}
|
||||
- _TerrainHolesTexture:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _CullMode: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _EnableHeightBlend: 0
|
||||
- _EnableInstancedPerPixelNormal: 1
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _HeightTransition: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _ReceivesSSR: 1
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _StencilRef: 2
|
||||
- _StencilRefDepth: 0
|
||||
- _StencilRefGBuffer: 2
|
||||
- _StencilWriteMask: 3
|
||||
- _StencilWriteMaskDepth: 48
|
||||
- _StencilWriteMaskGBuffer: 51
|
||||
- _SupportDecals: 1
|
||||
- _UVSec: 0
|
||||
- _ZTestDepthEqualForOpaque: 3
|
||||
- _ZTestGBuffer: 4
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _OffsetSize: {r: 0, g: 0, b: 0, a: 0}
|
||||
m_BuildTextureStacks: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 525693f6a4c09884896699843d7a0dc1
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,254 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: WC_Default_Terrain_HDRP
|
||||
m_Shader: {fileID: 4800000, guid: 934705547cabe8243bac8c0808e9fb14, type: 3}
|
||||
m_ShaderKeywords:
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _AnisotropyMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BaseColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BentNormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BentNormalMapOS:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _CoatMaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DistortionVectorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _EmissiveColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _HeightMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _IridescenceMaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _IridescenceThicknessMap:
|
||||
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}
|
||||
- _MaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _NormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _NormalMapOS:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _SpecularColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _SubsurfaceMaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TangentMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TangentMapOS:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ThicknessMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TransmittanceColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _AORemapMax: 1
|
||||
- _AORemapMin: 0
|
||||
- _ATDistance: 1
|
||||
- _AlbedoAffectEmissive: 0
|
||||
- _AlphaCutoff: 0.5
|
||||
- _AlphaCutoffEnable: 0
|
||||
- _AlphaCutoffPostpass: 0.5
|
||||
- _AlphaCutoffPrepass: 0.5
|
||||
- _AlphaCutoffShadow: 0.5
|
||||
- _AlphaDstBlend: 0
|
||||
- _AlphaSrcBlend: 1
|
||||
- _Anisotropy: 0
|
||||
- _BlendMode: 0
|
||||
- _CoatMask: 0
|
||||
- _CullMode: 2
|
||||
- _CullModeForward: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DepthOffsetEnable: 0
|
||||
- _DetailAlbedoScale: 1
|
||||
- _DetailNormalScale: 1
|
||||
- _DetailSmoothnessScale: 1
|
||||
- _DiffusionProfile: 0
|
||||
- _DiffusionProfileHash: 0
|
||||
- _DisplacementLockObjectScale: 1
|
||||
- _DisplacementLockTilingScale: 1
|
||||
- _DisplacementMode: 0
|
||||
- _DistortionBlendMode: 0
|
||||
- _DistortionBlurBlendMode: 0
|
||||
- _DistortionBlurDstBlend: 0
|
||||
- _DistortionBlurRemapMax: 1
|
||||
- _DistortionBlurRemapMin: 0
|
||||
- _DistortionBlurScale: 1
|
||||
- _DistortionBlurSrcBlend: 0
|
||||
- _DistortionDepthTest: 1
|
||||
- _DistortionDstBlend: 0
|
||||
- _DistortionEnable: 0
|
||||
- _DistortionScale: 1
|
||||
- _DistortionSrcBlend: 0
|
||||
- _DistortionVectorBias: -1
|
||||
- _DistortionVectorScale: 2
|
||||
- _DoubleSidedEnable: 0
|
||||
- _DoubleSidedNormalMode: 1
|
||||
- _DstBlend: 0
|
||||
- _EmissiveColorMode: 1
|
||||
- _EmissiveExposureWeight: 1
|
||||
- _EmissiveIntensity: 1
|
||||
- _EmissiveIntensityUnit: 0
|
||||
- _EnableBlendModePreserveSpecularLighting: 1
|
||||
- _EnableFogOnTransparent: 1
|
||||
- _EnableGeometricSpecularAA: 0
|
||||
- _EnableHeightBlend: 0
|
||||
- _EnableInstancedPerPixelNormal: 1
|
||||
- _EnableSpecularOcclusion: 0
|
||||
- _EnergyConservingSpecularColor: 1
|
||||
- _HDRPEnabled: 0
|
||||
- _HdrpVersion: 2
|
||||
- _HeightAmplitude: 0.02
|
||||
- _HeightCenter: 0.5
|
||||
- _HeightMapParametrization: 0
|
||||
- _HeightMax: 1
|
||||
- _HeightMin: -1
|
||||
- _HeightOffset: 0
|
||||
- _HeightPoMAmplitude: 2
|
||||
- _HeightTessAmplitude: 2
|
||||
- _HeightTessCenter: 0.5
|
||||
- _HeightTransition: 0
|
||||
- _InvTilingScale: 1
|
||||
- _Ior: 1
|
||||
- _IridescenceMask: 1
|
||||
- _IridescenceThickness: 1
|
||||
- _LinkDetailsWithBase: 1
|
||||
- _MaterialID: 1
|
||||
- _Metallic: 0
|
||||
- _NormalMapSpace: 0
|
||||
- _NormalScale: 1
|
||||
- _PPDLodThreshold: 5
|
||||
- _PPDMaxSamples: 15
|
||||
- _PPDMinSamples: 5
|
||||
- _PPDPrimitiveLength: 1
|
||||
- _PPDPrimitiveWidth: 1
|
||||
- _ReceivesSSR: 1
|
||||
- _RefractionModel: 0
|
||||
- _SSRefractionProjectionModel: 0
|
||||
- _Shininess: 0.078125
|
||||
- _Smoothness: 0.5
|
||||
- _SmoothnessRemapMax: 1
|
||||
- _SmoothnessRemapMin: 0
|
||||
- _SpecularAAScreenSpaceVariance: 0.1
|
||||
- _SpecularAAThreshold: 0.2
|
||||
- _SrcBlend: 1
|
||||
- _StencilRef: 2
|
||||
- _StencilRefDepth: 0
|
||||
- _StencilRefDistortionVec: 64
|
||||
- _StencilRefGBuffer: 2
|
||||
- _StencilRefMV: 128
|
||||
- _StencilWriteMask: 3
|
||||
- _StencilWriteMaskDepth: 32
|
||||
- _StencilWriteMaskDistortionVec: 64
|
||||
- _StencilWriteMaskGBuffer: 3
|
||||
- _StencilWriteMaskMV: 128
|
||||
- _SubsurfaceMask: 1
|
||||
- _SupportDecals: 1
|
||||
- _SurfaceType: 0
|
||||
- _TexWorldScale: 1
|
||||
- _TexWorldScaleEmissive: 1
|
||||
- _Thickness: 1
|
||||
- _ThicknessMultiplier: 1
|
||||
- _TransmissionEnable: 1
|
||||
- _TransparentBackfaceEnable: 0
|
||||
- _TransparentCullMode: 2
|
||||
- _TransparentDepthPostpassEnable: 0
|
||||
- _TransparentDepthPrepassEnable: 0
|
||||
- _TransparentSortPriority: 0
|
||||
- _TransparentWritingMotionVec: 0
|
||||
- _UVBase: 0
|
||||
- _UVDetail: 0
|
||||
- _UVEmissive: 0
|
||||
- _UseEmissiveIntensity: 0
|
||||
- _UseShadowThreshold: 0
|
||||
- _ZTestDepthEqualForOpaque: 4
|
||||
- _ZTestGBuffer: 4
|
||||
- _ZTestModeDistortion: 8
|
||||
- _ZTestTransparent: 4
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0}
|
||||
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissiveColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _InvPrimScale: {r: 1, g: 1, b: 0, a: 0}
|
||||
- _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
|
||||
- _OffsetSize: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
|
||||
- _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0}
|
||||
- _UVMappingMask: {r: 1, g: 0, b: 0, a: 0}
|
||||
- _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0}
|
||||
m_BuildTextureStacks: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e0b280c4a142490438788456a86fc73a
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,104 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: WC_Default_Terrain_Specular
|
||||
m_Shader: {fileID: 4800000, guid: 74585e5d0e5cd15489c42384ec1fcfe1, type: 3}
|
||||
m_ShaderKeywords: _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ColorMap:
|
||||
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}
|
||||
- _TerrainHolesTexture:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _CullMode: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _EnableHeightBlend: 0
|
||||
- _EnableInstancedPerPixelNormal: 1
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _HeightTransition: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _ReceivesSSR: 1
|
||||
- _Shininess: 0.078125
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _StencilRef: 2
|
||||
- _StencilRefDepth: 0
|
||||
- _StencilRefGBuffer: 2
|
||||
- _StencilWriteMask: 3
|
||||
- _StencilWriteMaskDepth: 48
|
||||
- _StencilWriteMaskGBuffer: 51
|
||||
- _SupportDecals: 1
|
||||
- _UVSec: 0
|
||||
- _ZTestDepthEqualForOpaque: 3
|
||||
- _ZTestGBuffer: 4
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _OffsetSize: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_BuildTextureStacks: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c717119b254326f4a816a0ff956dea87
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,104 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: WC_Default_Terrain_Standard
|
||||
m_Shader: {fileID: 4800000, guid: d374c4542c1921144adb0733e3d9d996, type: 3}
|
||||
m_ShaderKeywords: _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ColorMap:
|
||||
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}
|
||||
- _TerrainHolesTexture:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _CullMode: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _EnableHeightBlend: 0
|
||||
- _EnableInstancedPerPixelNormal: 1
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _HeightTransition: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _ReceivesSSR: 1
|
||||
- _Shininess: 0.078125
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _StencilRef: 2
|
||||
- _StencilRefDepth: 0
|
||||
- _StencilRefGBuffer: 2
|
||||
- _StencilWriteMask: 3
|
||||
- _StencilWriteMaskDepth: 48
|
||||
- _StencilWriteMaskGBuffer: 51
|
||||
- _SupportDecals: 1
|
||||
- _UVSec: 0
|
||||
- _ZTestDepthEqualForOpaque: 3
|
||||
- _ZTestGBuffer: 4
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _OffsetSize: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_BuildTextureStacks: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2da476207617ec34cb5b90b76608a000
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,380 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &-858830345144773609
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 11
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
version: 4
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: WC_Default_Terrain_URP
|
||||
m_Shader: {fileID: 4800000, guid: 92a7e3b011312ac41a2dbf36aeafc3c6, type: 3}
|
||||
m_ShaderKeywords: _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _AnisotropyMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BaseColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BaseMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BentNormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BentNormalMapOS:
|
||||
m_Texture: {fileID: 0}
|
||||
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}
|
||||
- _CoatMaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Control:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DistortionVectorMap:
|
||||
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}
|
||||
- _EmissiveColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _HeightMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _IridescenceMaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _IridescenceThicknessMap:
|
||||
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}
|
||||
- _Mask0:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Mask1:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Mask2:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Mask3:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Normal0:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Normal1:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Normal2:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Normal3:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _NormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _NormalMapOS:
|
||||
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}
|
||||
- _SpecularColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Splat0:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Splat1:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Splat2:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Splat3:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _SubsurfaceMaskMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TangentMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TangentMapOS:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TerrainHolesTexture:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ThicknessMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TransmittanceColorMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_Lightmaps:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_LightmapsInd:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_ShadowMasks:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _AORemapMax: 1
|
||||
- _AORemapMin: 0
|
||||
- _ATDistance: 1
|
||||
- _AlbedoAffectEmissive: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaCutoff: 0.5
|
||||
- _AlphaCutoffEnable: 0
|
||||
- _AlphaCutoffPostpass: 0.5
|
||||
- _AlphaCutoffPrepass: 0.5
|
||||
- _AlphaCutoffShadow: 0.5
|
||||
- _AlphaDstBlend: 0
|
||||
- _AlphaSrcBlend: 1
|
||||
- _Anisotropy: 0
|
||||
- _Blend: 0
|
||||
- _BlendMode: 0
|
||||
- _BumpScale: 1
|
||||
- _CoatMask: 0
|
||||
- _Cull: 2
|
||||
- _CullMode: 2
|
||||
- _CullModeForward: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DepthOffsetEnable: 0
|
||||
- _DetailAlbedoScale: 1
|
||||
- _DetailNormalScale: 1
|
||||
- _DetailSmoothnessScale: 1
|
||||
- _DiffusionProfile: 0
|
||||
- _DiffusionProfileHash: 0
|
||||
- _DisplacementLockObjectScale: 1
|
||||
- _DisplacementLockTilingScale: 1
|
||||
- _DisplacementMode: 0
|
||||
- _DistortionBlendMode: 0
|
||||
- _DistortionBlurBlendMode: 0
|
||||
- _DistortionBlurDstBlend: 0
|
||||
- _DistortionBlurRemapMax: 1
|
||||
- _DistortionBlurRemapMin: 0
|
||||
- _DistortionBlurScale: 1
|
||||
- _DistortionBlurSrcBlend: 0
|
||||
- _DistortionDepthTest: 1
|
||||
- _DistortionDstBlend: 0
|
||||
- _DistortionEnable: 0
|
||||
- _DistortionScale: 1
|
||||
- _DistortionSrcBlend: 0
|
||||
- _DistortionVectorBias: -1
|
||||
- _DistortionVectorScale: 2
|
||||
- _DoubleSidedEnable: 0
|
||||
- _DoubleSidedNormalMode: 1
|
||||
- _DstBlend: 0
|
||||
- _EmissiveColorMode: 1
|
||||
- _EmissiveExposureWeight: 1
|
||||
- _EmissiveIntensity: 1
|
||||
- _EmissiveIntensityUnit: 0
|
||||
- _EnableBlendModePreserveSpecularLighting: 1
|
||||
- _EnableFogOnTransparent: 1
|
||||
- _EnableGeometricSpecularAA: 0
|
||||
- _EnableHeightBlend: 0
|
||||
- _EnableInstancedPerPixelNormal: 1
|
||||
- _EnableSpecularOcclusion: 0
|
||||
- _EnergyConservingSpecularColor: 1
|
||||
- _GlossinessSource: 0
|
||||
- _HDRPEnabled: 0
|
||||
- _HdrpVersion: 2
|
||||
- _HeightAmplitude: 0.02
|
||||
- _HeightCenter: 0.5
|
||||
- _HeightMapParametrization: 0
|
||||
- _HeightMax: 1
|
||||
- _HeightMin: -1
|
||||
- _HeightOffset: 0
|
||||
- _HeightPoMAmplitude: 2
|
||||
- _HeightTessAmplitude: 2
|
||||
- _HeightTessCenter: 0.5
|
||||
- _HeightTransition: 0
|
||||
- _InvTilingScale: 1
|
||||
- _Ior: 1
|
||||
- _IridescenceMask: 1
|
||||
- _IridescenceThickness: 1
|
||||
- _LWRPEnabled: 1
|
||||
- _LinkDetailsWithBase: 1
|
||||
- _MaterialID: 1
|
||||
- _Metallic: 0
|
||||
- _Metallic0: 0
|
||||
- _Metallic1: 0
|
||||
- _Metallic2: 0
|
||||
- _Metallic3: 0
|
||||
- _NormalMapSpace: 0
|
||||
- _NormalScale: 1
|
||||
- _NumLayersCount: 1
|
||||
- _PPDLodThreshold: 5
|
||||
- _PPDMaxSamples: 15
|
||||
- _PPDMinSamples: 5
|
||||
- _PPDPrimitiveLength: 1
|
||||
- _PPDPrimitiveWidth: 1
|
||||
- _QueueOffset: 0
|
||||
- _ReceiveShadows: 1
|
||||
- _ReceivesSSR: 1
|
||||
- _RefractionModel: 0
|
||||
- _SSRefractionProjectionModel: 0
|
||||
- _Shininess: 0
|
||||
- _Smoothness: 0.5
|
||||
- _Smoothness0: 0.5
|
||||
- _Smoothness1: 0.5
|
||||
- _Smoothness2: 0.5
|
||||
- _Smoothness3: 0.5
|
||||
- _SmoothnessRemapMax: 1
|
||||
- _SmoothnessRemapMin: 0
|
||||
- _SmoothnessSource: 0
|
||||
- _SpecSource: 0
|
||||
- _SpecularAAScreenSpaceVariance: 0.1
|
||||
- _SpecularAAThreshold: 0.2
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _StencilRef: 2
|
||||
- _StencilRefDepth: 0
|
||||
- _StencilRefDistortionVec: 64
|
||||
- _StencilRefGBuffer: 2
|
||||
- _StencilRefMV: 128
|
||||
- _StencilWriteMask: 3
|
||||
- _StencilWriteMaskDepth: 32
|
||||
- _StencilWriteMaskDistortionVec: 64
|
||||
- _StencilWriteMaskGBuffer: 3
|
||||
- _StencilWriteMaskMV: 128
|
||||
- _SubsurfaceMask: 1
|
||||
- _SupportDecals: 1
|
||||
- _Surface: 0
|
||||
- _SurfaceType: 0
|
||||
- _TERRAIN_INSTANCED_PERPIXEL_NORMAL: 0
|
||||
- _TexWorldScale: 1
|
||||
- _TexWorldScaleEmissive: 1
|
||||
- _Thickness: 1
|
||||
- _ThicknessMultiplier: 1
|
||||
- _TransmissionEnable: 1
|
||||
- _TransparentBackfaceEnable: 0
|
||||
- _TransparentCullMode: 2
|
||||
- _TransparentDepthPostpassEnable: 0
|
||||
- _TransparentDepthPrepassEnable: 0
|
||||
- _TransparentSortPriority: 0
|
||||
- _TransparentWritingMotionVec: 0
|
||||
- _URP_ENABLED: 0
|
||||
- _UVBase: 0
|
||||
- _UVDetail: 0
|
||||
- _UVEmissive: 0
|
||||
- _UseEmissiveIntensity: 0
|
||||
- _UseShadowThreshold: 0
|
||||
- _WindQuality: 0
|
||||
- _ZTestDepthEqualForOpaque: 4
|
||||
- _ZTestGBuffer: 4
|
||||
- _ZTestModeDistortion: 8
|
||||
- _ZTestTransparent: 4
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0}
|
||||
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissiveColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _HueVariation: {r: 1, g: 0.5, b: 0, a: 0.1}
|
||||
- _InvPrimScale: {r: 1, g: 1, b: 0, a: 0}
|
||||
- _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
|
||||
- _OffsetSize: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
|
||||
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
|
||||
- _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0}
|
||||
- _UVMappingMask: {r: 1, g: 0, b: 0, a: 0}
|
||||
- _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0}
|
||||
m_BuildTextureStacks: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0a347efce38919541a00f834f6c19bc8
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
SSLR/Assets/WorldCreatorBridge/Content/Shaders.meta
Normal file
8
SSLR/Assets/WorldCreatorBridge/Content/Shaders.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e9839350c698f3a4da09804344caf6b3
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 05a9b44cfca250146a7a937627783a09
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,36 @@
|
|||
#pragma kernel AO_ROUGHNESS
|
||||
#pragma kernel AO
|
||||
#pragma kernel ROUGHNESS
|
||||
#pragma kernel ALBEDO_ROUGHNESS
|
||||
|
||||
int _Res;
|
||||
|
||||
Texture2D<float4> _AlbedoTex;
|
||||
Texture2D<float> _RoughnessTex;
|
||||
Texture2D<float> _AOTex;
|
||||
RWStructuredBuffer<float4> _OutBuffer;
|
||||
|
||||
[numthreads(8,8,1)]
|
||||
void AO_ROUGHNESS (uint3 id : SV_DispatchThreadID)
|
||||
{
|
||||
_OutBuffer[id.x + id.y * _Res] = float4(0, _AOTex[id.xy].r, 1, 1 - _RoughnessTex[id.xy].r);
|
||||
}
|
||||
|
||||
[numthreads(8,8,1)]
|
||||
void AO (uint3 id : SV_DispatchThreadID)
|
||||
{
|
||||
_OutBuffer[id.x + id.y * _Res] = float4(0, _AOTex[id.xy], 1, 0);
|
||||
}
|
||||
|
||||
[numthreads(8,8,1)]
|
||||
void ROUGHNESS (uint3 id : SV_DispatchThreadID)
|
||||
{
|
||||
_OutBuffer[id.x + id.y * _Res] = float4(0, 1, 1, 1 - _RoughnessTex[id.xy].r);
|
||||
}
|
||||
|
||||
[numthreads(8,8,1)]
|
||||
void ALBEDO_ROUGHNESS (uint3 id : SV_DispatchThreadID)
|
||||
{
|
||||
_OutBuffer[id.x + id.y * _Res] = float4(_AlbedoTex[id.xy].rgb, 1 - _RoughnessTex[id.xy].r);
|
||||
}
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3c1ec7289abb81042a2bc09557fcf38e
|
||||
ComputeShaderImporter:
|
||||
externalObjects: {}
|
||||
currentAPIMask: 4
|
||||
preprocessorOverride: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
SSLR/Assets/WorldCreatorBridge/Content/Shaders/HDRP.meta
Normal file
8
SSLR/Assets/WorldCreatorBridge/Content/Shaders/HDRP.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e165ca3a0c102c7469316c6000f70755
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,544 @@
|
|||
Shader "HDRP/WC TerrainLit"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[HideInInspector] [ToggleUI] _EnableHeightBlend("EnableHeightBlend", Float) = 0.0
|
||||
_HeightTransition("Height Transition", Range(0, 1.0)) = 0.0
|
||||
[HideInInspector] [Enum(Off, 0, From Ambient Occlusion, 1)] _SpecularOcclusionMode("Specular Occlusion Mode", Int) = 1
|
||||
|
||||
// TODO: support tri-planar?
|
||||
// TODO: support more maps?
|
||||
//[HideInInspector] _TexWorldScale0("Tiling", Float) = 1.0
|
||||
//[HideInInspector] _TexWorldScale1("Tiling", Float) = 1.0
|
||||
//[HideInInspector] _TexWorldScale2("Tiling", Float) = 1.0
|
||||
//[HideInInspector] _TexWorldScale3("Tiling", Float) = 1.0
|
||||
|
||||
// Following are builtin properties
|
||||
|
||||
// Stencil state
|
||||
// Forward
|
||||
[HideInInspector] _StencilRef("_StencilRef", Int) = 0 // StencilUsage.Clear
|
||||
[HideInInspector] _StencilWriteMask("_StencilWriteMask", Int) = 3 // StencilUsage.RequiresDeferredLighting | StencilUsage.SubsurfaceScattering
|
||||
// GBuffer
|
||||
[HideInInspector] _StencilRefGBuffer("_StencilRefGBuffer", Int) = 2 // StencilUsage.RequiresDeferredLighting
|
||||
[HideInInspector] _StencilWriteMaskGBuffer("_StencilWriteMaskGBuffer", Int) = 3 // StencilUsage.RequiresDeferredLighting | StencilUsage.SubsurfaceScattering
|
||||
// Depth prepass
|
||||
[HideInInspector] _StencilRefDepth("_StencilRefDepth", Int) = 0 // Nothing
|
||||
[HideInInspector] _StencilWriteMaskDepth("_StencilWriteMaskDepth", Int) = 8 // StencilUsage.TraceReflectionRay
|
||||
|
||||
// Blending state
|
||||
[HideInInspector] _ZWrite ("__zw", Float) = 1.0
|
||||
[HideInInspector][ToggleUI] _TransparentZWrite("_TransparentZWrite", Float) = 0.0
|
||||
[HideInInspector] _CullMode("__cullmode", Float) = 2.0
|
||||
[HideInInspector] _ZTestDepthEqualForOpaque("_ZTestDepthEqualForOpaque", Int) = 4 // Less equal
|
||||
[HideInInspector] _ZTestGBuffer("_ZTestGBuffer", Int) = 4
|
||||
|
||||
[ToggleUI] _EnableInstancedPerPixelNormal("Instanced per pixel normal", Float) = 1.0
|
||||
|
||||
[HideInInspector] _TerrainHolesTexture("Holes Map (RGB)", 2D) = "white" {}
|
||||
|
||||
// Caution: C# code in BaseLitUI.cs call LightmapEmissionFlagsProperty() which assume that there is an existing "_EmissionColor"
|
||||
// value that exist to identify if the GI emission need to be enabled.
|
||||
// In our case we don't use such a mechanism but need to keep the code quiet. We declare the value and always enable it.
|
||||
// TODO: Fix the code in legacy unity so we can customize the behavior for GI
|
||||
[HideInInspector] _EmissionColor("Color", Color) = (1, 1, 1)
|
||||
|
||||
// HACK: GI Baking system relies on some properties existing in the shader ("_MainTex", "_Cutoff" and "_Color") for opacity handling, so we need to store our version of those parameters in the hard-coded name the GI baking system recognizes.
|
||||
[HideInInspector] _MainTex("Albedo", 2D) = "white" {}
|
||||
[HideInInspector] _Color("Color", Color) = (1,1,1,1)
|
||||
|
||||
[HideInInspector] [ToggleUI] _SupportDecals("Support Decals", Float) = 1.0
|
||||
[HideInInspector] [ToggleUI] _ReceivesSSR("Receives SSR", Float) = 1.0
|
||||
[HideInInspector] [ToggleUI] _AddPrecomputedVelocity("AddPrecomputedVelocity", Float) = 0.0
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
HLSLINCLUDE
|
||||
|
||||
#pragma target 4.5
|
||||
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
||||
|
||||
// Terrain builtin keywords
|
||||
#pragma shader_feature_local _TERRAIN_8_LAYERS
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local _MASKMAP
|
||||
#pragma shader_feature_local _SPECULAR_OCCLUSION_NONE
|
||||
|
||||
#pragma shader_feature_local _TERRAIN_BLEND_HEIGHT
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
|
||||
//#pragma shader_feature _ _LAYER_MAPPING_PLANAR0 _LAYER_MAPPING_TRIPLANAR0
|
||||
//#pragma shader_feature _ _LAYER_MAPPING_PLANAR1 _LAYER_MAPPING_TRIPLANAR1
|
||||
//#pragma shader_feature _ _LAYER_MAPPING_PLANAR2 _LAYER_MAPPING_TRIPLANAR2
|
||||
//#pragma shader_feature _ _LAYER_MAPPING_PLANAR3 _LAYER_MAPPING_TRIPLANAR3
|
||||
|
||||
#pragma shader_feature_local _DISABLE_DECALS
|
||||
#pragma shader_feature_local _ADD_PRECOMPUTED_VELOCITY
|
||||
|
||||
//enable GPU instancing support
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma multi_compile _ _ALPHATEST_ON
|
||||
|
||||
// All our shaders use same name for entry point
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#pragma shader_feature HDRP_ENABLED
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
||||
#define _DEFERRED_CAPABLE_MATERIAL
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Splatmap_Includes.hlsl"
|
||||
|
||||
#else
|
||||
float4 Vert() : SV_POSITION { return float4(0,0,0,1); }
|
||||
float4 Frag() : SV_TARGET { return float4(0,0,0,1); }
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
|
||||
SubShader
|
||||
{
|
||||
// This tags allow to use the shader replacement features
|
||||
Tags
|
||||
{
|
||||
"RenderPipeline" = "HDRenderPipeline"
|
||||
"RenderType" = "Opaque"
|
||||
"SplatCount" = "8"
|
||||
"MaskMapR" = "Metallic"
|
||||
"MaskMapG" = "AO"
|
||||
"MaskMapB" = "Height"
|
||||
"MaskMapA" = "Smoothness"
|
||||
"DiffuseA" = "Smoothness (becomes Density when Mask map is assigned)" // when MaskMap is disabled
|
||||
"DiffuseA_MaskMapUsed" = "Density" // when MaskMap is enabled
|
||||
"TerrainCompatible" = "True"
|
||||
}
|
||||
|
||||
// Caution: The outline selection in the editor use the vertex shader/hull/domain shader of the first pass declare. So it should not bethe meta pass.
|
||||
Pass
|
||||
{
|
||||
Name "GBuffer"
|
||||
Tags { "LightMode" = "GBuffer" } // This will be only for opaque object based on the RenderQueue index
|
||||
|
||||
Cull [_CullMode]
|
||||
ZTest [_ZTestGBuffer]
|
||||
|
||||
Stencil
|
||||
{
|
||||
WriteMask [_StencilWriteMaskGBuffer]
|
||||
Ref [_StencilRefGBuffer]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
// Setup DECALS_OFF so the shader stripper can remove variants
|
||||
#pragma multi_compile_fragment DECALS_OFF DECALS_3RT DECALS_4RT
|
||||
#pragma multi_compile_fragment _ DECAL_SURFACE_GRADIENT
|
||||
#pragma multi_compile_fragment _ LIGHT_LAYERS
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_GBUFFER
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// Extracts information for lightmapping, GI (emission, albedo, ...)
|
||||
// This pass it not used during regular rendering.
|
||||
Pass
|
||||
{
|
||||
Name "META"
|
||||
Tags{ "LightMode" = "META" }
|
||||
|
||||
Cull Off
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
// Lightmap memo
|
||||
// DYNAMICLIGHTMAP_ON is used when we have an "enlighten lightmap" ie a lightmap updated at runtime by enlighten.This lightmap contain indirect lighting from realtime lights and realtime emissive material.Offline baked lighting(from baked material / light,
|
||||
// both direct and indirect lighting) will hand up in the "regular" lightmap->LIGHTMAP_ON.
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_LIGHT_TRANSPORT
|
||||
#pragma shader_feature EDITOR_VISUALIZATION
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ShadowCaster"
|
||||
Tags{ "LightMode" = "ShadowCaster" }
|
||||
|
||||
Cull[_CullMode]
|
||||
|
||||
ZClip [_ZClip]
|
||||
ZWrite On
|
||||
ZTest LEqual
|
||||
|
||||
ColorMask 0
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_SHADOWS
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DepthOnly"
|
||||
Tags{ "LightMode" = "DepthOnly" }
|
||||
|
||||
Cull[_CullMode]
|
||||
|
||||
// To be able to tag stencil with disableSSR information for forward
|
||||
Stencil
|
||||
{
|
||||
WriteMask [_StencilWriteMaskDepth]
|
||||
Ref [_StencilRefDepth]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
ZWrite On
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
// In deferred, depth only pass don't output anything.
|
||||
// In forward it output the normal buffer
|
||||
#pragma multi_compile _ WRITE_NORMAL_BUFFER
|
||||
#pragma multi_compile_fragment _ WRITE_DECAL_BUFFER
|
||||
#pragma multi_compile _ WRITE_MSAA_DEPTH
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#ifdef WRITE_NORMAL_BUFFER
|
||||
#if defined(_NORMALMAP)
|
||||
#define OVERRIDE_SPLAT_SAMPLER_NAME sampler_Normal0
|
||||
#elif defined(_MASKMAP)
|
||||
#define OVERRIDE_SPLAT_SAMPLER_NAME sampler_Mask0
|
||||
#endif
|
||||
#endif
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "Forward"
|
||||
Tags { "LightMode" = "Forward" } // This will be only for transparent object based on the RenderQueue index
|
||||
|
||||
Stencil
|
||||
{
|
||||
WriteMask [_StencilWriteMask]
|
||||
Ref [_StencilRef]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
// In case of forward we want to have depth equal for opaque mesh
|
||||
ZTest [_ZTestDepthEqualForOpaque]
|
||||
ZWrite [_ZWrite]
|
||||
Cull [_CullMode]
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile_fragment SCREEN_SPACE_SHADOWS_OFF SCREEN_SPACE_SHADOWS_ON
|
||||
// Setup DECALS_OFF so the shader stripper can remove variants
|
||||
#pragma multi_compile_fragment DECALS_OFF DECALS_3RT DECALS_4RT
|
||||
#pragma multi_compile_fragment _ DECAL_SURFACE_GRADIENT
|
||||
|
||||
// Supported shadow modes per light type
|
||||
#pragma multi_compile_fragment SHADOW_LOW SHADOW_MEDIUM SHADOW_HIGH
|
||||
#pragma multi_compile_fragment AREA_SHADOW_MEDIUM AREA_SHADOW_HIGH
|
||||
|
||||
#pragma multi_compile USE_FPTL_LIGHTLIST USE_CLUSTERED_LIGHTLIST
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_FORWARD
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "SceneSelectionPass"
|
||||
Tags { "LightMode" = "SceneSelectionPass" }
|
||||
|
||||
Cull Off
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#pragma editor_sync_compilation
|
||||
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
||||
#define SCENESELECTIONPASS
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
}
|
||||
|
||||
SubShader
|
||||
{
|
||||
// This tags allow to use the shader replacement features
|
||||
Tags
|
||||
{
|
||||
"RenderPipeline" = "HDRenderPipeline"
|
||||
"RenderType" = "Opaque"
|
||||
"SplatCount" = "8"
|
||||
"MaskMapR" = "Metallic"
|
||||
"MaskMapG" = "AO"
|
||||
"MaskMapB" = "Height"
|
||||
"MaskMapA" = "Smoothness"
|
||||
"DiffuseA" = "Smoothness (becomes Density when Mask map is assigned)" // when MaskMap is disabled
|
||||
"DiffuseA_MaskMapUsed" = "Density" // when MaskMap is enabled
|
||||
"TerrainCompatible" = "True"
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "IndirectDXR"
|
||||
Tags{ "LightMode" = "IndirectDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_INDIRECT
|
||||
// multi compile that allows us to strip the recursive code
|
||||
#pragma multi_compile _ MULTI_BOUNCE_INDIRECT
|
||||
|
||||
#define SHADOW_LOW
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingIndirect.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ForwardDXR"
|
||||
Tags{ "LightMode" = "ForwardDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_FORWARD
|
||||
// multi compile that allows us to strip the recursive code
|
||||
|
||||
#define SHADOW_LOW
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingForward.hlsl"
|
||||
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "GBufferDXR"
|
||||
Tags{ "LightMode" = "GBufferDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_GBUFFER
|
||||
#pragma multi_compile _ MINIMAL_GBUFFER
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingGBuffer.hlsl"
|
||||
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "VisibilityDXR"
|
||||
Tags{ "LightMode" = "VisibilityDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_VISIBILITY
|
||||
#pragma multi_compile _ TRANSPARENT_COLOR_SHADOW
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingVisibility.hlsl"
|
||||
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DebugDXR"
|
||||
Tags{ "LightMode" = "DebugDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_DEBUG
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingDebug.hlsl"
|
||||
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "PathTracingDXR"
|
||||
Tags{ "LightMode" = "PathTracingDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
#define SHADERPASS SHADERPASS_PATH_TRACING
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ SENSORSDK_OVERRIDE_REFLECTANCE
|
||||
|
||||
#ifdef SENSORSDK_OVERRIDE_REFLECTANCE
|
||||
#define SENSORSDK_ENABLE_LIDAR
|
||||
#endif
|
||||
|
||||
// This is just because it needs to be defined, shadow maps are not used.
|
||||
#define SHADOW_LOW
|
||||
|
||||
// For all single-sided, refractive materials, we want to force a thin refraction model.
|
||||
#if !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
||||
#undef _REFRACTION_PLANE
|
||||
#undef _REFRACTION_SPHERE
|
||||
#define _REFRACTION_THIN
|
||||
#endif
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassPathTracing.hlsl"
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
|
||||
Dependency "BaseMapShader" = "Hidden/HDRP/TerrainLit_Basemap"
|
||||
Dependency "BaseMapGenShader" = "Hidden/HDRP/TerrainLit_BasemapGen"
|
||||
FallBack "Hidden/HDRP/FallbackError"
|
||||
CustomEditor "UnityEditor.Rendering.HighDefinition.TerrainLitGUI"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 934705547cabe8243bac8c0808e9fb14
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,450 @@
|
|||
Shader "Hidden/HDRP/WC_TerrainLit_Basemap"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
// Following are builtin properties
|
||||
|
||||
// Stencil state
|
||||
// Forward
|
||||
[HideInInspector] _StencilRef("_StencilRef", Int) = 0 // StencilUsage.Clear
|
||||
[HideInInspector] _StencilWriteMask("_StencilWriteMask", Int) = 3 // StencilUsage.RequiresDeferredLighting | StencilUsage.SubsurfaceScattering
|
||||
// GBuffer
|
||||
[HideInInspector] _StencilRefGBuffer("_StencilRefGBuffer", Int) = 2 // StencilUsage.RequiresDeferredLighting
|
||||
[HideInInspector] _StencilWriteMaskGBuffer("_StencilWriteMaskGBuffer", Int) = 3 // StencilUsage.RequiresDeferredLighting | StencilUsage.SubsurfaceScattering
|
||||
// Depth prepass
|
||||
[HideInInspector] _StencilRefDepth("_StencilRefDepth", Int) = 0 // Nothing
|
||||
[HideInInspector] _StencilWriteMaskDepth("_StencilWriteMaskDepth", Int) = 8 // StencilUsage.TraceReflectionRay
|
||||
|
||||
// Blending state
|
||||
[HideInInspector] _ZWrite ("__zw", Float) = 1.0
|
||||
[HideInInspector] _CullMode("__cullmode", Float) = 2.0
|
||||
[HideInInspector] _ZTestDepthEqualForOpaque("_ZTestDepthEqualForOpaque", Int) = 4 // Less equal
|
||||
[HideInInspector] _ZTestGBuffer("_ZTestGBuffer", Int) = 4
|
||||
|
||||
[HideInInspector] _TerrainHolesTexture("Holes Map (RGB)", 2D) = "white" {}
|
||||
|
||||
// Caution: C# code in BaseLitUI.cs call LightmapEmissionFlagsProperty() which assume that there is an existing "_EmissionColor"
|
||||
// value that exist to identify if the GI emission need to be enabled.
|
||||
// In our case we don't use such a mechanism but need to keep the code quiet. We declare the value and always enable it.
|
||||
// TODO: Fix the code in legacy unity so we can customize the behavior for GI
|
||||
_EmissionColor("Color", Color) = (1, 1, 1)
|
||||
|
||||
_MetallicTex("Metallic (R)", 2D) = "white" {}
|
||||
|
||||
// HACK: GI Baking system relies on some properties existing in the shader ("_MainTex", "_Cutoff" and "_Color") for opacity handling, so we need to store our version of those parameters in the hard-coded name the GI baking system recognizes.
|
||||
_MainTex("Albedo", 2D) = "white" {}
|
||||
_Color("Color", Color) = (1,1,1,1)
|
||||
|
||||
[ToggleUI] _SupportDecals("Support Decals", Float) = 1.0
|
||||
[ToggleUI] _ReceivesSSR("Receives SSR", Float) = 1.0
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
HLSLINCLUDE
|
||||
|
||||
#pragma target 4.5
|
||||
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
||||
|
||||
#pragma shader_feature_local _DISABLE_DECALS
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
|
||||
#pragma multi_compile _ _ALPHATEST_ON
|
||||
|
||||
#pragma shader_feature HDRP_ENABLED
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap_Includes.hlsl"
|
||||
#else
|
||||
float4 Vert() : SV_POSITION{ return float4(0,0,0,1); }
|
||||
float4 Frag() : SV_TARGET{ return float4(0,0,0,1); }
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
|
||||
SubShader
|
||||
{
|
||||
// This tags allow to use the shader replacement features
|
||||
Tags{ "RenderPipeline" = "HDRenderPipeline" "RenderType" = "Opaque" }
|
||||
|
||||
// Caution: The outline selection in the editor use the vertex shader/hull/domain shader of the first pass declare. So it should not bethe meta pass.
|
||||
Pass
|
||||
{
|
||||
Name "GBuffer"
|
||||
Tags { "LightMode" = "GBuffer" } // This will be only for opaque object based on the RenderQueue index
|
||||
|
||||
Cull [_CullMode]
|
||||
ZTest [_ZTestGBuffer]
|
||||
|
||||
Stencil
|
||||
{
|
||||
WriteMask [_StencilWriteMaskGBuffer]
|
||||
Ref [_StencilRefGBuffer]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
HLSLPROGRAM
|
||||
//enable GPU instancing support
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
// Setup DECALS_OFF so the shader stripper can remove variants
|
||||
#pragma multi_compile_fragment DECALS_OFF DECALS_3RT DECALS_4RT
|
||||
#pragma multi_compile_fragment _ LIGHT_LAYERS
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_GBUFFER
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// Extracts information for lightmapping, GI (emission, albedo, ...)
|
||||
// This pass it not used during regular rendering.
|
||||
Pass
|
||||
{
|
||||
Name "META"
|
||||
Tags{ "LightMode" = "META" }
|
||||
|
||||
Cull Off
|
||||
|
||||
HLSLPROGRAM
|
||||
//enable GPU instancing support
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
// Lightmap memo
|
||||
// DYNAMICLIGHTMAP_ON is used when we have an "enlighten lightmap" ie a lightmap updated at runtime by enlighten.This lightmap contain indirect lighting from realtime lights and realtime emissive material.Offline baked lighting(from baked material / light,
|
||||
// both direct and indirect lighting) will hand up in the "regular" lightmap->LIGHTMAP_ON.
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_LIGHT_TRANSPORT
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ShadowCaster"
|
||||
Tags{ "LightMode" = "ShadowCaster" }
|
||||
|
||||
Cull[_CullMode]
|
||||
|
||||
ZClip [_ZClip]
|
||||
ZWrite On
|
||||
ZTest LEqual
|
||||
|
||||
ColorMask 0
|
||||
|
||||
HLSLPROGRAM
|
||||
//enable GPU instancing support
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_SHADOWS
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DepthOnly"
|
||||
Tags{ "LightMode" = "DepthOnly" }
|
||||
|
||||
Cull[_CullMode]
|
||||
|
||||
// To be able to tag stencil with disableSSR information for forward
|
||||
Stencil
|
||||
{
|
||||
WriteMask [_StencilWriteMaskDepth]
|
||||
Ref [_StencilRefDepth]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
ZWrite On
|
||||
|
||||
HLSLPROGRAM
|
||||
//enable GPU instancing support
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
// In deferred, depth only pass don't output anything.
|
||||
// In forward it output the normal buffer
|
||||
#pragma multi_compile _ WRITE_NORMAL_BUFFER
|
||||
#pragma multi_compile_fragment _ WRITE_DECAL_BUFFER
|
||||
#pragma multi_compile _ WRITE_MSAA_DEPTH
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "Forward"
|
||||
Tags{ "LightMode" = "Forward" } // This will be only for transparent object based on the RenderQueue index
|
||||
|
||||
Stencil
|
||||
{
|
||||
WriteMask [_StencilWriteMask]
|
||||
Ref [_StencilRef]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
// In case of forward we want to have depth equal for opaque mesh
|
||||
ZTest [_ZTestDepthEqualForOpaque]
|
||||
ZWrite [_ZWrite]
|
||||
Cull [_CullMode]
|
||||
|
||||
HLSLPROGRAM
|
||||
//enable GPU instancing support
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile_fragment SCREEN_SPACE_SHADOWS_OFF SCREEN_SPACE_SHADOWS_ON
|
||||
// Setup DECALS_OFF so the shader stripper can remove variants
|
||||
#pragma multi_compile_fragment DECALS_OFF DECALS_3RT DECALS_4RT
|
||||
|
||||
// Supported shadow modes per light type
|
||||
#pragma multi_compile_fragment SHADOW_LOW SHADOW_MEDIUM SHADOW_HIGH
|
||||
#pragma multi_compile_fragment AREA_SHADOW_MEDIUM AREA_SHADOW_HIGH
|
||||
|
||||
#pragma multi_compile USE_FPTL_LIGHTLIST USE_CLUSTERED_LIGHTLIST
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SHADERPASS SHADERPASS_FORWARD
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplate.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "HDRP/TerrainLit/SceneSelectionPass"
|
||||
}
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags{ "RenderPipeline" = "HDRenderPipeline" "RenderType" = "Opaque" }
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "IndirectDXR"
|
||||
Tags{ "LightMode" = "IndirectDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_INDIRECT
|
||||
// multi compile that allows us to strip the recursive code
|
||||
#pragma multi_compile _ MULTI_BOUNCE_INDIRECT
|
||||
|
||||
#define SHADOW_LOW
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingIndirect.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ForwardDXR"
|
||||
Tags{ "LightMode" = "ForwardDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_FORWARD
|
||||
// multi compile that allows us to strip the recursive code
|
||||
|
||||
#define SHADOW_LOW
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingForward.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "GBufferDXR"
|
||||
Tags{ "LightMode" = "GBufferDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile PROBE_VOLUMES_OFF PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_GBUFFER
|
||||
#pragma multi_compile _ MINIMAL_GBUFFER
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingGBuffer.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "VisibilityDXR"
|
||||
Tags{ "LightMode" = "VisibilityDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_VISIBILITY
|
||||
#pragma multi_compile _ TRANSPARENT_COLOR_SHADOW
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingVisibility.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DebugDXR"
|
||||
Tags{ "LightMode" = "DebugDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_DEBUG
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingDebug.hlsl"
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "PathTracingDXR"
|
||||
Tags{ "LightMode" = "PathTracingDXR" }
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma only_renderers d3d11 xboxseries ps5
|
||||
#pragma raytracing surface_shader
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
||||
#define SHADERPASS SHADERPASS_PATH_TRACING
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ SENSORSDK_OVERRIDE_REFLECTANCE
|
||||
|
||||
#ifdef SENSORSDK_OVERRIDE_REFLECTANCE
|
||||
#define SENSORSDK_ENABLE_LIDAR
|
||||
#endif
|
||||
|
||||
// This is just because it needs to be defined, shadow maps are not used.
|
||||
#define SHADOW_LOW
|
||||
|
||||
// For all single-sided, refractive materials, we want to force a thin refraction model.
|
||||
#if !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
||||
#undef _REFRACTION_PLANE
|
||||
#undef _REFRACTION_SPHERE
|
||||
#define _REFRACTION_THIN
|
||||
#endif
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitTemplateRayTracing.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Basemap.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassPathTracing.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 53a76acc6edabaa4c831c3e07566551e
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,142 @@
|
|||
Shader "Hidden/HDRP/WC_TerrainLit_BasemapGen"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[HideInInspector] _DstBlend("DstBlend", Float) = 0.0
|
||||
[Toggle(HDRP_ENABLED)] _HDRPEnabled("HDRP Enabled", Float) = 0
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags { "RenderPipeline" = "HDRenderPipeline" "SplatCount" = "8" }
|
||||
|
||||
HLSLINCLUDE
|
||||
|
||||
#pragma target 4.5
|
||||
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
#define SURFACE_GRADIENT // Must use Surface Gradient as the normal map texture format is now RG floating point
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLitSurfaceData.hlsl"
|
||||
|
||||
// Terrain builtin keywords
|
||||
#pragma shader_feature_local _TERRAIN_8_LAYERS
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local _MASKMAP
|
||||
|
||||
#pragma shader_feature_local _TERRAIN_BLEND_HEIGHT
|
||||
#define _TERRAIN_BASEMAP_GEN
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/TerrainLit/TerrainLit_Splatmap_Includes.hlsl"
|
||||
|
||||
CBUFFER_START(UnityTerrain)
|
||||
UNITY_TERRAIN_CB_VARS
|
||||
float4 _Control0_ST;
|
||||
CBUFFER_END
|
||||
#endif
|
||||
|
||||
struct Varyings
|
||||
{
|
||||
float4 positionCS : SV_POSITION;
|
||||
float4 texcoord : TEXCOORD0;
|
||||
};
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#pragma shader_feature HDRP_ENABLED
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
float2 ComputeControlUV(float2 uv)
|
||||
{
|
||||
// adjust splatUVs so the edges of the terrain tile lie on pixel centers
|
||||
return (uv * (_Control0_TexelSize.zw - 1.0f) + 0.5f) * _Control0_TexelSize.xy;
|
||||
}
|
||||
|
||||
Varyings Vert(uint vertexID : SV_VertexID)
|
||||
{
|
||||
Varyings output;
|
||||
output.positionCS = GetFullScreenTriangleVertexPosition(vertexID);
|
||||
output.texcoord.xy = TRANSFORM_TEX(GetFullScreenTriangleTexCoord(vertexID), _Control0);
|
||||
output.texcoord.zw = ComputeControlUV(output.texcoord.xy);
|
||||
return output;
|
||||
}
|
||||
#else
|
||||
float4 Vert() : SV_POSITION {return float4(0,0,0,1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MainTex"
|
||||
"Format" = "ARGB32"
|
||||
"Size" = "1"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
float4 Frag(Varyings input) : SV_Target
|
||||
{
|
||||
TerrainLitSurfaceData surfaceData;
|
||||
InitializeTerrainLitSurfaceData(surfaceData);
|
||||
TerrainSplatBlend(input.texcoord.zw, input.texcoord.xy, surfaceData);
|
||||
return float4(surfaceData.albedo, surfaceData.smoothness);
|
||||
}
|
||||
#else
|
||||
float4 Frag() : SV_TARGET {return float4(0,0,0,1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MetallicTex"
|
||||
"Format" = "RG16"
|
||||
"Size" = "1/4"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#ifdef HDRP_ENABLED
|
||||
|
||||
#define OVERRIDE_SPLAT_SAMPLER_NAME sampler_Mask0
|
||||
#include "TerrainLit_Splatmap.hlsl"
|
||||
|
||||
float2 Frag(Varyings input) : SV_Target
|
||||
{
|
||||
TerrainLitSurfaceData surfaceData;
|
||||
InitializeTerrainLitSurfaceData(surfaceData);
|
||||
TerrainSplatBlend(input.texcoord.zw, input.texcoord.xy, surfaceData);
|
||||
return float2(surfaceData.metallic, surfaceData.ao);
|
||||
}
|
||||
|
||||
#else
|
||||
float4 Frag() : SV_TARGET {return float4(0,0,0,1); }
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
Fallback Off
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9480889268b16d442981f40c18edd2a2
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,274 @@
|
|||
#ifdef HDRP_ENABLED
|
||||
TEXTURE2D(_Control0);
|
||||
|
||||
#define DECLARE_TERRAIN_LAYER_TEXS(n) \
|
||||
TEXTURE2D(_Splat##n); \
|
||||
TEXTURE2D(_Normal##n); \
|
||||
TEXTURE2D(_Mask##n)
|
||||
|
||||
DECLARE_TERRAIN_LAYER_TEXS(0);
|
||||
DECLARE_TERRAIN_LAYER_TEXS(1);
|
||||
DECLARE_TERRAIN_LAYER_TEXS(2);
|
||||
DECLARE_TERRAIN_LAYER_TEXS(3);
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
DECLARE_TERRAIN_LAYER_TEXS(4);
|
||||
DECLARE_TERRAIN_LAYER_TEXS(5);
|
||||
DECLARE_TERRAIN_LAYER_TEXS(6);
|
||||
DECLARE_TERRAIN_LAYER_TEXS(7);
|
||||
TEXTURE2D(_Control1);
|
||||
#endif
|
||||
|
||||
#undef DECLARE_TERRAIN_LAYER_TEXS
|
||||
|
||||
SAMPLER(sampler_Splat0);
|
||||
SAMPLER(sampler_Control0);
|
||||
|
||||
|
||||
TEXTURE2D(_ColorMap);
|
||||
SAMPLER(sampler_ColorMap);
|
||||
float4 _OffsetSize;
|
||||
|
||||
float GetSumHeight(float4 heights0, float4 heights1)
|
||||
{
|
||||
float sumHeight = heights0.x;
|
||||
sumHeight += heights0.y;
|
||||
sumHeight += heights0.z;
|
||||
sumHeight += heights0.w;
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
sumHeight += heights1.x;
|
||||
sumHeight += heights1.y;
|
||||
sumHeight += heights1.z;
|
||||
sumHeight += heights1.w;
|
||||
#endif
|
||||
return sumHeight;
|
||||
}
|
||||
|
||||
float3 SampleNormalGrad(TEXTURE2D_PARAM(textureName, samplerName), float2 uv, float2 dxuv, float2 dyuv, float scale)
|
||||
{
|
||||
float4 nrm = SAMPLE_TEXTURE2D_GRAD(textureName, samplerName, uv, dxuv, dyuv);
|
||||
#ifdef SURFACE_GRADIENT
|
||||
#ifdef UNITY_NO_DXT5nm
|
||||
return float3(UnpackDerivativeNormalRGB(nrm, scale), 0);
|
||||
#else
|
||||
return float3(UnpackDerivativeNormalRGorAG(nrm, scale), 0);
|
||||
#endif
|
||||
#else
|
||||
#ifdef UNITY_NO_DXT5nm
|
||||
return UnpackNormalRGB(nrm, scale);
|
||||
#else
|
||||
return UnpackNormalmapRGorAG(nrm, scale);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
float4 RemapMasks(float4 masks, float blendMask, float4 remapOffset, float4 remapScale)
|
||||
{
|
||||
float4 ret = masks;
|
||||
ret.b *= blendMask; // height needs to be weighted before remapping
|
||||
ret = ret * remapScale + remapOffset;
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifdef OVERRIDE_SPLAT_SAMPLER_NAME
|
||||
#define sampler_Splat0 OVERRIDE_SPLAT_SAMPLER_NAME
|
||||
SAMPLER(OVERRIDE_SPLAT_SAMPLER_NAME);
|
||||
#endif
|
||||
|
||||
void TerrainSplatBlend(float2 controlUV, float2 splatBaseUV, inout TerrainLitSurfaceData surfaceData)
|
||||
{
|
||||
// TODO: triplanar
|
||||
// TODO: POM
|
||||
|
||||
float4 albedo[_LAYER_COUNT];
|
||||
float3 normal[_LAYER_COUNT];
|
||||
float4 masks[_LAYER_COUNT];
|
||||
|
||||
#ifdef _NORMALMAP
|
||||
#define SampleNormal(i) SampleNormalGrad(_Normal##i, sampler_Splat0, splatuv, splatdxuv, splatdyuv, _NormalScale##i)
|
||||
#else
|
||||
#define SampleNormal(i) float3(0, 0, 0)
|
||||
#endif
|
||||
|
||||
#define DefaultMask(i) float4(_Metallic##i, _MaskMapRemapOffset##i.y + _MaskMapRemapScale##i.y, _MaskMapRemapOffset##i.z + 0.5 * _MaskMapRemapScale##i.z, albedo[i].a * _Smoothness##i)
|
||||
|
||||
#ifdef _MASKMAP
|
||||
#define MaskModeMasks(i, blendMask) RemapMasks(SAMPLE_TEXTURE2D_GRAD(_Mask##i, sampler_Splat0, splatuv, splatdxuv, splatdyuv), blendMask, _MaskMapRemapOffset##i, _MaskMapRemapScale##i)
|
||||
#define SampleMasks(i, blendMask) lerp(DefaultMask(i), MaskModeMasks(i, blendMask), _LayerHasMask##i)
|
||||
#define NullMask(i) float4(0, 1, _MaskMapRemapOffset##i.z, 0) // only height matters when weight is zero.
|
||||
#else
|
||||
#define SampleMasks(i, blendMask) DefaultMask(i)
|
||||
#define NullMask(i) float4(0, 1, 0, 0)
|
||||
#endif
|
||||
|
||||
#define SampleResults(i, mask) \
|
||||
UNITY_BRANCH if (mask > 0) \
|
||||
{ \
|
||||
float2 splatuv = splatBaseUV * _Splat##i##_ST.xy + _Splat##i##_ST.zw; \
|
||||
float2 splatdxuv = dxuv * _Splat##i##_ST.x; \
|
||||
float2 splatdyuv = dyuv * _Splat##i##_ST.y; \
|
||||
albedo[i] = SAMPLE_TEXTURE2D_GRAD(_Splat##i, sampler_Splat0, splatuv, splatdxuv, splatdyuv); \
|
||||
albedo[i].rgb *= _DiffuseRemapScale##i.xyz; \
|
||||
normal[i] = SampleNormal(i); \
|
||||
masks[i] = SampleMasks(i, mask); \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
albedo[i] = float4(0, 0, 0, 0); \
|
||||
normal[i] = float3(0, 0, 0); \
|
||||
masks[i] = NullMask(i); \
|
||||
}
|
||||
|
||||
// Derivatives are not available for ray tracing for now
|
||||
#if defined(SHADER_STAGE_RAY_TRACING)
|
||||
float2 dxuv = 0;
|
||||
float2 dyuv = 0;
|
||||
#else
|
||||
float2 dxuv = ddx(splatBaseUV);
|
||||
float2 dyuv = ddy(splatBaseUV);
|
||||
#endif
|
||||
|
||||
float2 blendUV0 = (controlUV.xy * (_Control0_TexelSize.zw - 1.0f) + 0.5f) * _Control0_TexelSize.xy;
|
||||
float4 blendMasks0 = SAMPLE_TEXTURE2D(_Control0, sampler_Control0, blendUV0);
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
float2 blendUV1 = (controlUV.xy * (_Control1_TexelSize.zw - 1.0f) + 0.5f) * _Control1_TexelSize.xy;
|
||||
float4 blendMasks1 = SAMPLE_TEXTURE2D(_Control1, sampler_Control0, blendUV1);
|
||||
#else
|
||||
float4 blendMasks1 = float4(0, 0, 0, 0);
|
||||
#endif
|
||||
|
||||
SampleResults(0, blendMasks0.x);
|
||||
SampleResults(1, blendMasks0.y);
|
||||
SampleResults(2, blendMasks0.z);
|
||||
SampleResults(3, blendMasks0.w);
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
SampleResults(4, blendMasks1.x);
|
||||
SampleResults(5, blendMasks1.y);
|
||||
SampleResults(6, blendMasks1.z);
|
||||
SampleResults(7, blendMasks1.w);
|
||||
#endif
|
||||
|
||||
#undef SampleNormal
|
||||
#undef SampleMasks
|
||||
#undef SampleResults
|
||||
|
||||
float weights[_LAYER_COUNT];
|
||||
ZERO_INITIALIZE_ARRAY(float, weights, _LAYER_COUNT);
|
||||
|
||||
#ifdef _MASKMAP
|
||||
#if defined(_TERRAIN_BLEND_HEIGHT)
|
||||
// Modify blendMask to take into account the height of the layer. Higher height should be more visible.
|
||||
float maxHeight = masks[0].z;
|
||||
maxHeight = max(maxHeight, masks[1].z);
|
||||
maxHeight = max(maxHeight, masks[2].z);
|
||||
maxHeight = max(maxHeight, masks[3].z);
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
maxHeight = max(maxHeight, masks[4].z);
|
||||
maxHeight = max(maxHeight, masks[5].z);
|
||||
maxHeight = max(maxHeight, masks[6].z);
|
||||
maxHeight = max(maxHeight, masks[7].z);
|
||||
#endif
|
||||
|
||||
// Make sure that transition is not zero otherwise the next computation will be wrong.
|
||||
// The epsilon here also has to be bigger than the epsilon in the next computation.
|
||||
float transition = max(_HeightTransition, 1e-5);
|
||||
|
||||
// The goal here is to have all but the highest layer at negative heights, then we add the transition so that if the next highest layer is near transition it will have a positive value.
|
||||
// Then we clamp this to zero and normalize everything so that highest layer has a value of 1.
|
||||
float4 weightedHeights0 = { masks[0].z, masks[1].z, masks[2].z, masks[3].z };
|
||||
weightedHeights0 = weightedHeights0 - maxHeight.xxxx;
|
||||
// We need to add an epsilon here for active layers (hence the blendMask again) so that at least a layer shows up if everything's too low.
|
||||
weightedHeights0 = (max(0, weightedHeights0 + transition) + 1e-6) * blendMasks0;
|
||||
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
float4 weightedHeights1 = { masks[4].z, masks[5].z, masks[6].z, masks[7].z };
|
||||
weightedHeights1 = weightedHeights1 - maxHeight.xxxx;
|
||||
weightedHeights1 = (max(0, weightedHeights1 + transition) + 1e-6) * blendMasks1;
|
||||
#else
|
||||
float4 weightedHeights1 = { 0, 0, 0, 0 };
|
||||
#endif
|
||||
|
||||
// Normalize
|
||||
float sumHeight = GetSumHeight(weightedHeights0, weightedHeights1);
|
||||
blendMasks0 = weightedHeights0 / sumHeight.xxxx;
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
blendMasks1 = weightedHeights1 / sumHeight.xxxx;
|
||||
#endif
|
||||
#elif defined(_TERRAIN_BLEND_DENSITY)
|
||||
// Denser layers are more visible.
|
||||
float4 opacityAsDensity0 = saturate((float4(albedo[0].a, albedo[1].a, albedo[2].a, albedo[3].a) - (float4(1.0, 1.0, 1.0, 1.0) - blendMasks0)) * 20.0); // 20.0 is the number of steps in inputAlphaMask (Density mask. We decided 20 empirically)
|
||||
opacityAsDensity0 += 0.001f * blendMasks0; // if all weights are zero, default to what the blend mask says
|
||||
float4 useOpacityAsDensityParam0 = { _DiffuseRemapScale0.w, _DiffuseRemapScale1.w, _DiffuseRemapScale2.w, _DiffuseRemapScale3.w }; // 1 is off
|
||||
blendMasks0 = lerp(opacityAsDensity0, blendMasks0, useOpacityAsDensityParam0);
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
float4 opacityAsDensity1 = saturate((float4(albedo[4].a, albedo[5].a, albedo[6].a, albedo[7].a) - (float4(1.0, 1.0, 1.0, 1.0) - blendMasks1)) * 20.0); // 20.0 is the number of steps in inputAlphaMask (Density mask. We decided 20 empirically)
|
||||
opacityAsDensity1 += 0.001f * blendMasks1; // if all weights are zero, default to what the blend mask says
|
||||
float4 useOpacityAsDensityParam1 = { _DiffuseRemapScale4.w, _DiffuseRemapScale5.w, _DiffuseRemapScale6.w, _DiffuseRemapScale7.w };
|
||||
blendMasks1 = lerp(opacityAsDensity1, blendMasks1, useOpacityAsDensityParam1);
|
||||
#endif
|
||||
|
||||
// Normalize
|
||||
float sumHeight = GetSumHeight(blendMasks0, blendMasks1);
|
||||
blendMasks0 = blendMasks0 / sumHeight.xxxx;
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
blendMasks1 = blendMasks1 / sumHeight.xxxx;
|
||||
#endif
|
||||
#endif // if _TERRAIN_BLEND_HEIGHT
|
||||
#endif // if _MASKMAP
|
||||
|
||||
weights[0] = blendMasks0.x;
|
||||
weights[1] = blendMasks0.y;
|
||||
weights[2] = blendMasks0.z;
|
||||
weights[3] = blendMasks0.w;
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
weights[4] = blendMasks1.x;
|
||||
weights[5] = blendMasks1.y;
|
||||
weights[6] = blendMasks1.z;
|
||||
weights[7] = blendMasks1.w;
|
||||
#endif
|
||||
|
||||
surfaceData.albedo = 0;
|
||||
surfaceData.normalData = 0;
|
||||
float3 outMasks = 0;
|
||||
UNITY_UNROLL for (int i = 0; i < _LAYER_COUNT; ++i)
|
||||
{
|
||||
surfaceData.albedo += albedo[i].rgb * weights[i];
|
||||
surfaceData.normalData += normal[i].rgb * weights[i]; // no need to normalize
|
||||
outMasks += masks[i].xyw * weights[i];
|
||||
}
|
||||
surfaceData.albedo *= SAMPLE_TEXTURE2D(_ColorMap, sampler_ColorMap, controlUV * _OffsetSize.zw + _OffsetSize.xy).xyz;
|
||||
surfaceData.smoothness = outMasks.z;
|
||||
surfaceData.metallic = outMasks.x;
|
||||
surfaceData.ao = outMasks.y;
|
||||
}
|
||||
|
||||
void TerrainLitShade(float2 uv, inout TerrainLitSurfaceData surfaceData)
|
||||
{
|
||||
TerrainSplatBlend(uv, uv, surfaceData);
|
||||
}
|
||||
|
||||
void TerrainLitDebug(float2 uv, inout float3 baseColor)
|
||||
{
|
||||
#ifdef DEBUG_DISPLAY
|
||||
if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_CONTROL)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv, _Control0, _Control0_TexelSize, _Control0_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER0)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat0_ST.xy + _Splat0_ST.zw, _Splat0, _Splat0_TexelSize, _Splat0_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER1)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat1_ST.xy + _Splat1_ST.zw, _Splat1, _Splat1_TexelSize, _Splat1_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER2)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat2_ST.xy + _Splat2_ST.zw, _Splat2, _Splat2_TexelSize, _Splat2_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER3)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat3_ST.xy + _Splat3_ST.zw, _Splat3, _Splat3_TexelSize, _Splat3_MipInfo, baseColor);
|
||||
#ifdef _TERRAIN_8_LAYERS
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER4)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat4_ST.xy + _Splat4_ST.zw, _Splat4, _Splat4_TexelSize, _Splat4_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER5)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat5_ST.xy + _Splat5_ST.zw, _Splat5, _Splat5_TexelSize, _Splat5_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER6)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat6_ST.xy + _Splat6_ST.zw, _Splat6, _Splat6_TexelSize, _Splat6_MipInfo, baseColor);
|
||||
else if (_DebugMipMapModeTerrainTexture == DEBUGMIPMAPMODETERRAINTEXTURE_LAYER7)
|
||||
baseColor = GetTextureDataDebug(_DebugMipMapMode, uv * _Splat7_ST.xy + _Splat7_ST.zw, _Splat7, _Splat7_TexelSize, _Splat7_MipInfo, baseColor);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
#endif
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 88138cfe9a990c74a9c73986a7c78126
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 11918bacfd065ce4aab12cb713241bdf
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,52 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCDiffuse-AddPass" {
|
||||
Properties {
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
CGINCLUDE
|
||||
#pragma surface surf Lambert decal:add vertex:SplatmapVert finalcolor:SplatmapFinalColor finalprepass:SplatmapFinalPrepass finalgbuffer:SplatmapFinalGBuffer fullforwardshadows nometa
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma multi_compile_fog
|
||||
|
||||
#define TERRAIN_SPLAT_ADDPASS
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
sampler2D _ColorMap;
|
||||
float4 _OffsetSize;
|
||||
|
||||
void surf(Input IN, inout SurfaceOutput o)
|
||||
{
|
||||
half4 splat_control;
|
||||
half weight;
|
||||
fixed4 mixedDiffuse;
|
||||
SplatmapMix(IN, splat_control, weight, mixedDiffuse, o.Normal);
|
||||
o.Albedo = mixedDiffuse.rgb * tex2D(_ColorMap, IN.tc.xy * _OffsetSize.zw + _OffsetSize.xy).rgb;
|
||||
o.Alpha = weight;
|
||||
}
|
||||
ENDCG
|
||||
|
||||
Category {
|
||||
Tags {
|
||||
"Queue" = "Geometry-99"
|
||||
"IgnoreProjector"="True"
|
||||
"RenderType" = "Opaque"
|
||||
}
|
||||
// TODO: Seems like "#pragma target 3.0 _NORMALMAP" can't fallback correctly on less capable devices?
|
||||
// Use two sub-shaders to simulate different features for different targets and still fallback correctly.
|
||||
SubShader { // for sm3.0+ targets
|
||||
CGPROGRAM
|
||||
#pragma target 3.0
|
||||
#pragma multi_compile_local __ _NORMALMAP
|
||||
ENDCG
|
||||
}
|
||||
SubShader { // for sm2.0 targets
|
||||
CGPROGRAM
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
|
||||
Fallback off
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 29464de404158f94ab78b1f839cdad03
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,36 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/Diffuse-Base" {
|
||||
Properties {
|
||||
_Color ("Main Color", Color) = (1,1,1,1)
|
||||
_MainTex ("Base (RGB)", 2D) = "white" {}
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
SubShader {
|
||||
Tags { "RenderType"="Opaque" }
|
||||
LOD 200
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf Lambert vertex:SplatmapVert addshadow fullforwardshadows
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
|
||||
#define TERRAIN_BASE_PASS
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
sampler2D _MainTex;
|
||||
fixed4 _Color;
|
||||
|
||||
void surf (Input IN, inout SurfaceOutput o) {
|
||||
fixed4 c = tex2D(_MainTex, IN.tc.xy) * _Color;
|
||||
o.Albedo = c.rgb;
|
||||
o.Alpha = c.a;
|
||||
}
|
||||
ENDCG
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
|
||||
}
|
||||
|
||||
Fallback "Legacy Shaders/VertexLit"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7ee657ad1f86e8a45ba7fdb04407ab86
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,88 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCDiffuse-BaseGen"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[HideInInspector] _DstBlend("DstBlend", Float) = 0.0
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MainTex"
|
||||
"Format" = "RGBA32"
|
||||
"Size" = "1"
|
||||
}
|
||||
Pass
|
||||
{
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
CGPROGRAM
|
||||
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
#pragma target 2.0
|
||||
|
||||
#include "UnityCG.cginc"
|
||||
|
||||
sampler2D _Control;
|
||||
sampler2D _Splat0;
|
||||
sampler2D _Splat1;
|
||||
sampler2D _Splat2;
|
||||
sampler2D _Splat3;
|
||||
sampler2D _ColorMap;
|
||||
|
||||
float4 _Control_TexelSize;
|
||||
float4 _Splat0_ST;
|
||||
float4 _Splat1_ST;
|
||||
float4 _Splat2_ST;
|
||||
float4 _Splat3_ST;
|
||||
float4 _OffsetSize;
|
||||
|
||||
struct appdata_t {
|
||||
float4 vertex : POSITION;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
};
|
||||
|
||||
struct v2f {
|
||||
float4 vertex : SV_POSITION;
|
||||
float2 texcoord0 : TEXCOORD0;
|
||||
float2 texcoord1 : TEXCOORD1;
|
||||
float2 texcoord2 : TEXCOORD2;
|
||||
float2 texcoord3 : TEXCOORD3;
|
||||
float2 texcoord4 : TEXCOORD4;
|
||||
};
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
// adjust splatUVs so the edges of the terrain tile lie on pixel centers
|
||||
float2 controlUV = (v.texcoord * (_Control_TexelSize.zw - 1.0f) + 0.5f) * _Control_TexelSize.xy;
|
||||
o.texcoord0 = controlUV;
|
||||
o.texcoord1 = TRANSFORM_TEX(v.texcoord, _Splat0);
|
||||
o.texcoord2 = TRANSFORM_TEX(v.texcoord, _Splat1);
|
||||
o.texcoord3 = TRANSFORM_TEX(v.texcoord, _Splat2);
|
||||
o.texcoord4 = TRANSFORM_TEX(v.texcoord, _Splat3);
|
||||
return o;
|
||||
}
|
||||
|
||||
float4 frag(v2f i) : SV_Target
|
||||
{
|
||||
float4 alpha = tex2D(_Control, i.texcoord0);
|
||||
float4 splat0 = tex2D(_Splat0, i.texcoord1);
|
||||
float4 splat1 = tex2D(_Splat1, i.texcoord2);
|
||||
float4 splat2 = tex2D(_Splat2, i.texcoord3);
|
||||
float4 splat3 = tex2D(_Splat3, i.texcoord4);
|
||||
return (alpha.x * splat0 + alpha.y * splat1 + alpha.z * splat2 + alpha.w * splat3) *
|
||||
float4(tex2D(_ColorMap, i.texcoord0.xy * _OffsetSize.zw + _OffsetSize.xy).rgb,1);
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
Fallback Off
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fcfaf1114641e5e4281db4cca8d7d0b1
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,64 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Nature/Terrain/WC Diffuse" {
|
||||
Properties {
|
||||
// used in fallback on old cards & base map
|
||||
[HideInInspector] _MainTex ("BaseMap (RGB)", 2D) = "white" {}
|
||||
[HideInInspector] _Color ("Main Color", Color) = (1,1,1,1)
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
CGINCLUDE
|
||||
#pragma surface surf Lambert vertex:SplatmapVert finalcolor:SplatmapFinalColor finalprepass:SplatmapFinalPrepass finalgbuffer:SplatmapFinalGBuffer addshadow fullforwardshadows
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma multi_compile_fog
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
sampler2D _ColorMap;
|
||||
float4 _OffsetSize;
|
||||
|
||||
void surf(Input IN, inout SurfaceOutput o)
|
||||
{
|
||||
half4 splat_control;
|
||||
half weight;
|
||||
fixed4 mixedDiffuse;
|
||||
SplatmapMix(IN, splat_control, weight, mixedDiffuse, o.Normal);
|
||||
o.Albedo = mixedDiffuse.rgb * tex2D(_ColorMap, IN.tc.xy * _OffsetSize.zw + _OffsetSize.xy).rgb;
|
||||
o.Alpha = weight;
|
||||
}
|
||||
ENDCG
|
||||
|
||||
Category {
|
||||
Tags {
|
||||
"Queue" = "Geometry-99"
|
||||
"RenderType" = "Opaque"
|
||||
}
|
||||
// TODO: Seems like "#pragma target 3.0 _NORMALMAP" can't fallback correctly on less capable devices?
|
||||
// Use two sub-shaders to simulate different features for different targets and still fallback correctly.
|
||||
SubShader { // for sm3.0+ targets
|
||||
CGPROGRAM
|
||||
#pragma target 3.0
|
||||
#pragma multi_compile_local __ _NORMALMAP
|
||||
ENDCG
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
|
||||
}
|
||||
SubShader { // for sm2.0 targets
|
||||
CGPROGRAM
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
|
||||
Dependency "AddPassShader" = "Hidden/TerrainEngine/Splatmap/WCDiffuse-AddPass"
|
||||
Dependency "BaseMapShader" = "Hidden/TerrainEngine/Splatmap/WCDiffuse-Base"
|
||||
Dependency "BaseMapGenShader" = "Hidden/TerrainEngine/Splatmap/WCDiffuse-BaseGen"
|
||||
Dependency "Details0" = "Hidden/TerrainEngine/Details/Vertexlit"
|
||||
Dependency "Details1" = "Hidden/TerrainEngine/Details/WavingDoublePass"
|
||||
Dependency "Details2" = "Hidden/TerrainEngine/Details/BillboardWavingDoublePass"
|
||||
Dependency "Tree0" = "Hidden/TerrainEngine/BillboardTree"
|
||||
|
||||
Fallback "Diffuse"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ad589b38de531e34ea75fb9c3d648ffb
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,50 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCSpecular-AddPass" {
|
||||
Properties {
|
||||
_SpecColor ("Specular Color", Color) = (0.5, 0.5, 0.5, 1)
|
||||
[PowerSlider(5.0)] _Shininess ("Shininess", Range (0.03, 1)) = 0.078125
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
|
||||
SubShader {
|
||||
Tags {
|
||||
"Queue" = "Geometry-99"
|
||||
"IgnoreProjector"="True"
|
||||
"RenderType" = "Opaque"
|
||||
}
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf BlinnPhong decal:add vertex:SplatmapVert finalcolor:SplatmapFinalColor finalprepass:SplatmapFinalPrepass finalgbuffer:SplatmapFinalGBuffer fullforwardshadows nometa
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma multi_compile_fog
|
||||
#pragma multi_compile_local __ _NORMALMAP
|
||||
#pragma target 3.0
|
||||
// needs more than 8 texcoords
|
||||
#pragma exclude_renderers gles
|
||||
|
||||
#define TERRAIN_SPLAT_ADDPASS
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
half _Shininess;
|
||||
sampler2D _ColorMap;
|
||||
float4 _OffsetSize;
|
||||
|
||||
void surf(Input IN, inout SurfaceOutput o)
|
||||
{
|
||||
half4 splat_control;
|
||||
half weight;
|
||||
fixed4 mixedDiffuse;
|
||||
SplatmapMix(IN, splat_control, weight, mixedDiffuse, o.Normal);
|
||||
o.Albedo = mixedDiffuse.rgb * tex2D(_ColorMap, IN.tc.xy * _OffsetSize.zw + _OffsetSize.xy).rgb;
|
||||
o.Alpha = weight;
|
||||
o.Gloss = mixedDiffuse.a;
|
||||
o.Specular = _Shininess;
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
|
||||
Fallback "Hidden/TerrainEngine/Splatmap/Diffuse-AddPass"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 92529f8584c82d845a642ca2fe8d18d6
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,45 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCSpecular-Base" {
|
||||
Properties {
|
||||
_SpecColor ("Specular Color", Color) = (0.5, 0.5, 0.5, 1)
|
||||
[PowerSlider(5.0)] _Shininess ("Shininess", Range (0.03, 1)) = 0.078125
|
||||
_MainTex ("Base (RGB) Gloss (A)", 2D) = "white" {}
|
||||
|
||||
// used in fallback on old cards
|
||||
_Color ("Main Color", Color) = (1,1,1,1)
|
||||
}
|
||||
|
||||
SubShader {
|
||||
Tags {
|
||||
"RenderType" = "Opaque"
|
||||
"Queue" = "Geometry-100"
|
||||
}
|
||||
LOD 200
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf BlinnPhong vertex:SplatmapVert addshadow fullforwardshadows
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
|
||||
#define TERRAIN_BASE_PASS
|
||||
#define TERRAIN_SURFACE_OUTPUT SurfaceOutput
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
sampler2D _MainTex;
|
||||
half _Shininess;
|
||||
|
||||
void surf (Input IN, inout SurfaceOutput o) {
|
||||
fixed4 tex = tex2D(_MainTex, IN.tc.xy);
|
||||
o.Albedo = tex.rgb;
|
||||
o.Gloss = tex.a;
|
||||
o.Alpha = 1.0f;
|
||||
o.Specular = _Shininess;
|
||||
}
|
||||
ENDCG
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
|
||||
}
|
||||
|
||||
FallBack "Legacy Shaders/Specular"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2eff41eb0ca70284888d299be2f105fb
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,58 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Nature/Terrain/WC Specular" {
|
||||
Properties {
|
||||
_SpecColor ("Specular Color", Color) = (0.5, 0.5, 0.5, 1)
|
||||
[PowerSlider(5.0)] _Shininess ("Shininess", Range (0.03, 1)) = 0.078125
|
||||
|
||||
// used in fallback on old cards & base map
|
||||
[HideInInspector] _MainTex ("BaseMap (RGB)", 2D) = "white" {}
|
||||
[HideInInspector] _Color ("Main Color", Color) = (1,1,1,1)
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
SubShader {
|
||||
Tags {
|
||||
"Queue" = "Geometry-100"
|
||||
"RenderType" = "Opaque"
|
||||
}
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf BlinnPhong vertex:SplatmapVert finalcolor:SplatmapFinalColor finalprepass:SplatmapFinalPrepass finalgbuffer:SplatmapFinalGBuffer addshadow fullforwardshadows
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma multi_compile_fog
|
||||
#pragma multi_compile_local __ _NORMALMAP
|
||||
#pragma target 3.0
|
||||
// needs more than 8 texcoords
|
||||
#pragma exclude_renderers gles
|
||||
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
half _Shininess;
|
||||
sampler2D _ColorMap;
|
||||
float4 _OffsetSize;
|
||||
|
||||
void surf(Input IN, inout SurfaceOutput o)
|
||||
{
|
||||
half4 splat_control;
|
||||
half weight;
|
||||
fixed4 mixedDiffuse;
|
||||
SplatmapMix(IN, splat_control, weight, mixedDiffuse, o.Normal);
|
||||
o.Albedo = mixedDiffuse.rgb * tex2D(_ColorMap, IN.tc.xy * _OffsetSize.zw + _OffsetSize.xy).rgb;
|
||||
o.Alpha = weight;
|
||||
o.Gloss = mixedDiffuse.a;
|
||||
o.Specular = _Shininess;
|
||||
}
|
||||
ENDCG
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
|
||||
}
|
||||
|
||||
Dependency "AddPassShader" = "Hidden/TerrainEngine/Splatmap/WCSpecular-AddPass"
|
||||
Dependency "BaseMapShader" = "Hidden/TerrainEngine/Splatmap/WCSpecular-Base"
|
||||
Dependency "BaseMapGenShader" = "Hidden/TerrainEngine/Splatmap/WCDiffuse-BaseGen"
|
||||
|
||||
Fallback "Nature/Terrain/Diffuse"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 74585e5d0e5cd15489c42384ec1fcfe1
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,63 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCStandard-AddPass" {
|
||||
Properties {
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
SubShader {
|
||||
Tags {
|
||||
"Queue" = "Geometry-99"
|
||||
"IgnoreProjector"="True"
|
||||
"RenderType" = "Opaque"
|
||||
}
|
||||
|
||||
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf Standard decal:add vertex:SplatmapVert finalcolor:SplatmapFinalColor finalgbuffer:SplatmapFinalGBuffer fullforwardshadows nometa
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma multi_compile_fog
|
||||
#pragma target 3.0
|
||||
// needs more than 8 texcoords
|
||||
#pragma exclude_renderers gles
|
||||
#include "UnityPBSLighting.cginc"
|
||||
|
||||
#pragma multi_compile_local __ _NORMALMAP
|
||||
|
||||
#define TERRAIN_SPLAT_ADDPASS
|
||||
#define TERRAIN_STANDARD_SHADER
|
||||
#define TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_SURFACE_OUTPUT SurfaceOutputStandard
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
half _Metallic0;
|
||||
half _Metallic1;
|
||||
half _Metallic2;
|
||||
half _Metallic3;
|
||||
|
||||
half _Smoothness0;
|
||||
half _Smoothness1;
|
||||
half _Smoothness2;
|
||||
half _Smoothness3;
|
||||
|
||||
sampler2D _ColorMap;
|
||||
float4 _OffsetSize;
|
||||
|
||||
void surf (Input IN, inout SurfaceOutputStandard o) {
|
||||
half4 splat_control;
|
||||
half weight;
|
||||
fixed4 mixedDiffuse;
|
||||
half4 defaultSmoothness = half4(_Smoothness0, _Smoothness1, _Smoothness2, _Smoothness3);
|
||||
SplatmapMix(IN, defaultSmoothness, splat_control, weight, mixedDiffuse, o.Normal);
|
||||
o.Albedo = mixedDiffuse.rgb * tex2D(_ColorMap, IN.tc.xy * _OffsetSize.zw + _OffsetSize.xy).rgb;
|
||||
o.Alpha = weight;
|
||||
o.Smoothness = mixedDiffuse.a;
|
||||
o.Metallic = dot(splat_control, half4(_Metallic0, _Metallic1, _Metallic2, _Metallic3));
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
|
||||
Fallback "Hidden/TerrainEngine/Splatmap/Diffuse-AddPass"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 518c1d86f64a6654eb9d50acb0523d4f
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,57 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCStandard-Base" {
|
||||
Properties {
|
||||
_MainTex ("Base (RGB) Smoothness (A)", 2D) = "white" {}
|
||||
_MetallicTex ("Metallic (R)", 2D) = "white" {}
|
||||
|
||||
// used in fallback on old cards
|
||||
_Color ("Main Color", Color) = (1,1,1,1)
|
||||
}
|
||||
|
||||
SubShader {
|
||||
Tags {
|
||||
"RenderType" = "Opaque"
|
||||
"Queue" = "Geometry-100"
|
||||
}
|
||||
LOD 200
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf Standard vertex:SplatmapVert addshadow fullforwardshadows
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma target 3.0
|
||||
// needs more than 8 texcoords
|
||||
#pragma exclude_renderers gles
|
||||
|
||||
#define TERRAIN_BASE_PASS
|
||||
#define TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
#include "UnityPBSLighting.cginc"
|
||||
|
||||
sampler2D _MainTex;
|
||||
sampler2D _MetallicTex;
|
||||
|
||||
void surf (Input IN, inout SurfaceOutputStandard o) {
|
||||
half4 c = tex2D (_MainTex, IN.tc.xy);
|
||||
o.Albedo = c.rgb;
|
||||
o.Alpha = 1;
|
||||
o.Smoothness = c.a;
|
||||
o.Metallic = tex2D (_MetallicTex, IN.tc.xy).r;
|
||||
|
||||
#if defined(INSTANCING_ON) && defined(SHADER_TARGET_SURFACE_ANALYSIS) && defined(TERRAIN_INSTANCED_PERPIXEL_NORMAL)
|
||||
o.Normal = float3(0, 0, 1); // make sure that surface shader compiler realizes we write to normal, as UNITY_INSTANCING_ENABLED is not defined for SHADER_TARGET_SURFACE_ANALYSIS.
|
||||
#endif
|
||||
|
||||
#if defined(UNITY_INSTANCING_ENABLED) && !defined(SHADER_API_D3D11_9X) && defined(TERRAIN_INSTANCED_PERPIXEL_NORMAL)
|
||||
o.Normal = normalize(tex2D(_TerrainNormalmapTexture, IN.tc.zw).xyz * 2 - 1).xzy;
|
||||
#endif
|
||||
}
|
||||
|
||||
ENDCG
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
|
||||
}
|
||||
|
||||
FallBack "Diffuse"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8cee18f60d2cd1146b1febbf33ff4510
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,210 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Hidden/TerrainEngine/Splatmap/WCStandard-BaseGen"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[HideInInspector] _DstBlend("DstBlend", Float) = 0.0
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
SubShader
|
||||
{
|
||||
CGINCLUDE
|
||||
|
||||
#include "UnityCG.cginc"
|
||||
sampler2D _Control;
|
||||
float4 _Control_ST;
|
||||
float4 _Control_TexelSize;
|
||||
|
||||
float4 _Splat0_ST;
|
||||
float4 _Splat1_ST;
|
||||
float4 _Splat2_ST;
|
||||
float4 _Splat3_ST;
|
||||
|
||||
struct appdata_t
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
};
|
||||
|
||||
float2 ComputeControlUV(float2 uv)
|
||||
{
|
||||
// adjust splatUVs so the edges of the terrain tile lie on pixel centers
|
||||
return (uv * (_Control_TexelSize.zw - 1.0f) + 0.5f) * _Control_TexelSize.xy;
|
||||
}
|
||||
|
||||
ENDCG
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MainTex"
|
||||
"Format" = "RGBA32"
|
||||
"Size" = "1"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
CGPROGRAM
|
||||
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
sampler2D _ColorMap;
|
||||
sampler2D _Splat0, _Splat1, _Splat2, _Splat3;
|
||||
float _Smoothness0, _Smoothness1, _Smoothness2, _Smoothness3;
|
||||
float4 _OffsetSize;
|
||||
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float4 vertex : SV_POSITION;
|
||||
float2 texcoord0 : TEXCOORD0;
|
||||
float2 texcoord1 : TEXCOORD1;
|
||||
float2 texcoord2 : TEXCOORD2;
|
||||
float2 texcoord3 : TEXCOORD3;
|
||||
float2 texcoord4 : TEXCOORD4;
|
||||
};
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
float2 uv = TRANSFORM_TEX(v.texcoord, _Control);
|
||||
o.texcoord0 = ComputeControlUV(uv);
|
||||
o.texcoord1 = TRANSFORM_TEX(uv, _Splat0);
|
||||
o.texcoord2 = TRANSFORM_TEX(uv, _Splat1);
|
||||
o.texcoord3 = TRANSFORM_TEX(uv, _Splat2);
|
||||
o.texcoord4 = TRANSFORM_TEX(uv, _Splat3);
|
||||
return o;
|
||||
}
|
||||
|
||||
float4 frag(v2f i) : SV_Target
|
||||
{
|
||||
float4 alpha = tex2D(_Control, i.texcoord0);
|
||||
float4 splat0 = tex2D(_Splat0, i.texcoord1);
|
||||
float4 splat1 = tex2D(_Splat1, i.texcoord2);
|
||||
float4 splat2 = tex2D(_Splat2, i.texcoord3);
|
||||
float4 splat3 = tex2D(_Splat3, i.texcoord4);
|
||||
|
||||
splat0.a *= _Smoothness0;
|
||||
splat1.a *= _Smoothness1;
|
||||
splat2.a *= _Smoothness2;
|
||||
splat3.a *= _Smoothness3;
|
||||
|
||||
float4 albedoSmoothness = splat0 * alpha.x;
|
||||
albedoSmoothness += splat1 * alpha.y;
|
||||
albedoSmoothness += splat2 * alpha.z;
|
||||
albedoSmoothness += splat3 * alpha.w;
|
||||
|
||||
return albedoSmoothness * float4(tex2D(_ColorMap, i.texcoord0.xy * _OffsetSize.zw + _OffsetSize.xy).rgb,1);
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
// _NormalMap pass will get ignored by terrain basemap generation code. Put here so that the VTC can use it to generate cache for normal maps.
|
||||
Tags
|
||||
{
|
||||
"Name" = "_NormalMap"
|
||||
"Format" = "A2R10G10B10"
|
||||
"Size" = "1"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
CGPROGRAM
|
||||
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
sampler2D _Normal0, _Normal1, _Normal2, _Normal3;
|
||||
float _NormalScale0, _NormalScale1, _NormalScale2, _NormalScale3;
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float4 vertex : SV_POSITION;
|
||||
float2 texcoord0 : TEXCOORD0;
|
||||
float2 texcoord1 : TEXCOORD1;
|
||||
float2 texcoord2 : TEXCOORD2;
|
||||
float2 texcoord3 : TEXCOORD3;
|
||||
float2 texcoord4 : TEXCOORD4;
|
||||
};
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
float2 uv = TRANSFORM_TEX(v.texcoord, _Control);
|
||||
o.texcoord0 = ComputeControlUV(uv);
|
||||
o.texcoord1 = TRANSFORM_TEX(uv, _Splat0);
|
||||
o.texcoord2 = TRANSFORM_TEX(uv, _Splat1);
|
||||
o.texcoord3 = TRANSFORM_TEX(uv, _Splat2);
|
||||
o.texcoord4 = TRANSFORM_TEX(uv, _Splat3);
|
||||
return o;
|
||||
}
|
||||
|
||||
float4 frag(v2f i) : SV_Target
|
||||
{
|
||||
float4 alpha = tex2D(_Control, i.texcoord0);
|
||||
|
||||
float3 normal;
|
||||
normal = UnpackNormalWithScale(tex2D(_Normal0, i.texcoord1), _NormalScale0) * alpha.x;
|
||||
normal += UnpackNormalWithScale(tex2D(_Normal1, i.texcoord2), _NormalScale1) * alpha.y;
|
||||
normal += UnpackNormalWithScale(tex2D(_Normal2, i.texcoord3), _NormalScale2) * alpha.z;
|
||||
normal += UnpackNormalWithScale(tex2D(_Normal3, i.texcoord4), _NormalScale3) * alpha.w;
|
||||
return float4(normal.xyz * 0.5f + 0.5f, 1.0f);
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MetallicTex"
|
||||
"Format" = "R8"
|
||||
"Size" = "1/4"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
CGPROGRAM
|
||||
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
float _Metallic0, _Metallic1, _Metallic2, _Metallic3;
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float4 vertex : SV_POSITION;
|
||||
float2 texcoord0 : TEXCOORD0;
|
||||
};
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
o.texcoord0 = ComputeControlUV(TRANSFORM_TEX(v.texcoord, _Control));
|
||||
return o;
|
||||
}
|
||||
|
||||
float4 frag(v2f i) : SV_Target
|
||||
{
|
||||
float4 alpha = tex2D(_Control, i.texcoord0);
|
||||
|
||||
float4 metallic = { _Metallic0 * alpha.x, 0, 0, 0 };
|
||||
metallic.r += _Metallic1 * alpha.y;
|
||||
metallic.r += _Metallic2 * alpha.z;
|
||||
metallic.r += _Metallic3 * alpha.w;
|
||||
return metallic;
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
Fallback Off
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 94e9f0aba794eaf49bfdd62bdfde1af7
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,70 @@
|
|||
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
|
||||
|
||||
Shader "Nature/Terrain/WC Standard" {
|
||||
Properties {
|
||||
// used in fallback on old cards & base map
|
||||
[HideInInspector] _MainTex ("BaseMap (RGB)", 2D) = "white" {}
|
||||
[HideInInspector] _Color ("Main Color", Color) = (1,1,1,1)
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white"
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
SubShader {
|
||||
Tags {
|
||||
"Queue" = "Geometry-100"
|
||||
"RenderType" = "Opaque"
|
||||
}
|
||||
|
||||
CGPROGRAM
|
||||
#pragma surface surf Standard vertex:SplatmapVert finalcolor:SplatmapFinalColor finalgbuffer:SplatmapFinalGBuffer addshadow fullforwardshadows
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
|
||||
#pragma multi_compile_fog // needed because finalcolor oppresses fog code generation.
|
||||
#pragma target 3.0
|
||||
// needs more than 8 texcoords
|
||||
#pragma exclude_renderers gles
|
||||
#include "UnityPBSLighting.cginc"
|
||||
|
||||
#pragma multi_compile_local __ _NORMALMAP
|
||||
|
||||
#define TERRAIN_STANDARD_SHADER
|
||||
#define TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_SURFACE_OUTPUT SurfaceOutputStandard
|
||||
#include "TerrainSplatmapCommon.cginc"
|
||||
|
||||
half _Metallic0;
|
||||
half _Metallic1;
|
||||
half _Metallic2;
|
||||
half _Metallic3;
|
||||
|
||||
half _Smoothness0;
|
||||
half _Smoothness1;
|
||||
half _Smoothness2;
|
||||
half _Smoothness3;
|
||||
|
||||
sampler2D _ColorMap;
|
||||
float4 _OffsetSize;
|
||||
|
||||
void surf (Input IN, inout SurfaceOutputStandard o) {
|
||||
half4 splat_control;
|
||||
half weight = 1;
|
||||
fixed4 mixedDiffuse;
|
||||
float2 uv = IN.tc.xy * _OffsetSize.zw + _OffsetSize.xy;
|
||||
half4 defaultSmoothness = half4(_Smoothness0, _Smoothness1, _Smoothness2, _Smoothness3);
|
||||
SplatmapMix(IN, defaultSmoothness, splat_control, weight, mixedDiffuse, o.Normal);
|
||||
o.Albedo = mixedDiffuse.rgb * tex2D(_ColorMap, uv).rgb;
|
||||
o.Alpha = weight;
|
||||
o.Smoothness = mixedDiffuse.a;
|
||||
o.Metallic = dot(splat_control, half4(_Metallic0, _Metallic1, _Metallic2, _Metallic3));
|
||||
}
|
||||
ENDCG
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
|
||||
}
|
||||
|
||||
Dependency "AddPassShader" = "Hidden/TerrainEngine/Splatmap/WCStandard-AddPass"
|
||||
Dependency "BaseMapShader" = "Hidden/TerrainEngine/Splatmap/WCStandard-Base"
|
||||
Dependency "BaseMapGenShader" = "Hidden/TerrainEngine/Splatmap/WCStandard-BaseGen"
|
||||
|
||||
Fallback "Nature/Terrain/Diffuse"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d374c4542c1921144adb0733e3d9d996
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
SSLR/Assets/WorldCreatorBridge/Content/Shaders/URP.meta
Normal file
8
SSLR/Assets/WorldCreatorBridge/Content/Shaders/URP.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ccdd089bd5500004e967f0202c0b1ee7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,336 @@
|
|||
Shader "Universal Render Pipeline/Terrain/WC Lit"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[HideInInspector] [ToggleUI] _EnableHeightBlend("EnableHeightBlend", Float) = 0.0
|
||||
_HeightTransition("Height Transition", Range(0, 1.0)) = 0.0
|
||||
// Layer count is passed down to guide height-blend enable/disable, due
|
||||
// to the fact that heigh-based blend will be broken with multipass.
|
||||
[HideInInspector] [PerRendererData] _NumLayersCount ("Total Layer Count", Float) = 1.0
|
||||
|
||||
// set by terrain engine
|
||||
[HideInInspector] _Control("Control (RGBA)", 2D) = "red" {}
|
||||
[HideInInspector] _Splat3("Layer 3 (A)", 2D) = "grey" {}
|
||||
[HideInInspector] _Splat2("Layer 2 (B)", 2D) = "grey" {}
|
||||
[HideInInspector] _Splat1("Layer 1 (G)", 2D) = "grey" {}
|
||||
[HideInInspector] _Splat0("Layer 0 (R)", 2D) = "grey" {}
|
||||
[HideInInspector] _Normal3("Normal 3 (A)", 2D) = "bump" {}
|
||||
[HideInInspector] _Normal2("Normal 2 (B)", 2D) = "bump" {}
|
||||
[HideInInspector] _Normal1("Normal 1 (G)", 2D) = "bump" {}
|
||||
[HideInInspector] _Normal0("Normal 0 (R)", 2D) = "bump" {}
|
||||
[HideInInspector] _Mask3("Mask 3 (A)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask2("Mask 2 (B)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask1("Mask 1 (G)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask0("Mask 0 (R)", 2D) = "grey" {}
|
||||
[HideInInspector][Gamma] _Metallic0("Metallic 0", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector][Gamma] _Metallic1("Metallic 1", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector][Gamma] _Metallic2("Metallic 2", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector][Gamma] _Metallic3("Metallic 3", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector] _Smoothness0("Smoothness 0", Range(0.0, 1.0)) = 0.5
|
||||
[HideInInspector] _Smoothness1("Smoothness 1", Range(0.0, 1.0)) = 0.5
|
||||
[HideInInspector] _Smoothness2("Smoothness 2", Range(0.0, 1.0)) = 0.5
|
||||
[HideInInspector] _Smoothness3("Smoothness 3", Range(0.0, 1.0)) = 0.5
|
||||
|
||||
// used in fallback on old cards & base map
|
||||
[HideInInspector] _MainTex("BaseMap (RGB)", 2D) = "grey" {}
|
||||
[HideInInspector] _BaseColor("Main Color", Color) = (1,1,1,1)
|
||||
|
||||
[HideInInspector] _TerrainHolesTexture("Holes Map (RGB)", 2D) = "white" {}
|
||||
|
||||
[ToggleUI] _EnableInstancedPerPixelNormal("Enable Instanced per-pixel normal", Float) = 1.0
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
// [Toggle(URP_ENABLED)] _URPEnabled("URP Enabled", Float) = 0
|
||||
}
|
||||
|
||||
HLSLINCLUDE
|
||||
|
||||
#pragma multi_compile_fragment __ _ALPHATEST_ON
|
||||
#pragma shader_feature URP_ENABLED
|
||||
|
||||
ENDHLSL
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags { "Queue" = "Geometry-100" "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" "UniversalMaterialType" = "Lit" "IgnoreProjector" = "False" "TerrainCompatible" = "True"}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ForwardLit"
|
||||
Tags { "LightMode" = "UniversalForward" }
|
||||
HLSLPROGRAM
|
||||
#pragma target 3.0
|
||||
|
||||
#pragma vertex SplatmapVert
|
||||
#pragma fragment SplatmapFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
#pragma multi_compile_fragment _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT
|
||||
#pragma multi_compile _ LIGHTMAP_SHADOW_MIXING
|
||||
#pragma multi_compile _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment _ _SCREEN_SPACE_OCCLUSION
|
||||
#pragma multi_compile_fragment _ _DBUFFER_MRT1 _DBUFFER_MRT2 _DBUFFER_MRT3
|
||||
#pragma multi_compile_fragment _ _LIGHT_LAYERS
|
||||
#pragma multi_compile_fragment _ _LIGHT_COOKIES
|
||||
#pragma multi_compile _ _CLUSTERED_RENDERING
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fog
|
||||
#pragma multi_compile_fragment _ DEBUG_DISPLAY
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options norenderinglayer assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma shader_feature_local_fragment _TERRAIN_BLEND_HEIGHT
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local_fragment _MASKMAP
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 SplatmapVert() : SV_POSITION {return float4(0, 0, 0, 1);}
|
||||
float4 SplatmapFragment() : SV_TARGET {return float4(1, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ShadowCaster"
|
||||
Tags{"LightMode" = "ShadowCaster"}
|
||||
|
||||
ZWrite On
|
||||
ColorMask 0
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
#pragma vertex ShadowPassVertex
|
||||
#pragma fragment ShadowPassFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
|
||||
// This is used during shadow map generation to differentiate between directional and punctual light shadows, as they use different formulas to apply Normal Bias
|
||||
#pragma multi_compile_vertex _ _CASTING_PUNCTUAL_LIGHT_SHADOW
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 ShadowPassVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 ShadowPassFragment() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "GBuffer"
|
||||
Tags{"LightMode" = "UniversalGBuffer"}
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma exclude_renderers gles
|
||||
#pragma target 3.0
|
||||
#pragma vertex SplatmapVert
|
||||
#pragma fragment SplatmapFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT
|
||||
#pragma multi_compile _ _MIXED_LIGHTING_SUBTRACTIVE
|
||||
#pragma multi_compile_fragment _ _DBUFFER_MRT1 _DBUFFER_MRT2 _DBUFFER_MRT3
|
||||
#pragma multi_compile_fragment _ _LIGHT_LAYERS
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ _GBUFFER_NORMALS_OCT
|
||||
#pragma multi_compile_fragment _ _RENDER_PASS_ENABLED
|
||||
|
||||
//#pragma multi_compile_fog
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options norenderinglayer assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma shader_feature_local _TERRAIN_BLEND_HEIGHT
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local _MASKMAP
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_GBUFFER 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 SplatmapVert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 SplatmapFragment() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DepthOnly"
|
||||
Tags{"LightMode" = "DepthOnly"}
|
||||
|
||||
ZWrite On
|
||||
ColorMask 0
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
#pragma vertex DepthOnlyVertex
|
||||
#pragma fragment DepthOnlyFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 DepthOnlyVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 DepthOnlyFragment() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// This pass is used when drawing to a _CameraNormalsTexture texture
|
||||
Pass
|
||||
{
|
||||
Name "DepthNormals"
|
||||
Tags{"LightMode" = "DepthNormals"}
|
||||
|
||||
ZWrite On
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
#pragma vertex DepthNormalOnlyVertex
|
||||
#pragma fragment DepthNormalOnlyFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitDepthNormalsPass.hlsl"
|
||||
|
||||
#else
|
||||
float4 DepthNormalOnlyVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 DepthNormalOnlyFragment() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "SceneSelectionPass"
|
||||
Tags { "LightMode" = "SceneSelectionPass" }
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
#pragma vertex DepthOnlyVertex
|
||||
#pragma fragment DepthOnlyFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#define SCENESELECTIONPASS
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 DepthOnlyVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 DepthOnlyFragment() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// This pass it not used during regular rendering, only for lightmap baking.
|
||||
Pass
|
||||
{
|
||||
Name "Meta"
|
||||
Tags{"LightMode" = "Meta"}
|
||||
|
||||
Cull Off
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma vertex TerrainVertexMeta
|
||||
#pragma fragment TerrainFragmentMeta
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
#pragma shader_feature EDITOR_VISUALIZATION
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitMetaPass.hlsl"
|
||||
|
||||
#else
|
||||
float4 TerrainVertexMeta() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 TerrainFragmentMeta() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
}
|
||||
Dependency "AddPassShader" = "Hidden/Universal Render Pipeline/Terrain/WC_TerrainLit_Add"
|
||||
Dependency "BaseMapShader" = "Hidden/Universal Render Pipeline/Terrain/WC_TerrainLit_Base"
|
||||
Dependency "BaseMapGenShader" = "Hidden/Universal Render Pipeline/Terrain/WC_TerrainLit_Basemap"
|
||||
|
||||
//CustomEditor "UnityEditor.Rendering.Universal.TerrainLitShaderGUI"
|
||||
|
||||
Fallback "Hidden/Universal Render Pipeline/FallbackError"
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 92a7e3b011312ac41a2dbf36aeafc3c6
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
preprocessorOverride: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,163 @@
|
|||
Shader "Hidden/Universal Render Pipeline/Terrain/WC_TerrainLit_Add"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
// Layer count is passed down to guide height-blend enable/disable, due
|
||||
// to the fact that height-based blend will be broken with multipass.
|
||||
[HideInInspector] [PerRendererData] _NumLayersCount ("Total Layer Count", Float) = 1.0
|
||||
|
||||
// set by terrain engine
|
||||
[HideInInspector] _Control("Control (RGBA)", 2D) = "red" {}
|
||||
[HideInInspector] _Splat3("Layer 3 (A)", 2D) = "white" {}
|
||||
[HideInInspector] _Splat2("Layer 2 (B)", 2D) = "white" {}
|
||||
[HideInInspector] _Splat1("Layer 1 (G)", 2D) = "white" {}
|
||||
[HideInInspector] _Splat0("Layer 0 (R)", 2D) = "white" {}
|
||||
[HideInInspector] _Normal3("Normal 3 (A)", 2D) = "bump" {}
|
||||
[HideInInspector] _Normal2("Normal 2 (B)", 2D) = "bump" {}
|
||||
[HideInInspector] _Normal1("Normal 1 (G)", 2D) = "bump" {}
|
||||
[HideInInspector] _Normal0("Normal 0 (R)", 2D) = "bump" {}
|
||||
[HideInInspector][Gamma] _Metallic0("Metallic 0", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector][Gamma] _Metallic1("Metallic 1", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector][Gamma] _Metallic2("Metallic 2", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector][Gamma] _Metallic3("Metallic 3", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector] _Mask3("Mask 3 (A)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask2("Mask 2 (B)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask1("Mask 1 (G)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask0("Mask 0 (R)", 2D) = "grey" {}
|
||||
[HideInInspector] _Smoothness0("Smoothness 0", Range(0.0, 1.0)) = 1.0
|
||||
[HideInInspector] _Smoothness1("Smoothness 1", Range(0.0, 1.0)) = 1.0
|
||||
[HideInInspector] _Smoothness2("Smoothness 2", Range(0.0, 1.0)) = 1.0
|
||||
[HideInInspector] _Smoothness3("Smoothness 3", Range(0.0, 1.0)) = 1.0
|
||||
|
||||
// used in fallback on old cards & base map
|
||||
[HideInInspector] _BaseMap("BaseMap (RGB)", 2D) = "white" {}
|
||||
[HideInInspector] _BaseColor("Main Color", Color) = (1,1,1,1)
|
||||
|
||||
[HideInInspector] _TerrainHolesTexture("Holes Map (RGB)", 2D) = "white" {}
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
HLSLINCLUDE
|
||||
|
||||
#pragma multi_compile_fragment __ _ALPHATEST_ON
|
||||
#pragma shader_feature URP_ENABLED
|
||||
|
||||
ENDHLSL
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags { "Queue" = "Geometry-99" "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" "UniversalMaterialType" = "Lit" "IgnoreProjector" = "True"}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "TerrainAddLit"
|
||||
Tags { "LightMode" = "UniversalForward" }
|
||||
Blend One One
|
||||
HLSLPROGRAM
|
||||
#pragma target 3.0
|
||||
|
||||
#pragma vertex SplatmapVert
|
||||
#pragma fragment SplatmapFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
#pragma multi_compile_fragment _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT
|
||||
#pragma multi_compile _ LIGHTMAP_SHADOW_MIXING
|
||||
#pragma multi_compile _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment _ _SCREEN_SPACE_OCCLUSION
|
||||
#pragma multi_compile_fragment _ _LIGHT_LAYERS
|
||||
#pragma multi_compile_fragment _ _LIGHT_COOKIES
|
||||
#pragma multi_compile _ _CLUSTERED_RENDERING
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile_fog
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options norenderinglayer assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
#pragma multi_compile_fragment _ DEBUG_DISPLAY
|
||||
|
||||
#pragma shader_feature_local_fragment _TERRAIN_BLEND_HEIGHT
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local_fragment _MASKMAP
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_SPLAT_ADDPASS
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 SplatmapVert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 SplatmapFragment() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "GBuffer"
|
||||
Tags{"LightMode" = "UniversalGBuffer"}
|
||||
|
||||
Blend One One
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma exclude_renderers gles
|
||||
#pragma target 3.0
|
||||
#pragma vertex SplatmapVert
|
||||
#pragma fragment SplatmapFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT
|
||||
#pragma multi_compile _ _MIXED_LIGHTING_SUBTRACTIVE
|
||||
#pragma multi_compile_fragment _ _LIGHT_LAYERS
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ _GBUFFER_NORMALS_OCT
|
||||
#pragma multi_compile_fragment _ _RENDER_PASS_ENABLED
|
||||
|
||||
//#pragma multi_compile_fog
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options norenderinglayer assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma shader_feature_local _TERRAIN_BLEND_HEIGHT
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local _MASKMAP
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_SPLAT_ADDPASS 1
|
||||
#define TERRAIN_GBUFFER 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 SplatmapVert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 SplatmapFragment() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
Fallback "Hidden/Universal Render Pipeline/FallbackError"
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d7d3b0b22d73d4b43915edc1127a99d6
|
||||
timeCreated: 1508929790
|
||||
licenseType: Store
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,270 @@
|
|||
Shader "Hidden/Universal Render Pipeline/Terrain/WC_TerrainLit_Base"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[MainColor] _BaseColor("Color", Color) = (1,1,1,1)
|
||||
_MainTex("Albedo(RGB), Smoothness(A)", 2D) = "white" {}
|
||||
_MetallicTex ("Metallic (R)", 2D) = "black" {}
|
||||
[HideInInspector] _TerrainHolesTexture("Holes Map (RGB)", 2D) = "white" {}
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
HLSLINCLUDE
|
||||
|
||||
#pragma multi_compile_fragment __ _ALPHATEST_ON
|
||||
#pragma shader_feature URP_ENABLED
|
||||
|
||||
ENDHLSL
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags { "Queue" = "Geometry-100" "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" "UniversalMaterialType" = "Lit" "IgnoreProjector" = "True"}
|
||||
LOD 200
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// Forward pass. Shades all light in a single pass. GI + emission + Fog
|
||||
Pass
|
||||
{
|
||||
Name "ForwardLit"
|
||||
// Lightmode matches the ShaderPassName set in UniversalPipeline.cs. SRPDefaultUnlit and passes with
|
||||
// no LightMode tag are also rendered by Universal Pipeline
|
||||
Tags{"LightMode" = "UniversalForward"}
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
#pragma multi_compile_fragment _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT
|
||||
#pragma multi_compile _ LIGHTMAP_SHADOW_MIXING
|
||||
#pragma multi_compile _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile_fragment _ _SCREEN_SPACE_OCCLUSION
|
||||
#pragma multi_compile_fragment _ _LIGHT_LAYERS
|
||||
#pragma multi_compile_fragment _ _LIGHT_COOKIES
|
||||
#pragma multi_compile _ _CLUSTERED_RENDERING
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fog
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options norenderinglayer assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
#pragma multi_compile_fragment _ DEBUG_DISPLAY
|
||||
|
||||
#pragma vertex SplatmapVert
|
||||
#pragma fragment SplatmapFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_SPLAT_BASEPASS 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 SplatmapVert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 SplatmapFragment() : SV_TARGET {return float4(1, 0, 0, 1);}
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ShadowCaster"
|
||||
Tags{"LightMode" = "ShadowCaster"}
|
||||
|
||||
ZWrite On
|
||||
ColorMask 0
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex ShadowPassVertex
|
||||
#pragma fragment ShadowPassFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 ShadowPassVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 ShadowPassFragment() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// GBuffer pass. Does GI + emission. All additional lights are done deferred as well as fog
|
||||
Pass
|
||||
{
|
||||
Name "GBuffer"
|
||||
Tags{"LightMode" = "UniversalGBuffer"}
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma exclude_renderers gles
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT
|
||||
#pragma multi_compile _ _MIXED_LIGHTING_SUBTRACTIVE
|
||||
#pragma multi_compile_fragment _ _LIGHT_LAYERS
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ _GBUFFER_NORMALS_OCT
|
||||
#pragma multi_compile_fragment _ _RENDER_PASS_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options norenderinglayer assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#pragma vertex SplatmapVert
|
||||
#pragma fragment SplatmapFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
// Sample normal in pixel shader when doing instancing
|
||||
#pragma shader_feature_local _TERRAIN_INSTANCED_PERPIXEL_NORMAL
|
||||
#define TERRAIN_SPLAT_BASEPASS 1
|
||||
#define TERRAIN_GBUFFER 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 SplatmapVert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 SplatmapFragment() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DepthOnly"
|
||||
Tags{"LightMode" = "DepthOnly"}
|
||||
|
||||
ZWrite On
|
||||
ColorMask 0
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
#pragma vertex DepthOnlyVertex
|
||||
#pragma fragment DepthOnlyFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#else
|
||||
float4 DepthOnlyVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 DepthOnlyFragment() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DepthNormals"
|
||||
Tags{"LightMode" = "DepthNormals"}
|
||||
|
||||
ZWrite On
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
#pragma vertex DepthNormalOnlyVertex
|
||||
#pragma fragment DepthNormalOnlyFragment
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitDepthNormalsPass.hlsl"
|
||||
|
||||
|
||||
#else
|
||||
float4 DepthNormalOnlyVertex() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 DepthNormalOnlyFragment() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// This pass it not used during regular rendering, only for lightmap baking.
|
||||
Pass
|
||||
{
|
||||
Name "Meta"
|
||||
Tags{"LightMode" = "Meta"}
|
||||
|
||||
Cull Off
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma vertex TerrainVertexMeta
|
||||
#pragma fragment TerrainFragmentMeta
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#pragma shader_feature EDITOR_VISUALIZATION
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitMetaPass.hlsl"
|
||||
#else
|
||||
float4 TerrainVertexMeta() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 TerrainFragmentMeta() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
|
||||
UsePass "Universal Render Pipeline/Terrain/Lit/SceneSelectionPass"
|
||||
}
|
||||
FallBack "Hidden/Universal Render Pipeline/FallbackError"
|
||||
//CustomEditor "LitShaderGUI"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8405ccadcffda404bb67a2e9a17f3231
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,230 @@
|
|||
Shader "Hidden/Universal Render Pipeline/Terrain/WC_TerrainLit_Basemap"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
// Layer count is passed down to guide height-blend enable/disable, due
|
||||
// to the fact that heigh-based blend will be broken with multipass.
|
||||
[HideInInspector] [PerRendererData] _NumLayersCount ("Total Layer Count", Float) = 1.0
|
||||
[HideInInspector] _Control("AlphaMap", 2D) = "" {}
|
||||
|
||||
[HideInInspector] _Splat0 ("Layer 0 (R)", 2D) = "white" {}
|
||||
[HideInInspector] _Splat1 ("Layer 1 (G)", 2D) = "white" {}
|
||||
[HideInInspector] _Splat2 ("Layer 2 (B)", 2D) = "white" {}
|
||||
[HideInInspector] _Splat3 ("Layer 3 (A)", 2D) = "white" {}
|
||||
[HideInInspector] _Mask3("Mask 3 (A)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask2("Mask 2 (B)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask1("Mask 1 (G)", 2D) = "grey" {}
|
||||
[HideInInspector] _Mask0("Mask 0 (R)", 2D) = "grey" {}
|
||||
[HideInInspector] [Gamma] _Metallic0 ("Metallic 0", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector] [Gamma] _Metallic1 ("Metallic 1", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector] [Gamma] _Metallic2 ("Metallic 2", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector] [Gamma] _Metallic3 ("Metallic 3", Range(0.0, 1.0)) = 0.0
|
||||
[HideInInspector] _Smoothness0 ("Smoothness 0", Range(0.0, 1.0)) = 1.0
|
||||
[HideInInspector] _Smoothness1 ("Smoothness 1", Range(0.0, 1.0)) = 1.0
|
||||
[HideInInspector] _Smoothness2 ("Smoothness 2", Range(0.0, 1.0)) = 1.0
|
||||
[HideInInspector] _Smoothness3 ("Smoothness 3", Range(0.0, 1.0)) = 1.0
|
||||
|
||||
[HideInInspector] _DstBlend("DstBlend", Float) = 0.0
|
||||
|
||||
_ColorMap("ColorMap (RGB)", 2D) = "white" {}
|
||||
_OffsetSize("Offset / Size", Vector) = (0,0,0,0)
|
||||
}
|
||||
|
||||
Subshader
|
||||
{
|
||||
HLSLINCLUDE
|
||||
#pragma target 3.0
|
||||
|
||||
#define _METALLICSPECGLOSSMAP 1
|
||||
#define _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A 1
|
||||
#define _TERRAIN_BASEMAP_GEN
|
||||
|
||||
#pragma shader_feature_local _TERRAIN_BLEND_HEIGHT
|
||||
#pragma shader_feature_local _MASKMAP
|
||||
|
||||
#pragma shader_feature URP_ENABLED
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Terrain/TerrainLitInput.hlsl"
|
||||
#include "TerrainLitPasses.hlsl"
|
||||
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MainTex"
|
||||
"Format" = "ARGB32"
|
||||
"Size" = "1"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
|
||||
Varyings Vert(Attributes IN)
|
||||
{
|
||||
Varyings output = (Varyings) 0;
|
||||
|
||||
output.clipPos = TransformWorldToHClip(IN.positionOS.xyz);
|
||||
|
||||
// NOTE : This is basically coming from the vertex shader in TerrainLitPasses
|
||||
// There are other plenty of other values that the original version computes, but for this
|
||||
// pass, we are only interested in a few, so I'm just skipping the rest.
|
||||
output.uvMainAndLM.xy = IN.texcoord;
|
||||
output.uvSplat01.xy = TRANSFORM_TEX(IN.texcoord, _Splat0);
|
||||
output.uvSplat01.zw = TRANSFORM_TEX(IN.texcoord, _Splat1);
|
||||
output.uvSplat23.xy = TRANSFORM_TEX(IN.texcoord, _Splat2);
|
||||
output.uvSplat23.zw = TRANSFORM_TEX(IN.texcoord, _Splat3);
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
half4 Frag(Varyings IN) : SV_Target
|
||||
{
|
||||
half3 normalTS = half3(0.0h, 0.0h, 1.0h);
|
||||
half4 splatControl;
|
||||
half weight;
|
||||
half4 mixedDiffuse = 0.0h;
|
||||
half4 defaultSmoothness = 0.0h;
|
||||
|
||||
half4 masks[4];
|
||||
float2 splatUV = (IN.uvMainAndLM.xy * (_Control_TexelSize.zw - 1.0f) + 0.5f) * _Control_TexelSize.xy;
|
||||
splatControl = SAMPLE_TEXTURE2D(_Control, sampler_Control, splatUV);
|
||||
|
||||
masks[0] = 1.0h;
|
||||
masks[1] = 1.0h;
|
||||
masks[2] = 1.0h;
|
||||
masks[3] = 1.0h;
|
||||
|
||||
#ifdef _MASKMAP
|
||||
masks[0] = SAMPLE_TEXTURE2D(_Mask0, sampler_Mask0, IN.uvSplat01.xy);
|
||||
masks[1] = SAMPLE_TEXTURE2D(_Mask1, sampler_Mask0, IN.uvSplat01.zw);
|
||||
masks[2] = SAMPLE_TEXTURE2D(_Mask2, sampler_Mask0, IN.uvSplat23.xy);
|
||||
masks[3] = SAMPLE_TEXTURE2D(_Mask3, sampler_Mask0, IN.uvSplat23.zw);
|
||||
|
||||
#ifdef _TERRAIN_BLEND_HEIGHT
|
||||
HeightBasedSplatModify(splatControl, masks);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
SplatmapMix(IN.uvMainAndLM, IN.uvSplat01, IN.uvSplat23, splatControl, weight, mixedDiffuse, defaultSmoothness, normalTS);
|
||||
|
||||
half4 hasMask = half4(_LayerHasMask0, _LayerHasMask1, _LayerHasMask2, _LayerHasMask3);
|
||||
|
||||
half4 maskSmoothness = half4(masks[0].a, masks[1].a, masks[2].a, masks[3].a);
|
||||
maskSmoothness *= half4(_MaskMapRemapScale0.a, _MaskMapRemapScale1.a, _MaskMapRemapScale2.a, _MaskMapRemapScale3.a);
|
||||
maskSmoothness += half4(_MaskMapRemapOffset0.a, _MaskMapRemapOffset1.a, _MaskMapRemapOffset2.a, _MaskMapRemapOffset3.a);
|
||||
|
||||
defaultSmoothness = lerp(defaultSmoothness, maskSmoothness, hasMask);
|
||||
half smoothness = dot(splatControl, defaultSmoothness);
|
||||
|
||||
return half4(mixedDiffuse.rgb, smoothness);
|
||||
}
|
||||
|
||||
|
||||
#else
|
||||
float4 Vert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 Frag() : SV_TARGET {return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Name" = "_MetallicTex"
|
||||
"Format" = "R8"
|
||||
"Size" = "1/4"
|
||||
"EmptyColor" = "FF000000"
|
||||
}
|
||||
|
||||
ZTest Always Cull Off ZWrite Off
|
||||
Blend One [_DstBlend]
|
||||
|
||||
HLSLPROGRAM
|
||||
|
||||
#pragma vertex Vert
|
||||
#pragma fragment Frag
|
||||
|
||||
#ifdef URP_ENABLED
|
||||
Varyings Vert(Attributes IN)
|
||||
{
|
||||
Varyings output = (Varyings)0;
|
||||
|
||||
output.clipPos = TransformWorldToHClip(IN.positionOS.xyz);
|
||||
|
||||
// This is just like the other in that it is from TerrainLitPasses
|
||||
output.uvMainAndLM.xy = IN.texcoord;
|
||||
output.uvSplat01.xy = TRANSFORM_TEX(IN.texcoord, _Splat0);
|
||||
output.uvSplat01.zw = TRANSFORM_TEX(IN.texcoord, _Splat1);
|
||||
output.uvSplat23.xy = TRANSFORM_TEX(IN.texcoord, _Splat2);
|
||||
output.uvSplat23.zw = TRANSFORM_TEX(IN.texcoord, _Splat3);
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
half4 Frag(Varyings IN) : SV_Target
|
||||
{
|
||||
half3 normalTS = half3(0.0h, 0.0h, 1.0h);
|
||||
half4 splatControl;
|
||||
half weight;
|
||||
half4 mixedDiffuse;
|
||||
half4 defaultSmoothness;
|
||||
|
||||
half4 masks[4];
|
||||
float2 splatUV = (IN.uvMainAndLM.xy * (_Control_TexelSize.zw - 1.0f) + 0.5f) * _Control_TexelSize.xy;
|
||||
splatControl = SAMPLE_TEXTURE2D(_Control, sampler_Control, splatUV);
|
||||
|
||||
masks[0] = 1.0h;
|
||||
masks[1] = 1.0h;
|
||||
masks[2] = 1.0h;
|
||||
masks[3] = 1.0h;
|
||||
|
||||
#ifdef _MASKMAP
|
||||
masks[0] = SAMPLE_TEXTURE2D(_Mask0, sampler_Mask0, IN.uvSplat01.xy);
|
||||
masks[1] = SAMPLE_TEXTURE2D(_Mask1, sampler_Mask0, IN.uvSplat01.zw);
|
||||
masks[2] = SAMPLE_TEXTURE2D(_Mask2, sampler_Mask0, IN.uvSplat23.xy);
|
||||
masks[3] = SAMPLE_TEXTURE2D(_Mask3, sampler_Mask0, IN.uvSplat23.zw);
|
||||
|
||||
#ifdef _TERRAIN_BLEND_HEIGHT
|
||||
HeightBasedSplatModify(splatControl, masks);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
SplatmapMix(IN.uvMainAndLM, IN.uvSplat01, IN.uvSplat23, splatControl, weight, mixedDiffuse, defaultSmoothness, normalTS);
|
||||
|
||||
half4 hasMask = half4(_LayerHasMask0, _LayerHasMask1, _LayerHasMask2, _LayerHasMask3);
|
||||
|
||||
half4 defaultMetallic = half4(_Metallic0, _Metallic1, _Metallic2, _Metallic3);
|
||||
half4 maskMetallic = half4(masks[0].r, masks[1].r, masks[2].r, masks[3].r);
|
||||
maskMetallic *= half4(_MaskMapRemapScale0.r, _MaskMapRemapScale1.r, _MaskMapRemapScale3.r, _MaskMapRemapScale3.r);
|
||||
maskMetallic += half4(_MaskMapRemapOffset0.r, _MaskMapRemapOffset1.r, _MaskMapRemapOffset2.r, _MaskMapRemapOffset3.r);
|
||||
|
||||
defaultMetallic = lerp(defaultMetallic, maskMetallic, hasMask);
|
||||
half metallic = dot(splatControl, defaultMetallic);
|
||||
|
||||
return metallic;
|
||||
}
|
||||
|
||||
#else
|
||||
float4 Vert() : SV_POSITION { return float4(0, 0, 0, 1);}
|
||||
float4 Frag() : SV_TARGET{return float4(0, 0, 0, 1);}
|
||||
#endif
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 19a97e21de81a574283f0a65326177fe
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,524 @@
|
|||
// Keyword: ADDED
|
||||
|
||||
#ifndef UNIVERSAL_TERRAIN_LIT_PASSES_INCLUDED
|
||||
#define UNIVERSAL_TERRAIN_LIT_PASSES_INCLUDED
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/UnityGBuffer.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DBuffer.hlsl"
|
||||
|
||||
struct Attributes
|
||||
{
|
||||
float4 positionOS : POSITION;
|
||||
float3 normalOS : NORMAL;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||
};
|
||||
|
||||
// ----- ADDED -----
|
||||
TEXTURE2D(_ColorMap);
|
||||
SAMPLER(sampler_ColorMap);
|
||||
float4 _OffsetSize;
|
||||
// -----
|
||||
|
||||
struct Varyings
|
||||
{
|
||||
float4 uvMainAndLM : TEXCOORD0; // xy: control, zw: lightmap
|
||||
#ifndef TERRAIN_SPLAT_BASEPASS
|
||||
float4 uvSplat01 : TEXCOORD1; // xy: splat0, zw: splat1
|
||||
float4 uvSplat23 : TEXCOORD2; // xy: splat2, zw: splat3
|
||||
#endif
|
||||
|
||||
#if defined(_NORMALMAP) && !defined(ENABLE_TERRAIN_PERPIXEL_NORMAL)
|
||||
half4 normal : TEXCOORD3; // xyz: normal, w: viewDir.x
|
||||
half4 tangent : TEXCOORD4; // xyz: tangent, w: viewDir.y
|
||||
half4 bitangent : TEXCOORD5; // xyz: bitangent, w: viewDir.z
|
||||
#else
|
||||
half3 normal : TEXCOORD3;
|
||||
half3 vertexSH : TEXCOORD4; // SH
|
||||
#endif
|
||||
|
||||
#ifdef _ADDITIONAL_LIGHTS_VERTEX
|
||||
half4 fogFactorAndVertexLight : TEXCOORD6; // x: fogFactor, yzw: vertex light
|
||||
#else
|
||||
half fogFactor : TEXCOORD6;
|
||||
#endif
|
||||
|
||||
float3 positionWS : TEXCOORD7;
|
||||
|
||||
#if defined(REQUIRES_VERTEX_SHADOW_COORD_INTERPOLATOR)
|
||||
float4 shadowCoord : TEXCOORD8;
|
||||
#endif
|
||||
|
||||
#if defined(DYNAMICLIGHTMAP_ON)
|
||||
float2 dynamicLightmapUV : TEXCOORD9;
|
||||
#endif
|
||||
|
||||
float4 clipPos : SV_POSITION;
|
||||
UNITY_VERTEX_OUTPUT_STEREO
|
||||
};
|
||||
|
||||
void InitializeInputData(Varyings IN, half3 normalTS, out InputData inputData)
|
||||
{
|
||||
inputData = (InputData)0;
|
||||
|
||||
inputData.positionWS = IN.positionWS;
|
||||
inputData.positionCS = IN.clipPos;
|
||||
|
||||
#if defined(_NORMALMAP) && !defined(ENABLE_TERRAIN_PERPIXEL_NORMAL)
|
||||
half3 viewDirWS = half3(IN.normal.w, IN.tangent.w, IN.bitangent.w);
|
||||
inputData.tangentToWorld = half3x3(-IN.tangent.xyz, IN.bitangent.xyz, IN.normal.xyz);
|
||||
inputData.normalWS = TransformTangentToWorld(normalTS, inputData.tangentToWorld);
|
||||
half3 SH = 0;
|
||||
#elif defined(ENABLE_TERRAIN_PERPIXEL_NORMAL)
|
||||
half3 viewDirWS = GetWorldSpaceNormalizeViewDir(IN.positionWS);
|
||||
float2 sampleCoords = (IN.uvMainAndLM.xy / _TerrainHeightmapRecipSize.zw + 0.5f) * _TerrainHeightmapRecipSize.xy;
|
||||
half3 normalWS = TransformObjectToWorldNormal(normalize(SAMPLE_TEXTURE2D(_TerrainNormalmapTexture, sampler_TerrainNormalmapTexture, sampleCoords).rgb * 2 - 1));
|
||||
half3 tangentWS = cross(GetObjectToWorldMatrix()._13_23_33, normalWS);
|
||||
inputData.normalWS = TransformTangentToWorld(normalTS, half3x3(-tangentWS, cross(normalWS, tangentWS), normalWS));
|
||||
half3 SH = 0;
|
||||
#else
|
||||
half3 viewDirWS = GetWorldSpaceNormalizeViewDir(IN.positionWS);
|
||||
inputData.normalWS = IN.normal;
|
||||
half3 SH = IN.vertexSH;
|
||||
#endif
|
||||
|
||||
inputData.normalWS = NormalizeNormalPerPixel(inputData.normalWS);
|
||||
inputData.viewDirectionWS = viewDirWS;
|
||||
|
||||
#if defined(REQUIRES_VERTEX_SHADOW_COORD_INTERPOLATOR)
|
||||
inputData.shadowCoord = IN.shadowCoord;
|
||||
#elif defined(MAIN_LIGHT_CALCULATE_SHADOWS)
|
||||
inputData.shadowCoord = TransformWorldToShadowCoord(inputData.positionWS);
|
||||
#else
|
||||
inputData.shadowCoord = float4(0, 0, 0, 0);
|
||||
#endif
|
||||
|
||||
#ifdef _ADDITIONAL_LIGHTS_VERTEX
|
||||
inputData.fogCoord = InitializeInputDataFog(float4(IN.positionWS, 1.0), IN.fogFactorAndVertexLight.x);
|
||||
inputData.vertexLighting = IN.fogFactorAndVertexLight.yzw;
|
||||
#else
|
||||
inputData.fogCoord = InitializeInputDataFog(float4(IN.positionWS, 1.0), IN.fogFactor);
|
||||
#endif
|
||||
|
||||
#if defined(DYNAMICLIGHTMAP_ON)
|
||||
inputData.bakedGI = SAMPLE_GI(IN.uvMainAndLM.zw, IN.dynamicLightmapUV, SH, inputData.normalWS);
|
||||
#else
|
||||
inputData.bakedGI = SAMPLE_GI(IN.uvMainAndLM.zw, SH, inputData.normalWS);
|
||||
#endif
|
||||
inputData.normalizedScreenSpaceUV = GetNormalizedScreenSpaceUV(IN.clipPos);
|
||||
inputData.shadowMask = SAMPLE_SHADOWMASK(IN.uvMainAndLM.zw)
|
||||
|
||||
#if defined(DEBUG_DISPLAY)
|
||||
#if defined(DYNAMICLIGHTMAP_ON)
|
||||
inputData.dynamicLightmapUV = IN.dynamicLightmapUV;
|
||||
#endif
|
||||
#if defined(LIGHTMAP_ON)
|
||||
inputData.staticLightmapUV = IN.uvMainAndLM.zw;
|
||||
#else
|
||||
inputData.vertexSH = SH;
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifndef TERRAIN_SPLAT_BASEPASS
|
||||
|
||||
void NormalMapMix(float4 uvSplat01, float4 uvSplat23, inout half4 splatControl, inout half3 mixedNormal)
|
||||
{
|
||||
#if defined(_NORMALMAP)
|
||||
half3 nrm = half(0.0);
|
||||
nrm += splatControl.r * UnpackNormalScale(SAMPLE_TEXTURE2D(_Normal0, sampler_Normal0, uvSplat01.xy), _NormalScale0);
|
||||
nrm += splatControl.g * UnpackNormalScale(SAMPLE_TEXTURE2D(_Normal1, sampler_Normal0, uvSplat01.zw), _NormalScale1);
|
||||
nrm += splatControl.b * UnpackNormalScale(SAMPLE_TEXTURE2D(_Normal2, sampler_Normal0, uvSplat23.xy), _NormalScale2);
|
||||
nrm += splatControl.a * UnpackNormalScale(SAMPLE_TEXTURE2D(_Normal3, sampler_Normal0, uvSplat23.zw), _NormalScale3);
|
||||
|
||||
// avoid risk of NaN when normalizing.
|
||||
#if HAS_HALF
|
||||
nrm.z += half(0.01);
|
||||
#else
|
||||
nrm.z += 1e-5f;
|
||||
#endif
|
||||
|
||||
mixedNormal = normalize(nrm.xyz);
|
||||
#endif
|
||||
}
|
||||
|
||||
void SplatmapMix(float4 uvMainAndLM, float4 uvSplat01, float4 uvSplat23, inout half4 splatControl, out half weight, out half4 mixedDiffuse, out half4 defaultSmoothness, inout half3 mixedNormal)
|
||||
{
|
||||
half4 diffAlbedo[4];
|
||||
|
||||
diffAlbedo[0] = SAMPLE_TEXTURE2D(_Splat0, sampler_Splat0, uvSplat01.xy);
|
||||
diffAlbedo[1] = SAMPLE_TEXTURE2D(_Splat1, sampler_Splat0, uvSplat01.zw);
|
||||
diffAlbedo[2] = SAMPLE_TEXTURE2D(_Splat2, sampler_Splat0, uvSplat23.xy);
|
||||
diffAlbedo[3] = SAMPLE_TEXTURE2D(_Splat3, sampler_Splat0, uvSplat23.zw);
|
||||
|
||||
// This might be a bit of a gamble -- the assumption here is that if the diffuseMap has no
|
||||
// alpha channel, then diffAlbedo[n].a = 1.0 (and _DiffuseHasAlphaN = 0.0)
|
||||
// Prior to coming in, _SmoothnessN is actually set to max(_DiffuseHasAlphaN, _SmoothnessN)
|
||||
// This means that if we have an alpha channel, _SmoothnessN is locked to 1.0 and
|
||||
// otherwise, the true slider value is passed down and diffAlbedo[n].a == 1.0.
|
||||
defaultSmoothness = half4(diffAlbedo[0].a, diffAlbedo[1].a, diffAlbedo[2].a, diffAlbedo[3].a);
|
||||
defaultSmoothness *= half4(_Smoothness0, _Smoothness1, _Smoothness2, _Smoothness3);
|
||||
|
||||
#ifndef _TERRAIN_BLEND_HEIGHT // density blending
|
||||
if(_NumLayersCount <= 4)
|
||||
{
|
||||
// 20.0 is the number of steps in inputAlphaMask (Density mask. We decided 20 empirically)
|
||||
half4 opacityAsDensity = saturate((half4(diffAlbedo[0].a, diffAlbedo[1].a, diffAlbedo[2].a, diffAlbedo[3].a) - (1 - splatControl)) * 20.0);
|
||||
opacityAsDensity += 0.001h * splatControl; // if all weights are zero, default to what the blend mask says
|
||||
half4 useOpacityAsDensityParam = { _DiffuseRemapScale0.w, _DiffuseRemapScale1.w, _DiffuseRemapScale2.w, _DiffuseRemapScale3.w }; // 1 is off
|
||||
splatControl = lerp(opacityAsDensity, splatControl, useOpacityAsDensityParam);
|
||||
}
|
||||
#endif
|
||||
|
||||
// Now that splatControl has changed, we can compute the final weight and normalize
|
||||
weight = dot(splatControl, 1.0h);
|
||||
|
||||
#ifdef TERRAIN_SPLAT_ADDPASS
|
||||
clip(weight <= 0.005h ? -1.0h : 1.0h);
|
||||
#endif
|
||||
|
||||
#ifndef _TERRAIN_BASEMAP_GEN
|
||||
// Normalize weights before lighting and restore weights in final modifier functions so that the overal
|
||||
// lighting result can be correctly weighted.
|
||||
splatControl /= (weight + HALF_MIN);
|
||||
#endif
|
||||
|
||||
mixedDiffuse = 0.0h;
|
||||
mixedDiffuse += diffAlbedo[0] * half4(_DiffuseRemapScale0.rgb * splatControl.rrr, 1.0h);
|
||||
mixedDiffuse += diffAlbedo[1] * half4(_DiffuseRemapScale1.rgb * splatControl.ggg, 1.0h);
|
||||
mixedDiffuse += diffAlbedo[2] * half4(_DiffuseRemapScale2.rgb * splatControl.bbb, 1.0h);
|
||||
mixedDiffuse += diffAlbedo[3] * half4(_DiffuseRemapScale3.rgb * splatControl.aaa, 1.0h);
|
||||
|
||||
// ----- ADDED -----
|
||||
mixedDiffuse.rgb *= SAMPLE_TEXTURE2D(_ColorMap, sampler_ColorMap, uvMainAndLM * _OffsetSize.zw + _OffsetSize.xy).rgb;
|
||||
// -----
|
||||
|
||||
NormalMapMix(uvSplat01, uvSplat23, splatControl, mixedNormal);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef _TERRAIN_BLEND_HEIGHT
|
||||
void HeightBasedSplatModify(inout half4 splatControl, in half4 masks[4])
|
||||
{
|
||||
// heights are in mask blue channel, we multiply by the splat Control weights to get combined height
|
||||
half4 splatHeight = half4(masks[0].b, masks[1].b, masks[2].b, masks[3].b) * splatControl.rgba;
|
||||
half maxHeight = max(splatHeight.r, max(splatHeight.g, max(splatHeight.b, splatHeight.a)));
|
||||
|
||||
// Ensure that the transition height is not zero.
|
||||
half transition = max(_HeightTransition, 1e-5);
|
||||
|
||||
// This sets the highest splat to "transition", and everything else to a lower value relative to that, clamping to zero
|
||||
// Then we clamp this to zero and normalize everything
|
||||
half4 weightedHeights = splatHeight + transition - maxHeight.xxxx;
|
||||
weightedHeights = max(0, weightedHeights);
|
||||
|
||||
// We need to add an epsilon here for active layers (hence the blendMask again)
|
||||
// so that at least a layer shows up if everything's too low.
|
||||
weightedHeights = (weightedHeights + 1e-6) * splatControl;
|
||||
|
||||
// Normalize (and clamp to epsilon to keep from dividing by zero)
|
||||
half sumHeight = max(dot(weightedHeights, half4(1, 1, 1, 1)), 1e-6);
|
||||
splatControl = weightedHeights / sumHeight.xxxx;
|
||||
}
|
||||
#endif
|
||||
|
||||
void SplatmapFinalColor(inout half4 color, half fogCoord)
|
||||
{
|
||||
color.rgb *= color.a;
|
||||
|
||||
#ifndef TERRAIN_GBUFFER // Technically we don't need fogCoord, but it is still passed from the vertex shader.
|
||||
|
||||
#ifdef TERRAIN_SPLAT_ADDPASS
|
||||
color.rgb = MixFogColor(color.rgb, half3(0,0,0), fogCoord);
|
||||
#else
|
||||
color.rgb = MixFog(color.rgb, fogCoord);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Vertex and Fragment functions //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Used in Standard Terrain shader
|
||||
Varyings SplatmapVert(Attributes v)
|
||||
{
|
||||
Varyings o = (Varyings)0;
|
||||
|
||||
UNITY_SETUP_INSTANCE_ID(v);
|
||||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
|
||||
TerrainInstancing(v.positionOS, v.normalOS, v.texcoord);
|
||||
|
||||
VertexPositionInputs Attributes = GetVertexPositionInputs(v.positionOS.xyz);
|
||||
|
||||
o.uvMainAndLM.xy = v.texcoord;
|
||||
o.uvMainAndLM.zw = v.texcoord * unity_LightmapST.xy + unity_LightmapST.zw;
|
||||
|
||||
#ifndef TERRAIN_SPLAT_BASEPASS
|
||||
o.uvSplat01.xy = TRANSFORM_TEX(v.texcoord, _Splat0);
|
||||
o.uvSplat01.zw = TRANSFORM_TEX(v.texcoord, _Splat1);
|
||||
o.uvSplat23.xy = TRANSFORM_TEX(v.texcoord, _Splat2);
|
||||
o.uvSplat23.zw = TRANSFORM_TEX(v.texcoord, _Splat3);
|
||||
#endif
|
||||
|
||||
#if defined(DYNAMICLIGHTMAP_ON)
|
||||
o.dynamicLightmapUV = v.texcoord * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;
|
||||
#endif
|
||||
|
||||
#if defined(_NORMALMAP) && !defined(ENABLE_TERRAIN_PERPIXEL_NORMAL)
|
||||
half3 viewDirWS = GetWorldSpaceNormalizeViewDir(Attributes.positionWS);
|
||||
float4 vertexTangent = float4(cross(float3(0, 0, 1), v.normalOS), 1.0);
|
||||
VertexNormalInputs normalInput = GetVertexNormalInputs(v.normalOS, vertexTangent);
|
||||
|
||||
o.normal = half4(normalInput.normalWS, viewDirWS.x);
|
||||
o.tangent = half4(normalInput.tangentWS, viewDirWS.y);
|
||||
o.bitangent = half4(normalInput.bitangentWS, viewDirWS.z);
|
||||
#else
|
||||
o.normal = TransformObjectToWorldNormal(v.normalOS);
|
||||
o.vertexSH = SampleSH(o.normal);
|
||||
#endif
|
||||
|
||||
half fogFactor = 0;
|
||||
#if !defined(_FOG_FRAGMENT)
|
||||
fogFactor = ComputeFogFactor(Attributes.positionCS.z);
|
||||
#endif
|
||||
|
||||
#ifdef _ADDITIONAL_LIGHTS_VERTEX
|
||||
o.fogFactorAndVertexLight.x = fogFactor;
|
||||
o.fogFactorAndVertexLight.yzw = VertexLighting(Attributes.positionWS, o.normal.xyz);
|
||||
#else
|
||||
o.fogFactor = fogFactor;
|
||||
#endif
|
||||
|
||||
o.positionWS = Attributes.positionWS;
|
||||
o.clipPos = Attributes.positionCS;
|
||||
|
||||
#if defined(REQUIRES_VERTEX_SHADOW_COORD_INTERPOLATOR)
|
||||
o.shadowCoord = GetShadowCoord(Attributes);
|
||||
#endif
|
||||
|
||||
return o;
|
||||
}
|
||||
|
||||
void ComputeMasks(out half4 masks[4], half4 hasMask, Varyings IN)
|
||||
{
|
||||
masks[0] = 0.5h;
|
||||
masks[1] = 0.5h;
|
||||
masks[2] = 0.5h;
|
||||
masks[3] = 0.5h;
|
||||
|
||||
#ifdef _MASKMAP
|
||||
masks[0] = lerp(masks[0], SAMPLE_TEXTURE2D(_Mask0, sampler_Mask0, IN.uvSplat01.xy), hasMask.x);
|
||||
masks[1] = lerp(masks[1], SAMPLE_TEXTURE2D(_Mask1, sampler_Mask0, IN.uvSplat01.zw), hasMask.y);
|
||||
masks[2] = lerp(masks[2], SAMPLE_TEXTURE2D(_Mask2, sampler_Mask0, IN.uvSplat23.xy), hasMask.z);
|
||||
masks[3] = lerp(masks[3], SAMPLE_TEXTURE2D(_Mask3, sampler_Mask0, IN.uvSplat23.zw), hasMask.w);
|
||||
#endif
|
||||
|
||||
masks[0] *= _MaskMapRemapScale0.rgba;
|
||||
masks[0] += _MaskMapRemapOffset0.rgba;
|
||||
masks[1] *= _MaskMapRemapScale1.rgba;
|
||||
masks[1] += _MaskMapRemapOffset1.rgba;
|
||||
masks[2] *= _MaskMapRemapScale2.rgba;
|
||||
masks[2] += _MaskMapRemapOffset2.rgba;
|
||||
masks[3] *= _MaskMapRemapScale3.rgba;
|
||||
masks[3] += _MaskMapRemapOffset3.rgba;
|
||||
}
|
||||
|
||||
// Used in Standard Terrain shader
|
||||
#ifdef TERRAIN_GBUFFER
|
||||
FragmentOutput SplatmapFragment(Varyings IN)
|
||||
#else
|
||||
half4 SplatmapFragment(Varyings IN) : SV_TARGET
|
||||
#endif
|
||||
{
|
||||
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN);
|
||||
#ifdef _ALPHATEST_ON
|
||||
ClipHoles(IN.uvMainAndLM.xy);
|
||||
#endif
|
||||
|
||||
half3 normalTS = half3(0.0h, 0.0h, 1.0h);
|
||||
#ifdef TERRAIN_SPLAT_BASEPASS
|
||||
half3 albedo = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, IN.uvMainAndLM.xy).rgb;
|
||||
half smoothness = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, IN.uvMainAndLM.xy).a;
|
||||
half metallic = SAMPLE_TEXTURE2D(_MetallicTex, sampler_MetallicTex, IN.uvMainAndLM.xy).r;
|
||||
half alpha = 1;
|
||||
half occlusion = 1;
|
||||
#else
|
||||
|
||||
half4 hasMask = half4(_LayerHasMask0, _LayerHasMask1, _LayerHasMask2, _LayerHasMask3);
|
||||
half4 masks[4];
|
||||
ComputeMasks(masks, hasMask, IN);
|
||||
|
||||
float2 splatUV = (IN.uvMainAndLM.xy * (_Control_TexelSize.zw - 1.0f) + 0.5f) * _Control_TexelSize.xy;
|
||||
half4 splatControl = SAMPLE_TEXTURE2D(_Control, sampler_Control, splatUV);
|
||||
|
||||
half alpha = dot(splatControl, 1.0h);
|
||||
#ifdef _TERRAIN_BLEND_HEIGHT
|
||||
// disable Height Based blend when there are more than 4 layers (multi-pass breaks the normalization)
|
||||
if (_NumLayersCount <= 4)
|
||||
HeightBasedSplatModify(splatControl, masks);
|
||||
#endif
|
||||
|
||||
half weight;
|
||||
half4 mixedDiffuse;
|
||||
half4 defaultSmoothness;
|
||||
SplatmapMix(IN.uvMainAndLM, IN.uvSplat01, IN.uvSplat23, splatControl, weight, mixedDiffuse, defaultSmoothness, normalTS);
|
||||
half3 albedo = mixedDiffuse.rgb;
|
||||
|
||||
half4 defaultMetallic = half4(_Metallic0, _Metallic1, _Metallic2, _Metallic3);
|
||||
half4 defaultOcclusion = half4(_MaskMapRemapScale0.g, _MaskMapRemapScale1.g, _MaskMapRemapScale2.g, _MaskMapRemapScale3.g) +
|
||||
half4(_MaskMapRemapOffset0.g, _MaskMapRemapOffset1.g, _MaskMapRemapOffset2.g, _MaskMapRemapOffset3.g);
|
||||
|
||||
half4 maskSmoothness = half4(masks[0].a, masks[1].a, masks[2].a, masks[3].a);
|
||||
defaultSmoothness = lerp(defaultSmoothness, maskSmoothness, hasMask);
|
||||
half smoothness = dot(splatControl, defaultSmoothness);
|
||||
|
||||
half4 maskMetallic = half4(masks[0].r, masks[1].r, masks[2].r, masks[3].r);
|
||||
defaultMetallic = lerp(defaultMetallic, maskMetallic, hasMask);
|
||||
half metallic = dot(splatControl, defaultMetallic);
|
||||
|
||||
half4 maskOcclusion = half4(masks[0].g, masks[1].g, masks[2].g, masks[3].g);
|
||||
defaultOcclusion = lerp(defaultOcclusion, maskOcclusion, hasMask);
|
||||
half occlusion = dot(splatControl, defaultOcclusion);
|
||||
#endif
|
||||
|
||||
InputData inputData;
|
||||
InitializeInputData(IN, normalTS, inputData);
|
||||
SETUP_DEBUG_TEXTURE_DATA(inputData, IN.uvMainAndLM.xy, _BaseMap);
|
||||
|
||||
#if defined(_DBUFFER)
|
||||
half3 specular = half3(0.0h, 0.0h, 0.0h);
|
||||
ApplyDecal(IN.clipPos,
|
||||
albedo,
|
||||
specular,
|
||||
inputData.normalWS,
|
||||
metallic,
|
||||
occlusion,
|
||||
smoothness);
|
||||
#endif
|
||||
|
||||
#ifdef TERRAIN_GBUFFER
|
||||
|
||||
BRDFData brdfData;
|
||||
InitializeBRDFData(albedo, metallic, /* specular */ half3(0.0h, 0.0h, 0.0h), smoothness, alpha, brdfData);
|
||||
|
||||
// Baked lighting.
|
||||
half4 color;
|
||||
Light mainLight = GetMainLight(inputData.shadowCoord, inputData.positionWS, inputData.shadowMask);
|
||||
MixRealtimeAndBakedGI(mainLight, inputData.normalWS, inputData.bakedGI, inputData.shadowMask);
|
||||
color.rgb = GlobalIllumination(brdfData, inputData.bakedGI, occlusion, inputData.positionWS, inputData.normalWS, inputData.viewDirectionWS);
|
||||
color.a = alpha;
|
||||
SplatmapFinalColor(color, inputData.fogCoord);
|
||||
|
||||
// Dynamic lighting: emulate SplatmapFinalColor() by scaling gbuffer material properties. This will not give the same results
|
||||
// as forward renderer because we apply blending pre-lighting instead of post-lighting.
|
||||
// Blending of smoothness and normals is also not correct but close enough?
|
||||
brdfData.albedo.rgb *= alpha;
|
||||
brdfData.diffuse.rgb *= alpha;
|
||||
brdfData.specular.rgb *= alpha;
|
||||
brdfData.reflectivity *= alpha;
|
||||
inputData.normalWS = inputData.normalWS * alpha;
|
||||
smoothness *= alpha;
|
||||
|
||||
return BRDFDataToGbuffer(brdfData, inputData, smoothness, color.rgb, occlusion);
|
||||
|
||||
#else
|
||||
|
||||
half4 color = UniversalFragmentPBR(inputData, albedo, metallic, /* specular */ half3(0.0h, 0.0h, 0.0h), smoothness, occlusion, /* emission */ half3(0, 0, 0), alpha);
|
||||
|
||||
SplatmapFinalColor(color, inputData.fogCoord);
|
||||
|
||||
return half4(color.rgb, 1.0h);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Shadow pass
|
||||
|
||||
// Shadow Casting Light geometric parameters. These variables are used when applying the shadow Normal Bias and are set by UnityEngine.Rendering.Universal.ShadowUtils.SetupShadowCasterConstantBuffer in com.unity.render-pipelines.universal/Runtime/ShadowUtils.cs
|
||||
// For Directional lights, _LightDirection is used when applying shadow Normal Bias.
|
||||
// For Spot lights and Point lights, _LightPosition is used to compute the actual light direction because it is different at each shadow caster geometry vertex.
|
||||
float3 _LightDirection;
|
||||
float3 _LightPosition;
|
||||
|
||||
struct AttributesLean
|
||||
{
|
||||
float4 position : POSITION;
|
||||
float3 normalOS : NORMAL;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||
};
|
||||
|
||||
struct VaryingsLean
|
||||
{
|
||||
float4 clipPos : SV_POSITION;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
UNITY_VERTEX_OUTPUT_STEREO
|
||||
};
|
||||
|
||||
VaryingsLean ShadowPassVertex(AttributesLean v)
|
||||
{
|
||||
VaryingsLean o = (VaryingsLean)0;
|
||||
UNITY_SETUP_INSTANCE_ID(v);
|
||||
TerrainInstancing(v.position, v.normalOS, v.texcoord);
|
||||
|
||||
float3 positionWS = TransformObjectToWorld(v.position.xyz);
|
||||
float3 normalWS = TransformObjectToWorldNormal(v.normalOS);
|
||||
|
||||
#if _CASTING_PUNCTUAL_LIGHT_SHADOW
|
||||
float3 lightDirectionWS = normalize(_LightPosition - positionWS);
|
||||
#else
|
||||
float3 lightDirectionWS = _LightDirection;
|
||||
#endif
|
||||
|
||||
float4 clipPos = TransformWorldToHClip(ApplyShadowBias(positionWS, normalWS, lightDirectionWS));
|
||||
|
||||
#if UNITY_REVERSED_Z
|
||||
clipPos.z = min(clipPos.z, UNITY_NEAR_CLIP_VALUE);
|
||||
#else
|
||||
clipPos.z = max(clipPos.z, UNITY_NEAR_CLIP_VALUE);
|
||||
#endif
|
||||
|
||||
o.clipPos = clipPos;
|
||||
|
||||
o.texcoord = v.texcoord;
|
||||
|
||||
return o;
|
||||
}
|
||||
|
||||
half4 ShadowPassFragment(VaryingsLean IN) : SV_TARGET
|
||||
{
|
||||
#ifdef _ALPHATEST_ON
|
||||
ClipHoles(IN.texcoord);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Depth pass
|
||||
|
||||
VaryingsLean DepthOnlyVertex(AttributesLean v)
|
||||
{
|
||||
VaryingsLean o = (VaryingsLean)0;
|
||||
UNITY_SETUP_INSTANCE_ID(v);
|
||||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
|
||||
TerrainInstancing(v.position, v.normalOS);
|
||||
o.clipPos = TransformObjectToHClip(v.position.xyz);
|
||||
o.texcoord = v.texcoord;
|
||||
return o;
|
||||
}
|
||||
|
||||
half4 DepthOnlyFragment(VaryingsLean IN) : SV_TARGET
|
||||
{
|
||||
#ifdef _ALPHATEST_ON
|
||||
ClipHoles(IN.texcoord);
|
||||
#endif
|
||||
#ifdef SCENESELECTIONPASS
|
||||
// We use depth prepass for scene selection in the editor, this code allow to output the outline correctly
|
||||
return half4(_ObjectId, _PassValue, 1.0, 1.0);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif
|
|
@ -0,0 +1,3 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7ed16f50337b48ae8d088c45415b426f
|
||||
timeCreated: 1649776554
|
8
SSLR/Assets/WorldCreatorBridge/Content/Sprites.meta
Normal file
8
SSLR/Assets/WorldCreatorBridge/Content/Sprites.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b5762fa928f9f24498584fac2e07736f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/banner_wc.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/banner_wc.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2f8268093c659ec42a04ee6c0da451fe
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 300
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 512
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/banner_wc_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/banner_wc_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2670d04fa997e3d4799c11fb07abdecb
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 300
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 512
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_artstation.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_artstation.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c87f8b5c9ba2aae4e9f134e72d54ed40
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_artstation_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_artstation_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3b74727e7eb7743409a3b9c7c770ccfb
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_discord.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_discord.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ffe780bdaca2cb44298f4ecbd8b18b34
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_discord_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_discord_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 24bfcfb9f8e39144986a40cf468af9a3
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_facebook.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_facebook.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 35bf28f8a4f0f85478ced204f4edfdcf
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_facebook_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_facebook_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 28c4f6d911e2b9d4bb7f40c3e84d3c21
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_instagram.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_instagram.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1431fcfd17c52b14d8ac4b156f8de67c
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_instagram_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_instagram_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: de04463865039f34b94eee203dba5b6c
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitch.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitch.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 94a62168597dedc438eeced7620aefde
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitch_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitch_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 82b9227ade7cb4f4cba04d87571624f0
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitter.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitter.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 6e54abb7fe3052d479aa66ed492c39e7
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitter_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_twitter_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 403605d69a2908a4c943251e10e423ae
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_vimeo.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_vimeo.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 83938c3a31522db40a7df92168da6fd0
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_vimeo_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_vimeo_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fa02b926e87cf6e4f998cc04c245f361
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_wc.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_wc.png
(Stored with Git LFS)
Normal file
Binary file not shown.
110
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_wc.png.meta
Normal file
110
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_wc.png.meta
Normal file
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a04f8f5f849f5c74d93091bdca3604ca
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_wc_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_wc_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 54c30bac8e1f14d4a84ca8bab0db14de
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_youtube.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_youtube.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 03616ab801b1e814d87df7140eeed94d
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_youtube_inv.png
(Stored with Git LFS)
Normal file
BIN
SSLR/Assets/WorldCreatorBridge/Content/Sprites/icon_youtube_inv.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1c2657626d5c1ff4897deeadb92b571f
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 64
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
SSLR/Assets/WorldCreatorBridge/Content/Textures.meta
Normal file
8
SSLR/Assets/WorldCreatorBridge/Content/Textures.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ea61904b3223c3c4b9e9f3abd7eb5ec4
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue