master 5c75b66efc49 cached
74 files
171.9 KB
66.6k tokens
20 symbols
1 requests
Download .txt
Repository: muckSponge/Optically-Realistic-Water
Branch: master
Commit: 5c75b66efc49
Files: 74
Total size: 171.9 KB

Directory structure:
gitextract_me6j29t8/

├── .gitignore
├── LICENSE
├── README.md
└── Water/
    ├── .gitignore
    ├── Assets/
    │   ├── Plugins/
    │   │   ├── Editor/
    │   │   │   ├── .gitignore
    │   │   │   └── JetBrains.meta
    │   │   └── Editor.meta
    │   ├── Plugins.meta
    │   ├── Water/
    │   │   ├── Materials/
    │   │   │   ├── Skybox.mat
    │   │   │   ├── Skybox.mat.meta
    │   │   │   ├── Underwater.mat
    │   │   │   ├── Underwater.mat.meta
    │   │   │   ├── WaterSurface.mat
    │   │   │   └── WaterSurface.mat.meta
    │   │   ├── Materials.meta
    │   │   ├── Models/
    │   │   │   ├── terrain.fbx
    │   │   │   ├── terrain.fbx.meta
    │   │   │   ├── watersurface.fbx
    │   │   │   └── watersurface.fbx.meta
    │   │   ├── Models.meta
    │   │   ├── Prefabs/
    │   │   │   ├── Water Surface.prefab
    │   │   │   └── Water Surface.prefab.meta
    │   │   ├── Prefabs.meta
    │   │   ├── Scenes/
    │   │   │   ├── SampleScene/
    │   │   │   │   ├── LightingData.asset
    │   │   │   │   ├── LightingData.asset.meta
    │   │   │   │   ├── ReflectionProbe-0.exr
    │   │   │   │   ├── ReflectionProbe-0.exr.meta
    │   │   │   │   ├── ReflectionProbe-1.exr
    │   │   │   │   └── ReflectionProbe-1.exr.meta
    │   │   │   ├── SampleScene.meta
    │   │   │   ├── SampleScene.unity
    │   │   │   ├── SampleScene.unity.meta
    │   │   │   ├── SampleScene_Profiles/
    │   │   │   │   ├── Post-process Volume Profile.asset
    │   │   │   │   └── Post-process Volume Profile.asset.meta
    │   │   │   └── SampleScene_Profiles.meta
    │   │   ├── Scenes.meta
    │   │   ├── Scripts/
    │   │   │   ├── CameraMove.cs
    │   │   │   ├── CameraMove.cs.meta
    │   │   │   ├── LightGrab.cs
    │   │   │   ├── LightGrab.cs.meta
    │   │   │   ├── Water.cs
    │   │   │   ├── Water.cs.meta
    │   │   │   ├── WaterSettings.cs
    │   │   │   ├── WaterSettings.cs.meta
    │   │   │   ├── WaterUtility.cs
    │   │   │   └── WaterUtility.cs.meta
    │   │   ├── Scripts.meta
    │   │   ├── Shaders/
    │   │   │   ├── WaterSurface.shader
    │   │   │   ├── WaterSurface.shader.meta
    │   │   │   ├── WaterUnder.shader
    │   │   │   └── WaterUnder.shader.meta
    │   │   ├── Shaders.meta
    │   │   ├── Textures/
    │   │   │   ├── grid.png.meta
    │   │   │   └── water-normal.png.meta
    │   │   └── Textures.meta
    │   └── Water.meta
    ├── Packages/
    │   └── manifest.json
    └── ProjectSettings/
        ├── AudioManager.asset
        ├── ClusterInputManager.asset
        ├── DynamicsManager.asset
        ├── EditorBuildSettings.asset
        ├── EditorSettings.asset
        ├── GraphicsSettings.asset
        ├── InputManager.asset
        ├── NavMeshAreas.asset
        ├── NetworkManager.asset
        ├── Physics2DSettings.asset
        ├── PresetManager.asset
        ├── ProjectSettings.asset
        ├── ProjectVersion.txt
        ├── QualitySettings.asset
        ├── TagManager.asset
        ├── TimeManager.asset
        └── UnityConnectSettings.asset

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitignore
================================================
# macOS
# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# Windows
# Windows thumbnail cache files
Thumbs.db
ehthumbs.db
ehthumbs_vista.db

# Dump file
*.stackdump

# Folder config file
[Dd]esktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp

# Windows shortcuts
*.lnk

# Linux
*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

.idea/

================================================
FILE: LICENSE
================================================
MIT License

Copyright (c) 2018 Muck

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: README.md
================================================
# Optically Realistic Water
A Unity port of Martins Upitis' fantastic [ocean water shader](https://devlog-martinsh.blogspot.com/2013/09/waterunderwater-sky-shader-update-02.html), which was originally coded in GLSL for Blender.

![water](https://user-images.githubusercontent.com/5405629/47149964-7a570800-d318-11e8-9420-74cf4619b35e.jpg)

## Contents
The shader actually consists of two parts:
* WaterSurface.shader
* WaterUnder.shader

WaterSurface.shader is intended to be used with the water plane and renders reflections, subsurface scattering, etc.

WaterUnder.shader must be applied to any renderers which could potentially be submerged in the water (such as the terrain, etc.).

Water.cs should be attached to the water plane and handles planar reflections and all shader parameters. It is mostly self-explanatory if you are at all familiar with Unity's existing water shader.

Just like in Martins' project, you can click and drag the sun into any position you like.

## Features
* Reflection with accurate fresnel reflectance model
* Refraction with chromatic aberration
* Projected caustics on geometry from the water surface based on normals
* Seamless transition to underwater (no post effects used)
* Accurate water volume with light scattering
* View and light ray color extinction based on water color and sunlight

## Additional features/changes
* Refraction is masked based on depth to prevent foreground distortion artefacts
* Normal map intensity fades out with distance to prevent excessive distortion artefacts
* Clip plane offset depends on camera distance from water plane, which reduces artefacts when close to surface
* Some shader calculations moved into scripts (sun colour, for example)
* Some optimisations (much more could be done here)

## Removed/unported features
* Simple coastline detection (I didn't want this shader to rely on baked shoreline maps)
* "Caustic fringe" effect
* Above/below water transition droplet post effect
* Underwater distortion (it's not a real physical phenomenon so I chose to remove it)
* "Glitter" post effect

## Limitations
Due to the required underwater shader, you may find it very difficult to adapt this to an existing project and thus it should be considered more of a prototype or proof of concept. This is also a limitation of Martins' original shader.

The shader uses forward rendering and has not been tested in deferred.


================================================
FILE: Water/.gitignore
================================================
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
Assets/AssetStoreTools*

# Visual Studio 2015 cache directory
/.vs/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta

# Unity3D Generated File On Crash Reports
sysinfo.txt

# Builds
*.apk
#*.unitypackage

================================================
FILE: Water/Assets/Plugins/Editor/.gitignore
================================================
[Jj]et[Bb]rains/

================================================
FILE: Water/Assets/Plugins/Editor/JetBrains.meta
================================================
fileFormatVersion: 2
guid: 000f9a97b0c034e85834df174bcc9506
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Plugins/Editor.meta
================================================
fileFormatVersion: 2
guid: 9eaaf39c5592849cb9a2985b96401ad8
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Plugins.meta
================================================
fileFormatVersion: 2
guid: 640382a6168b94ee69c490b6eb71a5d9
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Materials/Skybox.mat
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
  serializedVersion: 6
  m_ObjectHideFlags: 0
  m_PrefabParentObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_Name: Skybox
  m_Shader: {fileID: 106, guid: 0000000000000000f000000000000000, type: 0}
  m_ShaderKeywords: _SUNDISK_HIGH_QUALITY
  m_LightmapFlags: 4
  m_EnableInstancingVariants: 0
  m_DoubleSidedGI: 0
  m_CustomRenderQueue: -1
  stringTagMap: {}
  disabledShaderPasses: []
  m_SavedProperties:
    serializedVersion: 3
    m_TexEnvs: []
    m_Floats:
    - _AtmosphereThickness: 1
    - _Exposure: 1.3
    - _SunDisk: 2
    - _SunSize: 0.04
    - _SunSizeConvergence: 5
    m_Colors:
    - _GroundColor: {r: 0.36899996, g: 0.34899998, b: 0.34099993, a: 1}
    - _SkyTint: {r: 0.5, g: 0.5, b: 0.5, a: 1}


================================================
FILE: Water/Assets/Water/Materials/Skybox.mat.meta
================================================
fileFormatVersion: 2
guid: 4a8aa65aac3ec4b3fa72f539852b84f9
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 2100000
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Materials/Underwater.mat
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
  serializedVersion: 6
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_Name: Underwater
  m_Shader: {fileID: 4800000, guid: 891ac3ba7a1754646afff4b89a5a8a80, type: 3}
  m_ShaderKeywords: 
  m_LightmapFlags: 4
  m_EnableInstancingVariants: 0
  m_DoubleSidedGI: 0
  m_CustomRenderQueue: -1
  stringTagMap: {}
  disabledShaderPasses: []
  m_SavedProperties:
    serializedVersion: 3
    m_TexEnvs:
    - _BumpMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _DetailAlbedoMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _DetailMask:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _DetailNormalMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _EmissionMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _MainTex:
        m_Texture: {fileID: 2800000, guid: 65b81ca5f830e4f1f87398de1eedbad9, type: 3}
        m_Scale: {x: 5, y: 5}
        m_Offset: {x: 0, y: 0}
    - _MetallicGlossMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _NormalTex:
        m_Texture: {fileID: 2800000, guid: eca2a7fa5744c453b8a3dd4d9549b767, type: 3}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _OcclusionMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _ParallaxMap:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    m_Floats:
    - _BumpScale: 1
    - _Choppy: 0.8
    - _Cutoff: 0.5
    - _DetailNormalMapScale: 1
    - _DstBlend: 0
    - _GlossMapScale: 1
    - _Glossiness: 0.5
    - _GlossyReflections: 1
    - _Metallic: 0
    - _Mode: 0
    - _OcclusionStrength: 1
    - _Parallax: 0.02
    - _SmoothnessTextureChannel: 0
    - _SpecularHighlights: 1
    - _SrcBlend: 1
    - _UVSec: 0
    - _Visibility: 28
    - _WaterLevel: 0
    - _WaveScale: 1
    - _WinSpeed: 112.3
    - _WindSpeed: 0.6
    - _ZWrite: 1
    m_Colors:
    - _Color: {r: 1, g: 1, b: 1, a: 1}
    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
    - _WindDirection: {r: -0.5, g: -0.8, b: 0, a: 0}


================================================
FILE: Water/Assets/Water/Materials/Underwater.mat.meta
================================================
fileFormatVersion: 2
guid: 06618ef051ba8422a85c276d05b5be98
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 2100000
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Materials/WaterSurface.mat
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
  serializedVersion: 6
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_Name: WaterSurface
  m_Shader: {fileID: 4800000, guid: 6cdea64d237bb4dfa80eddee7ad81c28, type: 3}
  m_ShaderKeywords: 
  m_LightmapFlags: 4
  m_EnableInstancingVariants: 0
  m_DoubleSidedGI: 0
  m_CustomRenderQueue: -1
  stringTagMap: {}
  disabledShaderPasses: []
  m_SavedProperties:
    serializedVersion: 3
    m_TexEnvs:
    - _HeightTex:
        m_Texture: {fileID: 2800000, guid: 86b0a0e99191f4d88a704b569144426d, type: 3}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _NormalTex:
        m_Texture: {fileID: 2800000, guid: eca2a7fa5744c453b8a3dd4d9549b767, type: 3}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _ReflectionTex:
        m_Texture: {fileID: 0}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    - _WaterDepthTex:
        m_Texture: {fileID: 2800000, guid: 756446f7a0bd14438bd73b8cde7fb0cd, type: 3}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    m_Floats:
    - _Aberration: 0.002
    - _AberrationAmount: 0.002
    - _Bumpiness: 0.06
    - _Choppy: 0.8
    - _ReflBump: 0.04
    - _ReflDistortionAmount: 0.03
    - _RefrBump: 0.03
    - _RefrDistortionAmount: 0.04
    - _ScatterAmount: 3.5
    - _Visibility: 28
    - _WaterLevel: 0
    - _WaveScale: 1
    - _WindSpeed: 0.6
    m_Colors:
    - _ScatterColor: {r: 0, g: 1, b: 0.95, a: 1}
    - _WindDirection: {r: -0.5, g: -0.8, b: 0, a: 0}


================================================
FILE: Water/Assets/Water/Materials/WaterSurface.mat.meta
================================================
fileFormatVersion: 2
guid: 784f7b1ea93064cb79f69935ad0efad4
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 2100000
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Materials.meta
================================================
fileFormatVersion: 2
guid: 8ba53af3751684390ae8d35fde42204f
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Models/terrain.fbx.meta
================================================
fileFormatVersion: 2
guid: 230faa639d2cf4ee98a023a6526b47ff
ModelImporter:
  serializedVersion: 22
  fileIDToRecycleName:
    100000: //RootNode
    400000: //RootNode
    2100000: ground
    2300000: //RootNode
    3300000: //RootNode
    4300000: ground
  externalObjects: {}
  materials:
    importMaterials: 0
    materialName: 0
    materialSearch: 1
    materialLocation: 1
  animations:
    legacyGenerateAnimations: 4
    bakeSimulation: 0
    resampleCurves: 1
    optimizeGameObjects: 0
    motionNodeName: 
    rigImportErrors: 
    rigImportWarnings: 
    animationImportErrors: 
    animationImportWarnings: 
    animationRetargetingWarnings: 
    animationDoRetargetingWarnings: 0
    importAnimatedCustomProperties: 0
    importConstraints: 0
    animationCompression: 1
    animationRotationError: 0.5
    animationPositionError: 0.5
    animationScaleError: 0.5
    animationWrapMode: 0
    extraExposedTransformPaths: []
    extraUserProperties: []
    clipAnimations: []
    isReadable: 1
  meshes:
    lODScreenPercentages: []
    globalScale: 1
    meshCompression: 0
    addColliders: 0
    importVisibility: 1
    importBlendShapes: 1
    importCameras: 1
    importLights: 1
    swapUVChannels: 0
    generateSecondaryUV: 0
    useFileUnits: 1
    optimizeMeshForGPU: 1
    keepQuads: 0
    weldVertices: 1
    preserveHierarchy: 0
    indexFormat: 0
    secondaryUVAngleDistortion: 8
    secondaryUVAreaDistortion: 15.000001
    secondaryUVHardAngle: 88
    secondaryUVPackMargin: 4
    useFileScale: 1
  tangentSpace:
    normalSmoothAngle: 60
    normalImportMode: 0
    tangentImportMode: 3
    normalCalculationMode: 4
  importAnimation: 0
  copyAvatar: 0
  humanDescription:
    serializedVersion: 2
    human: []
    skeleton: []
    armTwist: 0.5
    foreArmTwist: 0.5
    upperLegTwist: 0.5
    legTwist: 0.5
    armStretch: 0.05
    legStretch: 0.05
    feetSpacing: 0
    rootMotionBoneName: 
    rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
    hasTranslationDoF: 0
    hasExtraRoot: 0
    skeletonHasParents: 1
  lastHumanDescriptionAvatarSource: {instanceID: 0}
  animationType: 0
  humanoidOversampling: 1
  additionalBone: 0
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Models/watersurface.fbx.meta
================================================
fileFormatVersion: 2
guid: f887aba9d4c2b4ed7aa199c12fda2221
ModelImporter:
  serializedVersion: 22
  fileIDToRecycleName:
    100000: blur
    100002: Cube
    100004: Cube.001
    100006: flare1
    100008: ground
    100010: lens
    100012: Plane.000
    100014: skybox
    100016: Sphere.000
    100018: Sphere.001
    100020: Sphere.002
    100022: Sphere.003
    100024: water
    100026: //RootNode
    400000: blur
    400002: Cube
    400004: Cube.001
    400006: flare1
    400008: ground
    400010: lens
    400012: Plane.000
    400014: skybox
    400016: Sphere.000
    400018: Sphere.001
    400020: Sphere.002
    400022: Sphere.003
    400024: water
    400026: //RootNode
    2100000: ground
    2100002: Material
    2100004: flare.002
    2100006: lens
    2100008: sky
    2100010: water
    2100012: flare.001
    2100014: blur
    2300000: blur
    2300002: Cube
    2300004: Cube.001
    2300006: flare1
    2300008: ground
    2300010: lens
    2300012: Plane.000
    2300014: skybox
    2300016: Sphere.000
    2300018: Sphere.001
    2300020: Sphere.002
    2300022: Sphere.003
    2300024: water
    3300000: blur
    3300002: Cube
    3300004: Cube.001
    3300006: flare1
    3300008: ground
    3300010: lens
    3300012: Plane.000
    3300014: skybox
    3300016: Sphere.000
    3300018: Sphere.001
    3300020: Sphere.002
    3300022: Sphere.003
    3300024: water
    4300000: Sphere.003
    4300002: Sphere.002
    4300004: Sphere.000
    4300006: Sphere.001
    4300008: Cube
    4300010: flare1
    4300012: lens
    4300014: skybox
    4300016: water
    4300018: Plane.000
    4300020: blur
    4300022: Cube.001
    4300024: ground
  externalObjects: {}
  materials:
    importMaterials: 1
    materialName: 0
    materialSearch: 1
    materialLocation: 1
  animations:
    legacyGenerateAnimations: 4
    bakeSimulation: 0
    resampleCurves: 1
    optimizeGameObjects: 0
    motionNodeName: 
    rigImportErrors: 
    rigImportWarnings: 
    animationImportErrors: 
    animationImportWarnings: 
    animationRetargetingWarnings: 
    animationDoRetargetingWarnings: 0
    importAnimatedCustomProperties: 0
    importConstraints: 0
    animationCompression: 1
    animationRotationError: 0.5
    animationPositionError: 0.5
    animationScaleError: 0.5
    animationWrapMode: 0
    extraExposedTransformPaths: []
    extraUserProperties: []
    clipAnimations: []
    isReadable: 1
  meshes:
    lODScreenPercentages: []
    globalScale: 1
    meshCompression: 0
    addColliders: 0
    importVisibility: 1
    importBlendShapes: 1
    importCameras: 1
    importLights: 1
    swapUVChannels: 0
    generateSecondaryUV: 0
    useFileUnits: 1
    optimizeMeshForGPU: 1
    keepQuads: 0
    weldVertices: 1
    preserveHierarchy: 0
    indexFormat: 0
    secondaryUVAngleDistortion: 8
    secondaryUVAreaDistortion: 15.000001
    secondaryUVHardAngle: 88
    secondaryUVPackMargin: 4
    useFileScale: 1
  tangentSpace:
    normalSmoothAngle: 60
    normalImportMode: 0
    tangentImportMode: 3
    normalCalculationMode: 4
  importAnimation: 1
  copyAvatar: 0
  humanDescription:
    serializedVersion: 2
    human: []
    skeleton: []
    armTwist: 0.5
    foreArmTwist: 0.5
    upperLegTwist: 0.5
    legTwist: 0.5
    armStretch: 0.05
    legStretch: 0.05
    feetSpacing: 0
    rootMotionBoneName: 
    rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
    hasTranslationDoF: 0
    hasExtraRoot: 0
    skeletonHasParents: 1
  lastHumanDescriptionAvatarSource: {instanceID: 0}
  animationType: 0
  humanoidOversampling: 1
  additionalBone: 0
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Models.meta
================================================
fileFormatVersion: 2
guid: c067694b1663f4a319591cbac03ae3d3
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Prefabs/Water Surface.prefab
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &100100000
Prefab:
  m_ObjectHideFlags: 1
  serializedVersion: 2
  m_Modification:
    m_TransformParent: {fileID: 0}
    m_Modifications: []
    m_RemovedComponents: []
  m_SourcePrefab: {fileID: 0}
  m_RootGameObject: {fileID: 1142640042221668}
  m_IsPrefabAsset: 1
--- !u!1 &1142640042221668
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 100100000}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 4301781751017244}
  - component: {fileID: 33632951515453430}
  - component: {fileID: 23948156561336780}
  - component: {fileID: 114451531188865348}
  m_Layer: 4
  m_Name: Water Surface
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!4 &4301781751017244
Transform:
  m_ObjectHideFlags: 1
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 100100000}
  m_GameObject: {fileID: 1142640042221668}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: 0, y: 0, z: 0}
  m_LocalScale: {x: 1, y: 1, z: 1}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 0
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!23 &23948156561336780
MeshRenderer:
  m_ObjectHideFlags: 1
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 100100000}
  m_GameObject: {fileID: 1142640042221668}
  m_Enabled: 1
  m_CastShadows: 0
  m_ReceiveShadows: 1
  m_DynamicOccludee: 1
  m_MotionVectors: 1
  m_LightProbeUsage: 1
  m_ReflectionProbeUsage: 1
  m_RenderingLayerMask: 4294967295
  m_Materials:
  - {fileID: 2100000, guid: 784f7b1ea93064cb79f69935ad0efad4, type: 2}
  m_StaticBatchInfo:
    firstSubMesh: 0
    subMeshCount: 0
  m_StaticBatchRoot: {fileID: 0}
  m_ProbeAnchor: {fileID: 0}
  m_LightProbeVolumeOverride: {fileID: 0}
  m_ScaleInLightmap: 1
  m_PreserveUVs: 0
  m_IgnoreNormalsForChartDetection: 0
  m_ImportantGI: 0
  m_StitchLightmapSeams: 0
  m_SelectedEditorRenderState: 3
  m_MinimumChartSize: 4
  m_AutoUVMaxDistance: 0.5
  m_AutoUVMaxAngle: 89
  m_LightmapParameters: {fileID: 0}
  m_SortingLayerID: 0
  m_SortingLayer: 0
  m_SortingOrder: 0
--- !u!33 &33632951515453430
MeshFilter:
  m_ObjectHideFlags: 1
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 100100000}
  m_GameObject: {fileID: 1142640042221668}
  m_Mesh: {fileID: 4300016, guid: f887aba9d4c2b4ed7aa199c12fda2221, type: 3}
--- !u!114 &114451531188865348
MonoBehaviour:
  m_ObjectHideFlags: 1
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 100100000}
  m_GameObject: {fileID: 1142640042221668}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: cf6badaa217364968a525ba8a44a3fe3, type: 3}
  m_Name: 
  m_EditorClassIdentifier: 
  disablePixelLights: 0
  reflectionDownsample: 2
  clipPlaneOffset: 0.2
  m_ReflectLayers:
    serializedVersion: 2
    m_Bits: 4294967295
  settings:
    normalTexture: {fileID: 2800000, guid: eca2a7fa5744c453b8a3dd4d9549b767, type: 3}
    windDirection: {x: -0.5, y: -0.8}
    windSpeed: 0.6
    visibility: 28
    waveScale: 1
    scatterAmount: 3.5
    scatterColor: {r: 0, g: 1, b: 0.95, a: 1}
    reflectionDistortionAmount: 0.03
    refractionDistortionAmount: 0.04
    aberrationAmount: 0.002
    mudExtinction: {r: 1, g: 0.7, b: 0.5, a: 1}
    waterExtinction: {r: 0.6, g: 0.8, b: 1, a: 1}
    sunExtinction: {r: 0.45, g: 0.55, b: 0.7, a: 1}
  surfaceMaterial: {fileID: 2100000, guid: 784f7b1ea93064cb79f69935ad0efad4, type: 2}
  groundMaterial: {fileID: 2100000, guid: 06618ef051ba8422a85c276d05b5be98, type: 2}
  sunLight: {fileID: 0}


================================================
FILE: Water/Assets/Water/Prefabs/Water Surface.prefab.meta
================================================
fileFormatVersion: 2
guid: 20de1bf9e984c4606a378e2e88960fe2
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 100100000
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Prefabs.meta
================================================
fileFormatVersion: 2
guid: a6b6b767a300b4426ba058af2c640842
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene/LightingData.asset.meta
================================================
fileFormatVersion: 2
guid: f1061ecdfe0124098a6f7abd28d41fbb
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 25800000
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene/ReflectionProbe-0.exr.meta
================================================
fileFormatVersion: 2
guid: 71213cc1419644e388aecddf279aef6b
TextureImporter:
  fileIDToRecycleName:
    8900000: generatedCubemap
  externalObjects: {}
  serializedVersion: 5
  mipmaps:
    mipMapMode: 0
    enableMipMap: 1
    sRGBTexture: 1
    linearTexture: 0
    fadeOut: 0
    borderMipMap: 0
    mipMapsPreserveCoverage: 0
    alphaTestReferenceValue: 0.5
    mipMapFadeDistanceStart: 1
    mipMapFadeDistanceEnd: 3
  bumpmap:
    convertToNormalMap: 0
    externalNormalMap: 0
    heightScale: 0.25
    normalMapFilter: 0
  isReadable: 0
  grayScaleToAlpha: 0
  generateCubemap: 6
  cubemapConvolution: 1
  seamlessCubemap: 1
  textureFormat: 1
  maxTextureSize: 2048
  textureSettings:
    serializedVersion: 2
    filterMode: 2
    aniso: 0
    mipBias: 0
    wrapU: 1
    wrapV: 1
    wrapW: 1
  nPOTScale: 1
  lightmap: 0
  compressionQuality: 50
  spriteMode: 0
  spriteExtrude: 1
  spriteMeshType: 1
  alignment: 0
  spritePivot: {x: 0.5, y: 0.5}
  spritePixelsToUnits: 100
  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
  spriteGenerateFallbackPhysicsShape: 1
  alphaUsage: 1
  alphaIsTransparency: 0
  spriteTessellationDetail: -1
  textureType: 0
  textureShape: 2
  singleChannelComponent: 0
  maxTextureSizeSet: 0
  compressionQualitySet: 0
  textureFormatSet: 0
  platformSettings:
  - serializedVersion: 2
    buildTarget: DefaultTexturePlatform
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 100
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  spriteSheet:
    serializedVersion: 2
    sprites: []
    outline: []
    physicsShape: []
    bones: []
    spriteID: 
    vertices: []
    indices: 
    edges: []
    weights: []
  spritePackingTag: 
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene/ReflectionProbe-1.exr.meta
================================================
fileFormatVersion: 2
guid: 5a58a4cc09abf44d291f28fa3ee7ddac
TextureImporter:
  fileIDToRecycleName:
    8900000: generatedCubemap
  externalObjects: {}
  serializedVersion: 5
  mipmaps:
    mipMapMode: 0
    enableMipMap: 1
    sRGBTexture: 1
    linearTexture: 0
    fadeOut: 0
    borderMipMap: 0
    mipMapsPreserveCoverage: 0
    alphaTestReferenceValue: 0.5
    mipMapFadeDistanceStart: 1
    mipMapFadeDistanceEnd: 3
  bumpmap:
    convertToNormalMap: 0
    externalNormalMap: 0
    heightScale: 0.25
    normalMapFilter: 0
  isReadable: 0
  grayScaleToAlpha: 0
  generateCubemap: 6
  cubemapConvolution: 1
  seamlessCubemap: 1
  textureFormat: 1
  maxTextureSize: 2048
  textureSettings:
    serializedVersion: 2
    filterMode: 2
    aniso: 0
    mipBias: 0
    wrapU: 1
    wrapV: 1
    wrapW: 1
  nPOTScale: 1
  lightmap: 0
  compressionQuality: 50
  spriteMode: 0
  spriteExtrude: 1
  spriteMeshType: 1
  alignment: 0
  spritePivot: {x: 0.5, y: 0.5}
  spritePixelsToUnits: 100
  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
  spriteGenerateFallbackPhysicsShape: 1
  alphaUsage: 1
  alphaIsTransparency: 0
  spriteTessellationDetail: -1
  textureType: 0
  textureShape: 2
  singleChannelComponent: 0
  maxTextureSizeSet: 0
  compressionQualitySet: 0
  textureFormatSet: 0
  platformSettings:
  - serializedVersion: 2
    buildTarget: DefaultTexturePlatform
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 100
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  spriteSheet:
    serializedVersion: 2
    sprites: []
    outline: []
    physicsShape: []
    bones: []
    spriteID: 
    vertices: []
    indices: 
    edges: []
    weights: []
  spritePackingTag: 
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene.meta
================================================
fileFormatVersion: 2
guid: 4170843eeef83425a9a6c96eaf19fdb5
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene.unity
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
OcclusionCullingSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 2
  m_OcclusionBakeSettings:
    smallestOccluder: 5
    smallestHole: 0.25
    backfaceThreshold: 100
  m_SceneGUID: 00000000000000000000000000000000
  m_OcclusionCullingData: {fileID: 0}
--- !u!104 &2
RenderSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 9
  m_Fog: 0
  m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
  m_FogMode: 3
  m_FogDensity: 0.01
  m_LinearFogStart: 0
  m_LinearFogEnd: 300
  m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
  m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
  m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
  m_AmbientIntensity: 1
  m_AmbientMode: 0
  m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
  m_SkyboxMaterial: {fileID: 2100000, guid: 4a8aa65aac3ec4b3fa72f539852b84f9, type: 2}
  m_HaloStrength: 0.5
  m_FlareStrength: 1
  m_FlareFadeSpeed: 3
  m_HaloTexture: {fileID: 0}
  m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
  m_DefaultReflectionMode: 0
  m_DefaultReflectionResolution: 128
  m_ReflectionBounces: 1
  m_ReflectionIntensity: 1
  m_CustomReflection: {fileID: 0}
  m_Sun: {fileID: 0}
  m_IndirectSpecularColor: {r: 0.18278779, g: 0.22849165, b: 0.30702552, a: 1}
  m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 11
  m_GIWorkflowMode: 1
  m_GISettings:
    serializedVersion: 2
    m_BounceScale: 1
    m_IndirectOutputScale: 1
    m_AlbedoBoost: 1
    m_TemporalCoherenceThreshold: 1
    m_EnvironmentLightingMode: 0
    m_EnableBakedLightmaps: 0
    m_EnableRealtimeLightmaps: 0
  m_LightmapEditorSettings:
    serializedVersion: 10
    m_Resolution: 2
    m_BakeResolution: 10
    m_AtlasSize: 512
    m_AO: 0
    m_AOMaxDistance: 1
    m_CompAOExponent: 1
    m_CompAOExponentDirect: 0
    m_Padding: 2
    m_LightmapParameters: {fileID: 0}
    m_LightmapsBakeMode: 1
    m_TextureCompression: 1
    m_FinalGather: 0
    m_FinalGatherFiltering: 1
    m_FinalGatherRayCount: 256
    m_ReflectionCompression: 2
    m_MixedBakeMode: 2
    m_BakeBackend: 1
    m_PVRSampling: 1
    m_PVRDirectSampleCount: 32
    m_PVRSampleCount: 256
    m_PVRBounces: 2
    m_PVRFilterTypeDirect: 0
    m_PVRFilterTypeIndirect: 0
    m_PVRFilterTypeAO: 0
    m_PVRFilteringMode: 1
    m_PVRCulling: 1
    m_PVRFilteringGaussRadiusDirect: 1
    m_PVRFilteringGaussRadiusIndirect: 5
    m_PVRFilteringGaussRadiusAO: 2
    m_PVRFilteringAtrousPositionSigmaDirect: 0.5
    m_PVRFilteringAtrousPositionSigmaIndirect: 2
    m_PVRFilteringAtrousPositionSigmaAO: 1
    m_ShowResolutionOverlay: 1
  m_LightingDataAsset: {fileID: 112000002, guid: f1061ecdfe0124098a6f7abd28d41fbb,
    type: 2}
  m_UseShadowmask: 1
--- !u!196 &4
NavMeshSettings:
  serializedVersion: 2
  m_ObjectHideFlags: 0
  m_BuildSettings:
    serializedVersion: 2
    agentTypeID: 0
    agentRadius: 0.5
    agentHeight: 2
    agentSlope: 45
    agentClimb: 0.4
    ledgeDropHeight: 0
    maxJumpAcrossDistance: 0
    minRegionArea: 2
    manualCellSize: 0
    cellSize: 0.16666667
    manualTileSize: 0
    tileSize: 256
    accuratePlacement: 0
    debug:
      m_Flags: 0
  m_NavMeshData: {fileID: 0}
--- !u!1 &170076733
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 170076735}
  - component: {fileID: 170076734}
  - component: {fileID: 170076736}
  m_Layer: 0
  m_Name: Directional Light
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!108 &170076734
Light:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 170076733}
  m_Enabled: 1
  serializedVersion: 8
  m_Type: 1
  m_Color: {r: 1, g: 0.9508428, b: 0.9582202, a: 0}
  m_Intensity: 1
  m_Range: 10
  m_SpotAngle: 30
  m_CookieSize: 10
  m_Shadows:
    m_Type: 2
    m_Resolution: -1
    m_CustomResolution: -1
    m_Strength: 1
    m_Bias: 0.05
    m_NormalBias: 0.4
    m_NearPlane: 0.2
  m_Cookie: {fileID: 0}
  m_DrawHalo: 0
  m_Flare: {fileID: 0}
  m_RenderMode: 0
  m_CullingMask:
    serializedVersion: 2
    m_Bits: 4294967295
  m_Lightmapping: 4
  m_LightShadowCasterMode: 0
  m_AreaSize: {x: 1, y: 1}
  m_BounceIntensity: 1
  m_ColorTemperature: 6570
  m_UseColorTemperature: 0
  m_ShadowRadius: 0
  m_ShadowAngle: 0
--- !u!4 &170076735
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 170076733}
  m_LocalRotation: {x: 0.8763844, y: -0.01259281, z: 0.02294891, w: 0.48090047}
  m_LocalPosition: {x: 0, y: 3, z: 0}
  m_LocalScale: {x: 1, y: 1, z: 1}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 1
  m_LocalEulerAnglesHint: {x: 122.49, y: -3, z: 0}
--- !u!114 &170076736
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 170076733}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 4b5fe6ee500ee41c39b6f3662c2fbf20, type: 3}
  m_Name: 
  m_EditorClassIdentifier: 
  extinction: {r: 0.45, g: 0.55, b: 0.7, a: 1}
  noonColor: {r: 1, g: 1, b: 1, a: 1}
  duskColor: {r: 1, g: 0.5, b: 0.2, a: 1}
--- !u!1 &282840810
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 282840814}
  - component: {fileID: 282840813}
  - component: {fileID: 282840811}
  - component: {fileID: 282840812}
  - component: {fileID: 282840815}
  - component: {fileID: 282840817}
  - component: {fileID: 282840816}
  m_Layer: 0
  m_Name: Main Camera
  m_TagString: MainCamera
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!81 &282840811
AudioListener:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  m_Enabled: 1
--- !u!114 &282840812
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3}
  m_Name: 
  m_EditorClassIdentifier: 
  volumeTrigger: {fileID: 282840814}
  volumeLayer:
    serializedVersion: 2
    m_Bits: 256
  stopNaNPropagation: 1
  antialiasingMode: 1
  temporalAntialiasing:
    jitterSpread: 0.75
    sharpness: 0.25
    stationaryBlending: 0.95
    motionBlending: 0.85
  subpixelMorphologicalAntialiasing:
    quality: 0
  fastApproximateAntialiasing:
    fastMode: 0
    keepAlpha: 0
  fog:
    enabled: 1
    excludeSkybox: 1
  debugLayer:
    lightMeter:
      width: 512
      height: 256
      showCurves: 1
    histogram:
      width: 512
      height: 256
      channel: 3
    waveform:
      exposure: 0.12
      height: 256
    vectorscope:
      size: 256
      exposure: 0.12
    overlaySettings:
      linearDepth: 0
      motionColorIntensity: 4
      motionGridSize: 64
      colorBlindnessType: 0
      colorBlindnessStrength: 1
  m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2}
  m_ShowToolkit: 0
  m_ShowCustomSorter: 0
  breakBeforeColorGrading: 0
  m_BeforeTransparentBundles: []
  m_BeforeStackBundles: []
  m_AfterStackBundles: []
--- !u!20 &282840813
Camera:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  m_Enabled: 1
  serializedVersion: 2
  m_ClearFlags: 1
  m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
  m_projectionMatrixMode: 1
  m_SensorSize: {x: 36, y: 24}
  m_LensShift: {x: 0, y: 0}
  m_FocalLength: 50
  m_NormalizedViewPortRect:
    serializedVersion: 2
    x: 0
    y: 0
    width: 1
    height: 1
  near clip plane: 0.3
  far clip plane: 1000
  field of view: 60
  orthographic: 0
  orthographic size: 5
  m_Depth: -1
  m_CullingMask:
    serializedVersion: 2
    m_Bits: 4294967295
  m_RenderingPath: -1
  m_TargetTexture: {fileID: 0}
  m_TargetDisplay: 0
  m_TargetEye: 3
  m_HDR: 1
  m_AllowMSAA: 0
  m_AllowDynamicResolution: 0
  m_ForceIntoRT: 1
  m_OcclusionCulling: 1
  m_StereoConvergence: 10
  m_StereoSeparation: 0.022
--- !u!4 &282840814
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  m_LocalRotation: {x: 0.07455771, y: -0.065220244, z: 0.0048867646, w: 0.9950696}
  m_LocalPosition: {x: -2.29, y: 2.03, z: -2}
  m_LocalScale: {x: 1, y: 1, z: 1}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 0
  m_LocalEulerAnglesHint: {x: 8.57, y: -7.5, z: 0}
--- !u!114 &282840815
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 55512927bb6e346438f511122529a907, type: 3}
  m_Name: 
  m_EditorClassIdentifier: 
--- !u!54 &282840816
Rigidbody:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  serializedVersion: 2
  m_Mass: 1
  m_Drag: 0
  m_AngularDrag: 0.05
  m_UseGravity: 1
  m_IsKinematic: 1
  m_Interpolate: 0
  m_Constraints: 0
  m_CollisionDetection: 0
--- !u!135 &282840817
SphereCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 282840810}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 2
  m_Radius: 1
  m_Center: {x: 0, y: 0, z: 0}
--- !u!1001 &737155627
Prefab:
  m_ObjectHideFlags: 0
  serializedVersion: 2
  m_Modification:
    m_TransformParent: {fileID: 0}
    m_Modifications:
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalPosition.x
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalPosition.y
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalPosition.z
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalRotation.x
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalRotation.y
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalRotation.z
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_LocalRotation.w
      value: 1
      objectReference: {fileID: 0}
    - target: {fileID: 4301781751017244, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
      propertyPath: m_RootOrder
      value: 4
      objectReference: {fileID: 0}
    - target: {fileID: 114451531188865348, guid: 20de1bf9e984c4606a378e2e88960fe2,
        type: 2}
      propertyPath: sunLight
      value: 
      objectReference: {fileID: 170076734}
    m_RemovedComponents: []
  m_SourcePrefab: {fileID: 100100000, guid: 20de1bf9e984c4606a378e2e88960fe2, type: 2}
  m_IsPrefabAsset: 0
--- !u!1 &1094497146
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 1094497150}
  - component: {fileID: 1094497149}
  - component: {fileID: 1094497148}
  - component: {fileID: 1094497147}
  - component: {fileID: 1094497151}
  m_Layer: 0
  m_Name: Sphere (3)
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!135 &1094497147
SphereCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1094497146}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 2
  m_Radius: 0.5
  m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &1094497148
MeshRenderer:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1094497146}
  m_Enabled: 1
  m_CastShadows: 1
  m_ReceiveShadows: 1
  m_DynamicOccludee: 1
  m_MotionVectors: 1
  m_LightProbeUsage: 1
  m_ReflectionProbeUsage: 1
  m_RenderingLayerMask: 4294967295
  m_Materials:
  - {fileID: 2100000, guid: 06618ef051ba8422a85c276d05b5be98, type: 2}
  m_StaticBatchInfo:
    firstSubMesh: 0
    subMeshCount: 0
  m_StaticBatchRoot: {fileID: 0}
  m_ProbeAnchor: {fileID: 0}
  m_LightProbeVolumeOverride: {fileID: 0}
  m_ScaleInLightmap: 1
  m_PreserveUVs: 0
  m_IgnoreNormalsForChartDetection: 0
  m_ImportantGI: 0
  m_StitchLightmapSeams: 0
  m_SelectedEditorRenderState: 3
  m_MinimumChartSize: 4
  m_AutoUVMaxDistance: 0.5
  m_AutoUVMaxAngle: 89
  m_LightmapParameters: {fileID: 0}
  m_SortingLayerID: 0
  m_SortingLayer: 0
  m_SortingOrder: 0
--- !u!33 &1094497149
MeshFilter:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1094497146}
  m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1094497150
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1094497146}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: 8.25, y: 4.5, z: 8.25}
  m_LocalScale: {x: 3, y: 3, z: 3}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 8
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!54 &1094497151
Rigidbody:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1094497146}
  serializedVersion: 2
  m_Mass: 1
  m_Drag: 0
  m_AngularDrag: 0.05
  m_UseGravity: 1
  m_IsKinematic: 0
  m_Interpolate: 0
  m_Constraints: 0
  m_CollisionDetection: 0
--- !u!1 &1128070029 stripped
GameObject:
  m_CorrespondingSourceObject: {fileID: 100000, guid: 230faa639d2cf4ee98a023a6526b47ff,
    type: 3}
  m_PrefabInternal: {fileID: 1554616083}
--- !u!64 &1128070030
MeshCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1128070029}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 3
  m_Convex: 0
  m_CookingOptions: 14
  m_SkinWidth: 0.01
  m_Mesh: {fileID: 4300000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
--- !u!1001 &1554616083
Prefab:
  m_ObjectHideFlags: 0
  serializedVersion: 2
  m_Modification:
    m_TransformParent: {fileID: 0}
    m_Modifications:
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalPosition.x
      value: -0
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalPosition.y
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalPosition.z
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalRotation.x
      value: 0.000000021855694
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalRotation.y
      value: 0
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalRotation.z
      value: -0
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_LocalRotation.w
      value: 1
      objectReference: {fileID: 0}
    - target: {fileID: 400000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_RootOrder
      value: 3
      objectReference: {fileID: 0}
    - target: {fileID: 2300000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_Materials.Array.data[0]
      value: 
      objectReference: {fileID: 2100000, guid: 06618ef051ba8422a85c276d05b5be98, type: 2}
    - target: {fileID: 100000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_Name
      value: Terrain
      objectReference: {fileID: 0}
    - target: {fileID: 100000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
      propertyPath: m_IsActive
      value: 1
      objectReference: {fileID: 0}
    m_RemovedComponents: []
  m_SourcePrefab: {fileID: 100100000, guid: 230faa639d2cf4ee98a023a6526b47ff, type: 3}
  m_IsPrefabAsset: 0
--- !u!1 &1730418754
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 1730418758}
  - component: {fileID: 1730418757}
  - component: {fileID: 1730418756}
  - component: {fileID: 1730418755}
  - component: {fileID: 1730418759}
  m_Layer: 0
  m_Name: Sphere
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!135 &1730418755
SphereCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1730418754}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 2
  m_Radius: 0.5
  m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &1730418756
MeshRenderer:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1730418754}
  m_Enabled: 1
  m_CastShadows: 1
  m_ReceiveShadows: 1
  m_DynamicOccludee: 1
  m_MotionVectors: 1
  m_LightProbeUsage: 1
  m_ReflectionProbeUsage: 1
  m_RenderingLayerMask: 4294967295
  m_Materials:
  - {fileID: 2100000, guid: 06618ef051ba8422a85c276d05b5be98, type: 2}
  m_StaticBatchInfo:
    firstSubMesh: 0
    subMeshCount: 0
  m_StaticBatchRoot: {fileID: 0}
  m_ProbeAnchor: {fileID: 0}
  m_LightProbeVolumeOverride: {fileID: 0}
  m_ScaleInLightmap: 1
  m_PreserveUVs: 0
  m_IgnoreNormalsForChartDetection: 0
  m_ImportantGI: 0
  m_StitchLightmapSeams: 0
  m_SelectedEditorRenderState: 3
  m_MinimumChartSize: 4
  m_AutoUVMaxDistance: 0.5
  m_AutoUVMaxAngle: 89
  m_LightmapParameters: {fileID: 0}
  m_SortingLayerID: 0
  m_SortingLayer: 0
  m_SortingOrder: 0
--- !u!33 &1730418757
MeshFilter:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1730418754}
  m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1730418758
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1730418754}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: -9.25, y: 2.25, z: 9.5}
  m_LocalScale: {x: 3, y: 3, z: 3}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 5
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!54 &1730418759
Rigidbody:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1730418754}
  serializedVersion: 2
  m_Mass: 1
  m_Drag: 0
  m_AngularDrag: 0.05
  m_UseGravity: 1
  m_IsKinematic: 0
  m_Interpolate: 0
  m_Constraints: 0
  m_CollisionDetection: 0
--- !u!1 &1736917589
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 1736917593}
  - component: {fileID: 1736917592}
  - component: {fileID: 1736917591}
  - component: {fileID: 1736917590}
  - component: {fileID: 1736917594}
  m_Layer: 0
  m_Name: Sphere (2)
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!135 &1736917590
SphereCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1736917589}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 2
  m_Radius: 0.5
  m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &1736917591
MeshRenderer:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1736917589}
  m_Enabled: 1
  m_CastShadows: 1
  m_ReceiveShadows: 1
  m_DynamicOccludee: 1
  m_MotionVectors: 1
  m_LightProbeUsage: 1
  m_ReflectionProbeUsage: 1
  m_RenderingLayerMask: 4294967295
  m_Materials:
  - {fileID: 2100000, guid: 06618ef051ba8422a85c276d05b5be98, type: 2}
  m_StaticBatchInfo:
    firstSubMesh: 0
    subMeshCount: 0
  m_StaticBatchRoot: {fileID: 0}
  m_ProbeAnchor: {fileID: 0}
  m_LightProbeVolumeOverride: {fileID: 0}
  m_ScaleInLightmap: 1
  m_PreserveUVs: 0
  m_IgnoreNormalsForChartDetection: 0
  m_ImportantGI: 0
  m_StitchLightmapSeams: 0
  m_SelectedEditorRenderState: 3
  m_MinimumChartSize: 4
  m_AutoUVMaxDistance: 0.5
  m_AutoUVMaxAngle: 89
  m_LightmapParameters: {fileID: 0}
  m_SortingLayerID: 0
  m_SortingLayer: 0
  m_SortingOrder: 0
--- !u!33 &1736917592
MeshFilter:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1736917589}
  m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1736917593
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1736917589}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: -13.25, y: 0, z: 24}
  m_LocalScale: {x: 3, y: 3, z: 3}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 7
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!54 &1736917594
Rigidbody:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1736917589}
  serializedVersion: 2
  m_Mass: 1
  m_Drag: 0
  m_AngularDrag: 0.05
  m_UseGravity: 1
  m_IsKinematic: 0
  m_Interpolate: 0
  m_Constraints: 0
  m_CollisionDetection: 0
--- !u!1 &1826373489
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 1826373492}
  - component: {fileID: 1826373490}
  m_Layer: 8
  m_Name: Post-process Volume
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!114 &1826373490
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1826373489}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 8b9a305e18de0c04dbd257a21cd47087, type: 3}
  m_Name: 
  m_EditorClassIdentifier: 
  sharedProfile: {fileID: 11400000, guid: fe7b519646b984bcd9778a537cbc164c, type: 2}
  isGlobal: 1
  blendDistance: 0
  weight: 1
  priority: 0
--- !u!4 &1826373492
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 1826373489}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: 0, y: 0, z: 0}
  m_LocalScale: {x: 1, y: 1, z: 1}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 2
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2131938256
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 2131938260}
  - component: {fileID: 2131938259}
  - component: {fileID: 2131938258}
  - component: {fileID: 2131938257}
  - component: {fileID: 2131938261}
  m_Layer: 0
  m_Name: Sphere (1)
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 1
--- !u!135 &2131938257
SphereCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 2131938256}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 2
  m_Radius: 0.5
  m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &2131938258
MeshRenderer:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 2131938256}
  m_Enabled: 1
  m_CastShadows: 1
  m_ReceiveShadows: 1
  m_DynamicOccludee: 1
  m_MotionVectors: 1
  m_LightProbeUsage: 1
  m_ReflectionProbeUsage: 1
  m_RenderingLayerMask: 4294967295
  m_Materials:
  - {fileID: 2100000, guid: 06618ef051ba8422a85c276d05b5be98, type: 2}
  m_StaticBatchInfo:
    firstSubMesh: 0
    subMeshCount: 0
  m_StaticBatchRoot: {fileID: 0}
  m_ProbeAnchor: {fileID: 0}
  m_LightProbeVolumeOverride: {fileID: 0}
  m_ScaleInLightmap: 1
  m_PreserveUVs: 0
  m_IgnoreNormalsForChartDetection: 0
  m_ImportantGI: 0
  m_StitchLightmapSeams: 0
  m_SelectedEditorRenderState: 3
  m_MinimumChartSize: 4
  m_AutoUVMaxDistance: 0.5
  m_AutoUVMaxAngle: 89
  m_LightmapParameters: {fileID: 0}
  m_SortingLayerID: 0
  m_SortingLayer: 0
  m_SortingOrder: 0
--- !u!33 &2131938259
MeshFilter:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 2131938256}
  m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &2131938260
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 2131938256}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: 8, y: 6, z: 19.5}
  m_LocalScale: {x: 3, y: 3, z: 3}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 6
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!54 &2131938261
Rigidbody:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 2131938256}
  serializedVersion: 2
  m_Mass: 1
  m_Drag: 0
  m_AngularDrag: 0.05
  m_UseGravity: 1
  m_IsKinematic: 0
  m_Interpolate: 0
  m_Constraints: 0
  m_CollisionDetection: 0


================================================
FILE: Water/Assets/Water/Scenes/SampleScene.unity.meta
================================================
fileFormatVersion: 2
guid: 99c9720ab356a0642a771bea13969a05
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene_Profiles/Post-process Volume Profile.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_PrefabParentObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 0}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3}
  m_Name: Post-process Volume Profile
  m_EditorClassIdentifier: 
  settings:
  - {fileID: 114668727993528958}
  - {fileID: 114268534441347778}
  - {fileID: 114533367690942200}
--- !u!114 &114268534441347778
MonoBehaviour:
  m_ObjectHideFlags: 3
  m_PrefabParentObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 0}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: adb84e30e02715445aeb9959894e3b4d, type: 3}
  m_Name: ColorGrading
  m_EditorClassIdentifier: 
  active: 1
  enabled:
    overrideState: 1
    value: 1
  gradingMode:
    overrideState: 0
    value: 1
  externalLut:
    overrideState: 0
    value: {fileID: 0}
    defaultState: 1
  tonemapper:
    overrideState: 1
    value: 2
  toneCurveToeStrength:
    overrideState: 0
    value: 0
  toneCurveToeLength:
    overrideState: 0
    value: 0.5
  toneCurveShoulderStrength:
    overrideState: 0
    value: 0
  toneCurveShoulderLength:
    overrideState: 0
    value: 0.5
  toneCurveShoulderAngle:
    overrideState: 0
    value: 0
  toneCurveGamma:
    overrideState: 0
    value: 1
  ldrLut:
    overrideState: 0
    value: {fileID: 0}
    defaultState: 4
  ldrLutContribution:
    overrideState: 0
    value: 1
  temperature:
    overrideState: 0
    value: -15.68
  tint:
    overrideState: 0
    value: 0
  colorFilter:
    overrideState: 0
    value: {r: 1, g: 1, b: 1, a: 1}
  hueShift:
    overrideState: 0
    value: 0
  saturation:
    overrideState: 0
    value: 0
  brightness:
    overrideState: 0
    value: 0
  postExposure:
    overrideState: 1
    value: -0.25
  contrast:
    overrideState: 1
    value: 25
  mixerRedOutRedIn:
    overrideState: 0
    value: 100
  mixerRedOutGreenIn:
    overrideState: 0
    value: 0
  mixerRedOutBlueIn:
    overrideState: 0
    value: 0
  mixerGreenOutRedIn:
    overrideState: 0
    value: 0
  mixerGreenOutGreenIn:
    overrideState: 0
    value: 100
  mixerGreenOutBlueIn:
    overrideState: 0
    value: 0
  mixerBlueOutRedIn:
    overrideState: 0
    value: 0
  mixerBlueOutGreenIn:
    overrideState: 0
    value: 0
  mixerBlueOutBlueIn:
    overrideState: 0
    value: 100
  lift:
    overrideState: 0
    value: {x: 1, y: 1, z: 1, w: 0}
  gamma:
    overrideState: 0
    value: {x: 1, y: 1, z: 1, w: 0}
  gain:
    overrideState: 0
    value: {x: 1, y: 1, z: 1, w: 0}
  masterCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve:
        - serializedVersion: 3
          time: 0
          value: 0
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        - serializedVersion: 3
          time: 1
          value: 1
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 0
      m_ZeroValue: 0
      m_Range: 1
      cachedData:
      - 0
      - 0.0078125
      - 0.015625
      - 0.0234375
      - 0.03125
      - 0.0390625
      - 0.046875
      - 0.0546875
      - 0.0625
      - 0.0703125
      - 0.078125
      - 0.0859375
      - 0.09375
      - 0.1015625
      - 0.109375
      - 0.1171875
      - 0.125
      - 0.1328125
      - 0.140625
      - 0.1484375
      - 0.15625
      - 0.1640625
      - 0.171875
      - 0.1796875
      - 0.1875
      - 0.1953125
      - 0.203125
      - 0.2109375
      - 0.21875
      - 0.2265625
      - 0.234375
      - 0.2421875
      - 0.25
      - 0.2578125
      - 0.265625
      - 0.2734375
      - 0.28125
      - 0.2890625
      - 0.296875
      - 0.3046875
      - 0.3125
      - 0.3203125
      - 0.328125
      - 0.3359375
      - 0.34375
      - 0.3515625
      - 0.359375
      - 0.3671875
      - 0.375
      - 0.3828125
      - 0.390625
      - 0.3984375
      - 0.40625
      - 0.4140625
      - 0.421875
      - 0.4296875
      - 0.4375
      - 0.4453125
      - 0.453125
      - 0.4609375
      - 0.46875
      - 0.4765625
      - 0.484375
      - 0.4921875
      - 0.5
      - 0.5078125
      - 0.515625
      - 0.5234375
      - 0.53125
      - 0.5390625
      - 0.546875
      - 0.5546875
      - 0.5625
      - 0.5703125
      - 0.578125
      - 0.5859375
      - 0.59375
      - 0.6015625
      - 0.609375
      - 0.6171875
      - 0.625
      - 0.6328125
      - 0.640625
      - 0.6484375
      - 0.65625
      - 0.6640625
      - 0.671875
      - 0.6796875
      - 0.6875
      - 0.6953125
      - 0.703125
      - 0.7109375
      - 0.71875
      - 0.7265625
      - 0.734375
      - 0.7421875
      - 0.75
      - 0.7578125
      - 0.765625
      - 0.7734375
      - 0.78125
      - 0.7890625
      - 0.796875
      - 0.8046875
      - 0.8125
      - 0.8203125
      - 0.828125
      - 0.8359375
      - 0.84375
      - 0.8515625
      - 0.859375
      - 0.8671875
      - 0.875
      - 0.8828125
      - 0.890625
      - 0.8984375
      - 0.90625
      - 0.9140625
      - 0.921875
      - 0.9296875
      - 0.9375
      - 0.9453125
      - 0.953125
      - 0.9609375
      - 0.96875
      - 0.9765625
      - 0.984375
      - 0.9921875
  redCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve:
        - serializedVersion: 3
          time: 0
          value: 0
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        - serializedVersion: 3
          time: 1
          value: 1
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 0
      m_ZeroValue: 0
      m_Range: 1
      cachedData:
      - 0
      - 0.0078125
      - 0.015625
      - 0.0234375
      - 0.03125
      - 0.0390625
      - 0.046875
      - 0.0546875
      - 0.0625
      - 0.0703125
      - 0.078125
      - 0.0859375
      - 0.09375
      - 0.1015625
      - 0.109375
      - 0.1171875
      - 0.125
      - 0.1328125
      - 0.140625
      - 0.1484375
      - 0.15625
      - 0.1640625
      - 0.171875
      - 0.1796875
      - 0.1875
      - 0.1953125
      - 0.203125
      - 0.2109375
      - 0.21875
      - 0.2265625
      - 0.234375
      - 0.2421875
      - 0.25
      - 0.2578125
      - 0.265625
      - 0.2734375
      - 0.28125
      - 0.2890625
      - 0.296875
      - 0.3046875
      - 0.3125
      - 0.3203125
      - 0.328125
      - 0.3359375
      - 0.34375
      - 0.3515625
      - 0.359375
      - 0.3671875
      - 0.375
      - 0.3828125
      - 0.390625
      - 0.3984375
      - 0.40625
      - 0.4140625
      - 0.421875
      - 0.4296875
      - 0.4375
      - 0.4453125
      - 0.453125
      - 0.4609375
      - 0.46875
      - 0.4765625
      - 0.484375
      - 0.4921875
      - 0.5
      - 0.5078125
      - 0.515625
      - 0.5234375
      - 0.53125
      - 0.5390625
      - 0.546875
      - 0.5546875
      - 0.5625
      - 0.5703125
      - 0.578125
      - 0.5859375
      - 0.59375
      - 0.6015625
      - 0.609375
      - 0.6171875
      - 0.625
      - 0.6328125
      - 0.640625
      - 0.6484375
      - 0.65625
      - 0.6640625
      - 0.671875
      - 0.6796875
      - 0.6875
      - 0.6953125
      - 0.703125
      - 0.7109375
      - 0.71875
      - 0.7265625
      - 0.734375
      - 0.7421875
      - 0.75
      - 0.7578125
      - 0.765625
      - 0.7734375
      - 0.78125
      - 0.7890625
      - 0.796875
      - 0.8046875
      - 0.8125
      - 0.8203125
      - 0.828125
      - 0.8359375
      - 0.84375
      - 0.8515625
      - 0.859375
      - 0.8671875
      - 0.875
      - 0.8828125
      - 0.890625
      - 0.8984375
      - 0.90625
      - 0.9140625
      - 0.921875
      - 0.9296875
      - 0.9375
      - 0.9453125
      - 0.953125
      - 0.9609375
      - 0.96875
      - 0.9765625
      - 0.984375
      - 0.9921875
  greenCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve:
        - serializedVersion: 3
          time: 0
          value: 0
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        - serializedVersion: 3
          time: 1
          value: 1
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 0
      m_ZeroValue: 0
      m_Range: 1
      cachedData:
      - 0
      - 0.0078125
      - 0.015625
      - 0.0234375
      - 0.03125
      - 0.0390625
      - 0.046875
      - 0.0546875
      - 0.0625
      - 0.0703125
      - 0.078125
      - 0.0859375
      - 0.09375
      - 0.1015625
      - 0.109375
      - 0.1171875
      - 0.125
      - 0.1328125
      - 0.140625
      - 0.1484375
      - 0.15625
      - 0.1640625
      - 0.171875
      - 0.1796875
      - 0.1875
      - 0.1953125
      - 0.203125
      - 0.2109375
      - 0.21875
      - 0.2265625
      - 0.234375
      - 0.2421875
      - 0.25
      - 0.2578125
      - 0.265625
      - 0.2734375
      - 0.28125
      - 0.2890625
      - 0.296875
      - 0.3046875
      - 0.3125
      - 0.3203125
      - 0.328125
      - 0.3359375
      - 0.34375
      - 0.3515625
      - 0.359375
      - 0.3671875
      - 0.375
      - 0.3828125
      - 0.390625
      - 0.3984375
      - 0.40625
      - 0.4140625
      - 0.421875
      - 0.4296875
      - 0.4375
      - 0.4453125
      - 0.453125
      - 0.4609375
      - 0.46875
      - 0.4765625
      - 0.484375
      - 0.4921875
      - 0.5
      - 0.5078125
      - 0.515625
      - 0.5234375
      - 0.53125
      - 0.5390625
      - 0.546875
      - 0.5546875
      - 0.5625
      - 0.5703125
      - 0.578125
      - 0.5859375
      - 0.59375
      - 0.6015625
      - 0.609375
      - 0.6171875
      - 0.625
      - 0.6328125
      - 0.640625
      - 0.6484375
      - 0.65625
      - 0.6640625
      - 0.671875
      - 0.6796875
      - 0.6875
      - 0.6953125
      - 0.703125
      - 0.7109375
      - 0.71875
      - 0.7265625
      - 0.734375
      - 0.7421875
      - 0.75
      - 0.7578125
      - 0.765625
      - 0.7734375
      - 0.78125
      - 0.7890625
      - 0.796875
      - 0.8046875
      - 0.8125
      - 0.8203125
      - 0.828125
      - 0.8359375
      - 0.84375
      - 0.8515625
      - 0.859375
      - 0.8671875
      - 0.875
      - 0.8828125
      - 0.890625
      - 0.8984375
      - 0.90625
      - 0.9140625
      - 0.921875
      - 0.9296875
      - 0.9375
      - 0.9453125
      - 0.953125
      - 0.9609375
      - 0.96875
      - 0.9765625
      - 0.984375
      - 0.9921875
  blueCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve:
        - serializedVersion: 3
          time: 0
          value: 0
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        - serializedVersion: 3
          time: 1
          value: 1
          inSlope: 1
          outSlope: 1
          tangentMode: 0
          weightedMode: 0
          inWeight: 0
          outWeight: 0
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 0
      m_ZeroValue: 0
      m_Range: 1
      cachedData:
      - 0
      - 0.0078125
      - 0.015625
      - 0.0234375
      - 0.03125
      - 0.0390625
      - 0.046875
      - 0.0546875
      - 0.0625
      - 0.0703125
      - 0.078125
      - 0.0859375
      - 0.09375
      - 0.1015625
      - 0.109375
      - 0.1171875
      - 0.125
      - 0.1328125
      - 0.140625
      - 0.1484375
      - 0.15625
      - 0.1640625
      - 0.171875
      - 0.1796875
      - 0.1875
      - 0.1953125
      - 0.203125
      - 0.2109375
      - 0.21875
      - 0.2265625
      - 0.234375
      - 0.2421875
      - 0.25
      - 0.2578125
      - 0.265625
      - 0.2734375
      - 0.28125
      - 0.2890625
      - 0.296875
      - 0.3046875
      - 0.3125
      - 0.3203125
      - 0.328125
      - 0.3359375
      - 0.34375
      - 0.3515625
      - 0.359375
      - 0.3671875
      - 0.375
      - 0.3828125
      - 0.390625
      - 0.3984375
      - 0.40625
      - 0.4140625
      - 0.421875
      - 0.4296875
      - 0.4375
      - 0.4453125
      - 0.453125
      - 0.4609375
      - 0.46875
      - 0.4765625
      - 0.484375
      - 0.4921875
      - 0.5
      - 0.5078125
      - 0.515625
      - 0.5234375
      - 0.53125
      - 0.5390625
      - 0.546875
      - 0.5546875
      - 0.5625
      - 0.5703125
      - 0.578125
      - 0.5859375
      - 0.59375
      - 0.6015625
      - 0.609375
      - 0.6171875
      - 0.625
      - 0.6328125
      - 0.640625
      - 0.6484375
      - 0.65625
      - 0.6640625
      - 0.671875
      - 0.6796875
      - 0.6875
      - 0.6953125
      - 0.703125
      - 0.7109375
      - 0.71875
      - 0.7265625
      - 0.734375
      - 0.7421875
      - 0.75
      - 0.7578125
      - 0.765625
      - 0.7734375
      - 0.78125
      - 0.7890625
      - 0.796875
      - 0.8046875
      - 0.8125
      - 0.8203125
      - 0.828125
      - 0.8359375
      - 0.84375
      - 0.8515625
      - 0.859375
      - 0.8671875
      - 0.875
      - 0.8828125
      - 0.890625
      - 0.8984375
      - 0.90625
      - 0.9140625
      - 0.921875
      - 0.9296875
      - 0.9375
      - 0.9453125
      - 0.953125
      - 0.9609375
      - 0.96875
      - 0.9765625
      - 0.984375
      - 0.9921875
  hueVsHueCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve: []
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 1
      m_ZeroValue: 0.5
      m_Range: 1
      cachedData:
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
  hueVsSatCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve: []
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 1
      m_ZeroValue: 0.5
      m_Range: 1
      cachedData:
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
  satVsSatCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve: []
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 0
      m_ZeroValue: 0.5
      m_Range: 1
      cachedData:
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
  lumVsSatCurve:
    overrideState: 0
    value:
      curve:
        serializedVersion: 2
        m_Curve: []
        m_PreInfinity: 2
        m_PostInfinity: 2
        m_RotationOrder: 4
      m_Loop: 0
      m_ZeroValue: 0.5
      m_Range: 1
      cachedData:
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
      - 0.5
--- !u!114 &114533367690942200
MonoBehaviour:
  m_ObjectHideFlags: 3
  m_PrefabParentObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 0}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3}
  m_Name: Bloom
  m_EditorClassIdentifier: 
  active: 1
  enabled:
    overrideState: 1
    value: 1
  intensity:
    overrideState: 1
    value: 1
  threshold:
    overrideState: 0
    value: 1
  softKnee:
    overrideState: 0
    value: 0.5
  clamp:
    overrideState: 0
    value: 65472
  diffusion:
    overrideState: 0
    value: 5
  anamorphicRatio:
    overrideState: 0
    value: 0
  color:
    overrideState: 0
    value: {r: 1, g: 1, b: 1, a: 1}
  fastMode:
    overrideState: 0
    value: 1
  dirtTexture:
    overrideState: 0
    value: {fileID: 0}
    defaultState: 1
  dirtIntensity:
    overrideState: 0
    value: 0
--- !u!114 &114668727993528958
MonoBehaviour:
  m_ObjectHideFlags: 3
  m_PrefabParentObject: {fileID: 0}
  m_PrefabInternal: {fileID: 0}
  m_GameObject: {fileID: 0}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 7a34fa72bd4185749832024e9c8010bf, type: 3}
  m_Name: ScreenSpaceReflections
  m_EditorClassIdentifier: 
  active: 0
  enabled:
    overrideState: 1
    value: 1
  preset:
    overrideState: 1
    value: 2
  maximumIterationCount:
    overrideState: 0
    value: 16
  resolution:
    overrideState: 0
    value: 0
  thickness:
    overrideState: 0
    value: 8
  maximumMarchDistance:
    overrideState: 0
    value: 100
  distanceFade:
    overrideState: 0
    value: 0.5
  vignette:
    overrideState: 1
    value: 1


================================================
FILE: Water/Assets/Water/Scenes/SampleScene_Profiles/Post-process Volume Profile.asset.meta
================================================
fileFormatVersion: 2
guid: fe7b519646b984bcd9778a537cbc164c
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 11400000
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes/SampleScene_Profiles.meta
================================================
fileFormatVersion: 2
guid: 74e3dc751f42141a58fb42c416891d2f
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scenes.meta
================================================
fileFormatVersion: 2
guid: 4f704ae4b4f98ae41a0bce26658850c1
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scripts/CameraMove.cs
================================================
using UnityEngine;

public class CameraMove : MonoBehaviour
{
	void Update()
	{
		transform.Rotate(-Input.GetAxisRaw("Mouse Y") * 2, 0, 0, Space.Self);
		transform.Rotate(0, Input.GetAxisRaw("Mouse X") * 2, 0, Space.World);
		
		transform.Translate(Input.GetAxis("Horizontal") * Time.smoothDeltaTime * 10, 0, Input.GetAxis("Vertical") * Time.smoothDeltaTime * 10, Space.Self);
	}
}

================================================
FILE: Water/Assets/Water/Scripts/CameraMove.cs.meta
================================================
fileFormatVersion: 2
guid: 55512927bb6e346438f511122529a907
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scripts/LightGrab.cs
================================================
using UnityEngine;

[ExecuteInEditMode]
public class LightGrab : MonoBehaviour
{
	[SerializeField]
	Color extinction = new Color(.45f, .55f, .7f);
	
	[SerializeField]
	Color noonColor = Color.white;

	[SerializeField]
	Color duskColor = new Color(1f, .5f, .2f);
	
	bool grabbing;
	Quaternion startRot;
	Quaternion camRot;
	
	void Update()
	{
		#if UNITY_EDITOR
		if(Application.isPlaying)
		#endif
		{
			if(Input.GetMouseButtonDown(0))
			{
				grabbing = true;
				startRot = transform.rotation;
				camRot = Camera.main.transform.rotation;
			}

			if(grabbing)
			{
				if(Input.GetMouseButtonUp(0))
				{
					grabbing = false;
				}

				transform.rotation = Quaternion.Inverse(camRot * Quaternion.Inverse(Camera.main.transform.rotation)) * startRot;
			}
		}

		var light = GetComponent<Light>();
		
		if(light)
			light.color = GetLightColor(transform.forward);
	}

	Color GetLightColor(Vector3 lightDir)
	{
		float y = lightDir.y * 5;
		
		Color sunPenetration = new Color
		{
			r = Mathf.Max(1 - Mathf.Exp(y * extinction.r), 0),
			g = Mathf.Max(1 - Mathf.Exp(y * extinction.g), 0),
			b = Mathf.Max(1 - Mathf.Exp(y * extinction.b), 0)
		};

		return new Color
		{
			r = Mathf.Lerp(duskColor.r, noonColor.r, sunPenetration.r),
			g = Mathf.Lerp(duskColor.g, noonColor.g, sunPenetration.g),
			b = Mathf.Lerp(duskColor.b, noonColor.b, sunPenetration.b)
		};
	}
}

================================================
FILE: Water/Assets/Water/Scripts/LightGrab.cs.meta
================================================
fileFormatVersion: 2
guid: 4b5fe6ee500ee41c39b6f3662c2fbf20
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scripts/Water.cs
================================================
using System.Collections.Generic;
using UnityEngine;

[ExecuteInEditMode]
public class Water : MonoBehaviour
{
	[SerializeField]
	bool disablePixelLights = true;
	
	[SerializeField][Range(1, 5)]
	int reflectionDownsample = 2;
	
	[SerializeField]
	float clipPlaneOffset = 0.2f; // this is actually a maximum offset
 
	[SerializeField]
	LayerMask m_ReflectLayers = -1;

	[SerializeField]
	WaterSettings settings = WaterSettings.Default;
	public WaterSettings Settings => settings;

	[SerializeField]
	Material surfaceMaterial;
	
	[SerializeField]
	Material groundMaterial;

	[SerializeField]
	Light sunLight;

	Camera reflectionCamera;
	Dictionary<Camera, RenderTexture> reflTextures = new Dictionary<Camera, RenderTexture>();
	Vector2Int currentTextureDimensions;

	static bool insideRendering;
 
	void OnWillRenderObject()
	{
		if(!surfaceMaterial)
			return;
		
		if(!enabled)
			return;
 
		Camera cam = Camera.current;
		
		if(!cam)
			return;
 
		// safeguard from recursive reflections.        
		if(insideRendering)
			return;
		
		insideRendering = true;
 
		var reflTexture = GetRenderTexture(cam);
		surfaceMaterial.SetTexture("_ReflectionTex", reflTexture);
 
		// find out the reflection plane: position and normal in world space
		Vector3 pos = transform.position;
		Vector3 normal = cam.transform.position.y > pos.y ? Vector3.up : Vector3.down;
		
		// Optionally disable pixel lights for reflection
		int oldPixelLightCount = QualitySettings.pixelLightCount;
		
		if(disablePixelLights)
			QualitySettings.pixelLightCount = 0;
 
		UpdateCameraModes(cam);
 
		// Render reflection
		// Reflect camera around reflection plane
		float d = -Vector3.Dot(normal, pos);
		Vector4 reflectionPlane = new Vector4(normal.x, normal.y, normal.z, d);
 
		Matrix4x4 reflection = Matrix4x4.zero;
		CalculateReflectionMatrix(ref reflection, reflectionPlane);
		Vector3 oldPos = cam.transform.position;
		Vector3 newPos = reflection.MultiplyPoint(oldPos);
		reflectionCamera.worldToCameraMatrix = cam.worldToCameraMatrix * reflection;
 
		// Set up oblique projection matrix so that near plane is our reflection
		// plane. This way we clip everything below/above it for free.
		Vector4 clipPlane = CameraSpacePlane(reflectionCamera, pos, normal);
		Matrix4x4 projection = cam.CalculateObliqueMatrix(clipPlane);
		reflectionCamera.projectionMatrix = projection;
 
		reflectionCamera.cullingMatrix = cam.projectionMatrix * cam.worldToCameraMatrix;
		reflectionCamera.cullingMask = ~(1 << 4) & m_ReflectLayers.value; // never render water layer

		var oldCulling = GL.invertCulling;
		GL.invertCulling = !oldCulling;
		reflectionCamera.transform.position = newPos;
		Vector3 euler = cam.transform.eulerAngles;
		reflectionCamera.transform.eulerAngles = new Vector3(-euler.x, euler.y, euler.z);
		
		reflectionCamera.targetTexture = reflTexture;
		reflectionCamera.Render();
		reflectionCamera.targetTexture = null;
		
		reflectionCamera.transform.position = oldPos;
		GL.invertCulling = oldCulling;
 
		// Restore pixel light count
		if(disablePixelLights)
			QualitySettings.pixelLightCount = oldPixelLightCount;
 
		insideRendering = false;
	}

	void UpdateMaterial()
	{
		if(!sunLight)
			sunLight = FindObjectOfType<Light>();

		// make up our own light direction if no light could be found
		// (just avoids tedious null checks later on)
		var lightDir = sunLight ? sunLight.transform.forward : -Vector3.one.normalized;
		var transmittance = WaterUtility.GetTransmittance(lightDir, settings.sunExtinction.ToVector3());
		
		float sunFade = Mathf.Clamp01((.1f - lightDir.y) * 10);
		float scatterFade = Mathf.Clamp01((.15f - lightDir.y) * 4);
		
		if(surfaceMaterial)
		{
			surfaceMaterial.SetTexture("_NormalTex", settings.normalTexture);
			surfaceMaterial.SetVector("_WindDirection", settings.windDirection);
			surfaceMaterial.SetFloat("_WindSpeed", settings.windSpeed);
			surfaceMaterial.SetFloat("_Visibility", settings.visibility);
			surfaceMaterial.SetFloat("_WaveScale", settings.waveScale);
			surfaceMaterial.SetFloat("_ScatterAmount", settings.scatterAmount);
			surfaceMaterial.SetColor("_ScatterColor", settings.scatterColor);
			surfaceMaterial.SetFloat("_ReflDistortionAmount", settings.reflectionDistortionAmount);
			surfaceMaterial.SetFloat("_RefrDistortionAmount", settings.refractionDistortionAmount);
			surfaceMaterial.SetFloat("_AberrationAmount", settings.aberrationAmount);
			surfaceMaterial.SetColor("_WaterExtinction", settings.waterExtinction);
			surfaceMaterial.SetVector("_SunTransmittance", transmittance);
			surfaceMaterial.SetFloat("_SunFade", sunFade);
			surfaceMaterial.SetFloat("_ScatterFade", scatterFade);
		}

		if(groundMaterial)
		{
			groundMaterial.SetTexture("_NormalTex", settings.normalTexture);
			groundMaterial.SetVector("_WindDirection", settings.windDirection);
			groundMaterial.SetFloat("_WindSpeed", settings.windSpeed);
			groundMaterial.SetFloat("_Visibility", settings.visibility);
			groundMaterial.SetFloat("_WaveScale", settings.waveScale);
			groundMaterial.SetColor("_MudExtinction", settings.mudExtinction);
			groundMaterial.SetColor("_WaterExtinction", settings.waterExtinction);
			groundMaterial.SetVector("_SunTransmittance", transmittance);
			groundMaterial.SetFloat("_SunFade", sunFade);
			groundMaterial.SetFloat("_ScatterFade", scatterFade);
		}
	}

	void OnEnable()
	{
		Camera.onPreRender += PreRender;
	}

	void LateUpdate()
	{
		UpdateMaterial();
	}

	void PreRender(Camera c)
	{
		// ignore reflection camera
		if(c != reflectionCamera)
		{
			// cache camera position so reflected shader has access to it
			if(groundMaterial && c != reflectionCamera)
				groundMaterial.SetVector("_WorldSpaceCameraPos2", c.transform.position);
		}
	}
 
	void OnDisable()
	{
		foreach(var kvp in reflTextures)
			if(kvp.Value)
				DestroyImmediate(kvp.Value);

		reflTextures.Clear();

		if(reflectionCamera)
		{
			DestroyImmediate(reflectionCamera.gameObject);
			reflectionCamera = null;
		}

		Camera.onPreRender -= PreRender;
	}

	void UpdateCameraModes(Camera src)
	{
		if(reflectionCamera == null)
		{
			reflectionCamera = new GameObject("Reflection Camera", typeof(Camera)).GetComponent<Camera>();
			reflectionCamera.enabled = false;
			reflectionCamera.gameObject.hideFlags = HideFlags.DontSave;
		}
		
		reflectionCamera.clearFlags = src.clearFlags;
		reflectionCamera.backgroundColor = src.backgroundColor;        
		
		if(src.clearFlags == CameraClearFlags.Skybox)
		{
			Skybox sky = src.GetComponent<Skybox>();
			Skybox reflSky = reflectionCamera.GetComponent<Skybox>();
			
			if(!sky || !sky.material)
			{
				if(reflSky)
					reflSky.enabled = false;
			}
			else
			{
				if(!reflSky)
					reflSky = reflectionCamera.gameObject.AddComponent<Skybox>();
				
				reflSky.enabled = true;
				reflSky.material = sky.material;
			}
		}
		
		reflectionCamera.farClipPlane = src.farClipPlane;
		reflectionCamera.nearClipPlane = src.nearClipPlane;
		reflectionCamera.orthographic = src.orthographic;
		reflectionCamera.fieldOfView = src.fieldOfView;
		reflectionCamera.aspect = src.aspect;
		reflectionCamera.orthographicSize = src.orthographicSize;
	}
 
	RenderTexture GetRenderTexture(Camera currentCamera)
	{
		Vector2Int newTextureDimensions = new Vector2Int(currentCamera.scaledPixelWidth / reflectionDownsample, currentCamera.scaledPixelHeight / reflectionDownsample);
		RenderTexture rt;
		
		if(reflTextures.TryGetValue(currentCamera, out rt))
		{
			if(rt.width != newTextureDimensions.x || rt.height != newTextureDimensions.y)
			{
				DestroyImmediate(rt);
				reflTextures.Remove(currentCamera);
			}

			goto Skip;
		}
		
		rt = new RenderTexture(newTextureDimensions.x, newTextureDimensions.y, 16, RenderTextureFormat.DefaultHDR)
		{
			name = $"PlanarReflection {GetInstanceID()}",
			hideFlags = HideFlags.DontSave
		};
		
		reflTextures.Add(currentCamera, rt);
		
		Skip:
		
		return rt;
	}
 
	Vector4 CameraSpacePlane(Camera cam, Vector3 pos, Vector3 normal)
	{
		// lerp between small clip plane offset and maximum offset based on dist from water plane
		// we want small offset when near surface and large offset when high above surface
		float dist = Mathf.Abs(cam.transform.position.y - pos.y);
		float clipOffset = Mathf.Lerp(.01f, clipPlaneOffset, Mathf.Clamp01(dist));
		
		Matrix4x4 m = cam.worldToCameraMatrix;
		pos = m.MultiplyPoint(pos - normal * clipOffset);
		normal = m.MultiplyVector(normal).normalized;
		
		return new Vector4(normal.x, normal.y, normal.z, -Vector3.Dot(pos, normal));
	}
 
	static void CalculateReflectionMatrix(ref Matrix4x4 reflectionMat, Vector4 plane)
	{
		reflectionMat.m00 = 1F - 2F * plane[0] * plane[0];
		reflectionMat.m01 = -2F * plane[0] * plane[1];
		reflectionMat.m02 = -2F * plane[0] * plane[2];
		reflectionMat.m03 = -2F * plane[3] * plane[0];

		reflectionMat.m10 = -2F * plane[1] * plane[0];
		reflectionMat.m11 = 1F - 2F * plane[1] * plane[1];
		reflectionMat.m12 = -2F * plane[1] * plane[2];
		reflectionMat.m13 = -2F * plane[3] * plane[1];

		reflectionMat.m20 = -2F * plane[2] * plane[0];
		reflectionMat.m21 = -2F * plane[2] * plane[1];
		reflectionMat.m22 = 1F - 2F * plane[2] * plane[2];
		reflectionMat.m23 = -2F * plane[3] * plane[2];
 
		reflectionMat.m30 = 0F;
		reflectionMat.m31 = 0F;
		reflectionMat.m32 = 0F;
		reflectionMat.m33 = 1F;
	}
}

================================================
FILE: Water/Assets/Water/Scripts/Water.cs.meta
================================================
fileFormatVersion: 2
guid: cf6badaa217364968a525ba8a44a3fe3
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Scripts/WaterSettings.cs
================================================
using System;
using UnityEngine;

[Serializable]
public class WaterSettings
{
	public static WaterSettings Default => new WaterSettings
	{
		normalTexture = null,
		windDirection = new Vector2(-.5f, -.8f),
		windSpeed = .6f,
		visibility = 28f,
		waveScale = 1f,
		scatterAmount = 3.5f,
		scatterColor = new Color(0, 1f, .95f, 1),
		reflectionDistortionAmount = .03f,
		refractionDistortionAmount = .04f,
		aberrationAmount = .002f,
		mudExtinction = new Color(1f, .7f, .5f),
		waterExtinction = new Color(.6f, .8f, 1f),
		sunExtinction = new Color(.45f, .55f, .7f)
	};
		
	public Texture2D normalTexture;
	public Vector2 windDirection;
	public float windSpeed;
	public float visibility;
	public float waveScale;
	public float scatterAmount;
	public Color scatterColor;
	public float reflectionDistortionAmount;
	public float refractionDistortionAmount;
	public float aberrationAmount;
	public Color mudExtinction;
	public Color waterExtinction;
	public Color sunExtinction;
}

================================================
FILE: Water/Assets/Water/Scripts/WaterSettings.cs.meta
================================================
fileFormatVersion: 2
guid: 4a75d34a0ae34f259cb9e252b7454714
timeCreated: 1539418983

================================================
FILE: Water/Assets/Water/Scripts/WaterUtility.cs
================================================
using UnityEngine;

public static class WaterUtility
{
	public static Vector3 ToVector3(this Color c) => new Vector3(c.r, c.g, c.b);
	
	public static Vector3 GetTransmittance(Vector3 lightDir, Vector3 lightExtinction)
	{
		float y = lightDir.y;
		
		return new Vector3
		{
			x = Mathf.Max(1 - Mathf.Exp(y * lightExtinction.x), 0),
			y = Mathf.Max(1 - Mathf.Exp(y * lightExtinction.y), 0),
			z = Mathf.Max(1 - Mathf.Exp(y * lightExtinction.z), 0)
		};
	}
}

================================================
FILE: Water/Assets/Water/Scripts/WaterUtility.cs.meta
================================================
fileFormatVersion: 2
guid: 0cccd72dcdad4428bfc2bb16b1d1f5b4
timeCreated: 1540008067

================================================
FILE: Water/Assets/Water/Scripts.meta
================================================
fileFormatVersion: 2
guid: 3a4dc27fd14f94831a20bd62dc2cd11d
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Shaders/WaterSurface.shader
================================================
Shader "Water/WaterSurface"
{
	SubShader
	{
		Tags { "RenderType"="Overlay" "Queue"="Transparent" }
		LOD 100
		ZWrite Off
		Cull Off
		
		GrabPass
        {
            "_RefractionTex"
        }

		Pass
		{
		    Tags { "LightMode" = "ForwardBase" }
		
			CGPROGRAM
			#pragma vertex vert
			#pragma fragment frag
			
			#include "UnityCG.cginc"
			#include "Lighting.cginc"

			struct appdata
			{
				float4 vertex : POSITION;
				float3 normal : NORMAL;
			};

			struct v2f
			{
				float4 vertex : SV_POSITION;
				float3 wPosition : TEXCOORD0;
				float4 sPosition : TEXCOORD1;
				float3 viewDir : TEXCOORD2;
			};
			
			static const float2 bigWaves = float2(0.3, 0.3); // strength of big waves
            static const float2 midWaves = float2(0.3, 0.15); // strength of middle sized waves
            static const float2 smallWaves = float2(0.15, 0.1); // strength of small waves

            sampler2D _NormalTex;
            sampler2D _HeightTex;
			sampler2D _ReflectionTex;
			sampler2D _RefractionTex;
			sampler2D _CameraDepthTexture;
			
			float _Visibility;
			float2 _WindDirection;
			float _WindSpeed;
			float _WaveScale;
			float _ScatterAmount;
			float3 _ScatterColor;
			float _ReflDistortionAmount;
			float _RefrDistortionAmount;
			float _AberrationAmount;
			float3 _WaterExtinction;
			float3 _SunTransmittance;
			float _SunFade;
			float _ScatterFade;
						
			v2f vert(appdata v)
			{
				v2f o;
				
				o.wPosition = mul(unity_ObjectToWorld, v.vertex).xyz;
				o.vertex = UnityObjectToClipPos(v.vertex);
				o.sPosition = ComputeScreenPos(o.vertex);
				o.viewDir = _WorldSpaceCameraPos - o.wPosition;
				
				return o;
			}
            
            float fresnel_dielectric(float3 Incoming, float3 Normal, float eta)
            {
                // compute fresnel reflectance without explicitly computing
                // the refracted direction
                float c = abs(dot(Incoming, Normal));
                float g = eta * eta - 1.0 + c * c;
            
                if(g > 0.0)
                {
                    g = sqrt(g);
                    float A = (g - c) / (g + c);
                    float B = (c * (g + c) - 1.0) / (c * (g - c) + 1.0);
                    
                    return 0.5 * A * A * (1.0 + B * B);
                }
                
                return 1.0; // TIR (no refracted component)
            }
			
			fixed4 frag(v2f i) : SV_Target
			{
			    float2 fragCoord = i.sPosition.xy / i.sPosition.w;
			    fragCoord = clamp(fragCoord, 0.002, 0.998);
			    
			    bool aboveWater = _WorldSpaceCameraPos.y > 0.0;
                                                
                float normalFade = 1 - min(exp(-i.sPosition.w / 40), 1);           
			
			    float2 nCoord = i.wPosition.xz * _WaveScale * 0.04 + _WindDirection * _Time.y * _WindSpeed * 0.04;
                float3 normal0 = 2.0 * tex2D(_NormalTex, nCoord + float2(-_Time.y * 0.015, -_Time.y * 0.005)).xyz - 1.0;
                nCoord = i.wPosition.xz * _WaveScale * 0.1 + _WindDirection * _Time.y * _WindSpeed * 0.08;
                float3 normal1 = 2.0 * tex2D(_NormalTex, nCoord + float2(_Time.y * 0.020, _Time.y * 0.015)).xyz - 1.0;
             
                nCoord = i.wPosition.xz * _WaveScale * 0.25 + _WindDirection * _Time.y * _WindSpeed * 0.07;
                float3 normal2 = 2.0 * tex2D(_NormalTex, nCoord + float2(-_Time.y * 0.04, -_Time.y * 0.03)).xyz - 1.0;
                nCoord = i.wPosition.xz * _WaveScale * 0.5 + _WindDirection * _Time.y * _WindSpeed * 0.09;
                float3 normal3 = 2.0 * tex2D(_NormalTex, nCoord + float2(_Time.y * 0.03, _Time.y * 0.04)).xyz - 1.0;
              
                nCoord = i.wPosition.xz * _WaveScale * 1.0 + _WindDirection * _Time.y * _WindSpeed * 0.4;
                float3 normal4 = 2.0 * tex2D(_NormalTex, nCoord + float2(-_Time.y * 0.02, _Time.y * 0.1)).xyz - 1.0;  
                nCoord = i.wPosition.xz * _WaveScale * 2.0 + _WindDirection * _Time.y * _WindSpeed * 0.7;
                float3 normal5 = 2.0 * tex2D(_NormalTex, nCoord + float2(_Time.y * 0.1, -_Time.y * 0.06)).xyz - 1.0;
                
                float3 normal = normalize(normal0 * bigWaves.x + normal1 * bigWaves.y +
                                        normal2 * midWaves.x + normal3 * midWaves.y +
                                        normal4 * smallWaves.x + normal5 * smallWaves.y);
               
                float3 nVec = lerp(normal.xzy, float3(0, 1, 0), normalFade); // converting normals to tangent space 
                float3 vVec = normalize(i.viewDir);
                float3 lVec = _WorldSpaceLightPos0.xyz;
			    
			    // normal for light scattering
                float3 lNormal = normalize(normal0 * bigWaves.x * 0.5 + normal1 * bigWaves.y * 0.5 +
                                        normal2 * midWaves.x * 0.1 + normal3 * midWaves.y * 0.1 +
                                        normal4 * smallWaves.x * 0.1 + normal5 * smallWaves.y * 0.1);
                lNormal = lerp(lNormal.xzy, float3(0, 1, 0), normalFade);
                                
                float3 lR = reflect(-lVec, lNormal);
                
                float s = max(dot(lR, vVec) * 2.0 - 1.2, 0);
                float lightScatter = saturate((saturate(dot(-lVec, lNormal) * 0.7 + 0.3) * s) * _ScatterAmount) * _SunFade * saturate(1.0 - exp(-_WorldSpaceLightPos0.y));
                float3 scatterColor = lerp(_ScatterColor * float3(1.0, 0.4, 0.0), _ScatterColor, _SunTransmittance);
            
                // fresnel term
                float ior = aboveWater ? (1.333 / 1.0) : (1.0 / 1.333); // air to water; water to air
                float fresnel = fresnel_dielectric(-vVec, nVec, ior);
			    
			    // texture edge bleed removal is handled by clip plane offset
                float3 reflection = tex2D(_ReflectionTex, fragCoord + nVec.xz * float2(_ReflDistortionAmount, _ReflDistortionAmount * 6)).rgb;
                
                float3 luminosity = float3(0.30, 0.59, 0.11);
                float reflectivity = pow(dot(luminosity, reflection.rgb * 2.0), 3.0);
                    
                float3 R = reflect(vVec, nVec);
            
                float specular = min(pow(atan(max(dot(R, -lVec), 0.0) * 1.55), 1000.0) * reflectivity * 8.0, 50);
            
                float2 rcoord = reflect(vVec, nVec).xz;
                float2 refrOffset = nVec.xz * _RefrDistortionAmount;
                
                // depth of potential refracted fragment
                float refractedDepth = LinearEyeDepth(UNITY_SAMPLE_DEPTH(tex2D(_CameraDepthTexture, fragCoord - refrOffset * 2)));
                float surfaceDepth = i.sPosition.w;
                
                float distortFade = saturate((refractedDepth - surfaceDepth) * 4);
                
                float3 refraction;
                refraction.r = tex2D(_RefractionTex, fragCoord - (refrOffset - rcoord * -_AberrationAmount) * distortFade).r;
                refraction.g = tex2D(_RefractionTex, fragCoord - refrOffset * distortFade).g;
                refraction.b = tex2D(_RefractionTex, fragCoord - (refrOffset - rcoord * _AberrationAmount) * distortFade).b;
                                  
                float waterSunGradient = dot(vVec, -_WorldSpaceLightPos0.xyz);
                waterSunGradient = saturate(pow(waterSunGradient * 0.7 + 0.3, 2.0));  
                float3 waterSunColor = float3(0.0, 1.0, 0.85) * waterSunGradient;
                waterSunColor *= aboveWater ? 0.25 : 0.5;
               
                float waterGradient = dot(vVec, float3(0.0, -1.0, 0.0));
                waterGradient = clamp((waterGradient * 0.5 + 0.5), 0.2, 1.0);
                float3 watercolor = (float3(0.0078, 0.5176, 0.700) + waterSunColor) * waterGradient * 1.5;
                
                watercolor = lerp(watercolor * 0.3 * _SunFade, watercolor, _SunTransmittance);
                
                float fog = aboveWater ? 1.0 : surfaceDepth / _Visibility;
                
                float darkness = _Visibility * 2.0;
                darkness = saturate((_WorldSpaceCameraPos.y + darkness) / darkness);
                                
                refraction = lerp(refraction, scatterColor, lightScatter);
                                    
                float3 color;
                   
                if(aboveWater)
                {
                    color = lerp(refraction, reflection, fresnel * .6);
                }
                // scatter and extinction between surface and camera
                else
                {
                    color = lerp(min(refraction * 1.2, 1), reflection, fresnel);
                    color = lerp(color, watercolor * darkness * _ScatterFade, saturate(fog / _WaterExtinction));
                }
                
                return float4(float3(color + (_LightColor0 * specular)), 1.0);
			}
			ENDCG
		}
	}
}

// original GLSL shader source
/*
varying vec4 fragPos; //fragment coordinates
varying vec3 T, B, N; //tangent binormal normal
varying vec3 viewPos;
varying vec3 worldPos;
uniform float _Time.yr;
uniform sampler2D reflectionSampler,refractionSampler, depthSampler, normalSampler;
uniform vec3 cameraPos;

//----------------
//tweakables

vec2 windDir = vec2(0.5, -0.8); //wind direction XY
float windSpeed = 0.2; //wind speed

float visibility = 28.0;

float _WaveScale = 1.0; //overall wave _WaveScale

vec2 bigWaves = vec2(0.3, 0.3); //strength of big waves
vec2 midWaves = vec2(0.3, 0.15); //strength of middle sized waves
vec2 smallWaves = vec2(0.15, 0.1); //strength of small waves

vec3 waterColor = vec3(0.2,0.4,0.5); //color of the water
float waterDensity = 0.0; //water density (0.0-1.0)
    
float choppy = 0.15; //wave choppyness
float aberration = 0.002; //chromatic aberration amount
float bump = 2.6; //overall water surface bumpyness
float reflBump = 0.04; //reflection distortion amount
float refrBump = 0.03; //refraction distortion amount

vec3 sunPos = vec3(gl_ModelViewMatrixInverse*gl_LightSource[0].position);
float sunSpec = 1000.0; //Sun specular hardness

float scatterAmount = 3.5; //amount of sunlight scattering of waves
vec3 scatterColor = vec3(0.0,1.0,0.95);// color of the sunlight scattering
//----------------

vec3 tangentSpace(vec3 v)
{
	vec3 vec;
	vec.xy=v.xy;
	vec.z=sqrt(1.0-dot(vec.xy,vec.xy));
	vec.xyz= normalize(vec.x*T+vec.y*B+vec.z*N);
	return vec;
}

float fresnel_dielectric(vec3 Incoming, vec3 Normal, float eta)
{
    /* compute fresnel reflectance without explicitly computing
       the refracted direction */
    float c = abs(dot(Incoming, Normal));
    float g = eta * eta - 1.0 + c * c;
    float result;

    if(g > 0.0) {
        g = sqrt(g);
        float A =(g - c)/(g + c);
        float B =(c *(g + c)- 1.0)/(c *(g - c)+ 1.0);
        result = 0.5 * A * A *(1.0 + B * B);
    }
    else
        result = 1.0;  /* TIR (no refracted component) */

    return result;
}


void main() {
    vec2 fragCoord = (fragPos.xy/fragPos.w)*0.5+0.5;
    fragCoord = clamp(fragCoord,0.002,0.998);

	//normal map
	vec2 nCoord = vec2(0.0); //normal coords
    vec2 coo = ((gl_TexCoord[0].st)/1106.208)-0.5;
    float depth = texture2D(depthSampler,coo).r;
    float coast = smoothstep(0.3,0.7,depth);
    float coast1 = smoothstep(0.49,0.5,depth);
     
    choppy = choppy * (coast)+0.05;
    bump = -bump*clamp(1.0-coast+0.0,0.0,1.0);
    bump = bump*clamp(1.0-coast1+0.0,0.0,1.0);
    
    //_WaveScale = _WaveScale - (coast*0.1);
    //_WaveScale = _WaveScale * (coast*0.1+0.9);
    float _Time.y = _Time.yr - (coast)*80.0; //hmmm
    //_Time.yr = _Time.yr * (coast*0.5+0.5)*1.5;
    //smallWaves.x = smallWaves.x + (0.1*coast);
    //smallWaves.y = smallWaves.y + (0.1*coast);
    //bigWaves.x = bigWaves.x - (0.1*(1.0-coast));
    //bigWaves.y = bigWaves.y + (0.1*(1.0-coast));
    
    vec3 mudext = vec3(1.0, 0.7, 0.5);//mud extinction
    float atmosphere = length(cameraPos-worldPos)/200.0;
    
    vec3 atmopherefog = clamp(1.0-exp(-atmosphere/mudext),0.0,1.0);
    
  	nCoord = worldPos.xy * (_WaveScale * 0.04) + windDir * _Time.y * (windSpeed*0.04);
	vec3 normal0 = 2.0 * texture2D(normalSampler, nCoord + vec2(-_Time.y*0.015,-_Time.y*0.005)).rgb - 1.0;
	nCoord = worldPos.xy * (_WaveScale * 0.1) + windDir * _Time.y * (windSpeed*0.08)-(normal0.xy/normal0.zz)*choppy;
	vec3 normal1 = 2.0 * texture2D(normalSampler, nCoord + vec2(+_Time.y*0.020,+_Time.y*0.015)).rgb - 1.0;
 
 	nCoord = worldPos.xy * (_WaveScale * 0.25) + windDir * _Time.y * (windSpeed*0.07)-(normal1.xy/normal1.zz)*choppy;
	vec3 normal2 = 2.0 * texture2D(normalSampler, nCoord + vec2(-_Time.y*0.04,-_Time.y*0.03)).rgb - 1.0;
	nCoord = worldPos.xy * (_WaveScale * 0.5) + windDir * _Time.y * (windSpeed*0.09)-(normal2.xy/normal2.z)*choppy;
	vec3 normal3 = 2.0 * texture2D(normalSampler, nCoord + vec2(+_Time.y*0.03,+_Time.y*0.04)).rgb - 1.0;
  
  	nCoord = worldPos.xy * (_WaveScale* 1.0) + windDir * _Time.y * (windSpeed*0.4)-(normal3.xy/normal3.zz)*choppy;
	vec3 normal4 = 2.0 * texture2D(normalSampler, nCoord + vec2(-_Time.y*0.02,+_Time.y*0.1)).rgb - 1.0;  
    nCoord = worldPos.xy * (_WaveScale * 2.0) + windDir * _Time.y * (windSpeed*0.7)-(normal4.xy/normal4.zz)*choppy;
    vec3 normal5 = 2.0 * texture2D(normalSampler, nCoord + vec2(+_Time.y*0.1,-_Time.y*0.06)).rgb - 1.0;

	
	
	vec3 normal = normalize(normal0 * bigWaves.x + normal1 * bigWaves.y +
                            normal2 * midWaves.x + normal3 * midWaves.y +
						    normal4 * smallWaves.x + normal5 * smallWaves.y);

    //normal.x = -normal.x; //in case you need to invert Red channel
    //normal.y = -normal.y; //in case you need to invert Green channel
   
    vec3 nVec = tangentSpace(normal*bump); //converting normals to tangent space    
    vec3 vVec = normalize(viewPos);
    vec3 lVec = normalize(sunPos);
    
    //normal for light scattering
	vec3 lNormal = normalize(normal0 * bigWaves.x*0.5 + normal1 * bigWaves.y*0.5 +
                            normal2 * midWaves.x*0.1 + normal3 * midWaves.y*0.1 +
						    normal4 * smallWaves.x*0.1 + normal5 * smallWaves.y*0.1);
    lNormal = tangentSpace(lNormal*bump);
    vec3 pNormal = tangentSpace(vec3(0.0));
    
	vec3 lR = reflect(lVec, lNormal);
    vec3 llR = reflect(lVec, pNormal);
    
    float sunFade = clamp((sunPos.z+10.0)/20.0,0.0,1.0);
    float scatterFade = clamp((sunPos.z+50.0)/200.0,0.0,1.0);
    vec3 sunext = vec3(0.45, 0.55, 0.68);//sunlight extinction
    
	float s = clamp((dot(lR, vVec)*2.0-1.2), 0.0,1.0);
    float lightScatter = clamp((clamp(dot(-lVec,lNormal)*0.7+0.3,0.0,1.0)*s)*scatterAmount,0.0,1.0)*sunFade *clamp(1.0-exp(-(sunPos.z/500.0)),0.0,1.0);
    scatterColor = mix(vec3(scatterColor)*vec3(1.0,0.4,0.0), scatterColor, clamp(1.0-exp(-(sunPos.z/500.0)*sunext),0.0,1.0));

    //fresnel term
    float ior = 1.33;
    ior = (cameraPos.z>0.0)?(1.333/1.0):(1.0/1.333); //air to water; water to air
    float eta = max(ior, 0.00001);
    float fresnel = fresnel_dielectric(-vVec,nVec,eta);
    
    //texture edge bleed removal
    float fade = 12.0;
    vec2 distortFade = vec2(0.0);
    distortFade.s = clamp(fragCoord.s*fade,0.0,1.0);
    distortFade.s -= clamp(1.0-(1.0-fragCoord.s)*fade,0.0,1.0);
    distortFade.t = clamp(fragCoord.t*fade,0.0,1.0);
    distortFade.t -= clamp(1.0-(1.0-fragCoord.t)*fade,0.0,1.0); 
    
    vec3 reflection = texture2D(reflectionSampler, fragCoord+(nVec.st*vec2(reflBump,reflBump*(6.0))*distortFade)).rgb;
    
    vec3 luminosity = vec3(0.30, 0.59, 0.11);
	float reflectivity = pow(dot(luminosity, reflection.rgb*2.0),3.0);

	float reflectivity1 = pow(dot(luminosity, reflection.rgb),3.0);
        
    vec3 R = reflect(vVec, nVec);

    float specular = clamp(pow(atan(max(dot(R, lVec),0.0)*1.55),1000.0)*reflectivity*8.0,0.0,1.0);
    
    vec3 specColor = mix(vec3(1.0,0.5,0.2), vec3(1.0,1.0,1.0), clamp(1.0-exp(-(sunPos.z/500.0)*sunext),0.0,1.0));

    vec2 rcoord = reflect(vVec,nVec).st;
    vec3 refraction = vec3(0.0);
    
    refraction.r = texture2D(refractionSampler, (fragCoord-(nVec.st*refrBump*distortFade))*1.0).r;
    refraction.g = texture2D(refractionSampler, (fragCoord-(nVec.st*refrBump*distortFade))*1.0-(rcoord*aberration)).g;
    refraction.b = texture2D(refractionSampler, (fragCoord-(nVec.st*refrBump*distortFade))*1.0-(rcoord*aberration*2.0)).b;
    
      
    float waterSunGradient = dot(normalize(cameraPos-worldPos), -normalize(sunPos));
    waterSunGradient = clamp(pow(waterSunGradient*0.7+0.3,2.0),0.0,1.0);  
    vec3 waterSunColor = vec3(0.0,1.0,0.85)*waterSunGradient;
    waterSunColor = (cameraPos.z<0.0)?waterSunColor*0.5:waterSunColor*0.25;//below or above water?
   
    float waterGradient = dot(normalize(cameraPos-worldPos), vec3(0.0,0.0,-1.0));
    waterGradient = clamp((waterGradient*0.5+0.5),0.2,1.0);
    vec3 watercolor = (vec3(0.0078, 0.5176, 0.700)+waterSunColor)*waterGradient*1.5;
    vec3 waterext = vec3(0.6, 0.8, 1.0);//water extinction
    
    watercolor = mix(watercolor*0.3*sunFade, watercolor, clamp(1.0-exp(-(sunPos.z/500.0)*sunext),0.0,1.0));
    
    float fog = length(cameraPos-worldPos)/visibility; 
    fog = (cameraPos.z<0.0)?fog:1.0;
    fog = clamp(pow(fog,1.0),0.0,1.0);
    
    float darkness = visibility*2.0;
    darkness = clamp((cameraPos.z+darkness)/darkness,0.0,1.0);
    
    fresnel = clamp(fresnel,0.0,1.0);
        
    vec3 color = mix(mix(refraction,scatterColor,lightScatter),reflection,fresnel*0.6);
    color = (cameraPos.z<0.0)?mix(clamp(refraction*1.2,0.0,1.0),reflection,fresnel):color;   
    color = (cameraPos.z<0.0)?mix(color, watercolor*darkness*scatterFade, clamp(fog/ waterext,0.0,1.0)):color;
    
    //color = mix(color,atmopherefog*0.8,atmopherefog.b);
    
    //gl_FragColor = vec4(vec3(color*0.001+(specColor*specular)),1.0);
    gl_FragColor = vec4(vec3(color+(specColor*specular)),1.0);
}
*/

================================================
FILE: Water/Assets/Water/Shaders/WaterSurface.shader.meta
================================================
fileFormatVersion: 2
guid: 6cdea64d237bb4dfa80eddee7ad81c28
ShaderImporter:
  externalObjects: {}
  defaultTextures: []
  nonModifiableTextures: []
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Shaders/WaterUnder.shader
================================================
Shader "Water/WaterUnder"
{
	Properties
	{
		_MainTex("Texture", 2D) = "white" {}
	}
	SubShader
	{
		Tags { "RenderType"="Opaque" "Queue"="Geometry" }
		LOD 100

		Pass
		{
		    Tags { "LightMode" = "ForwardBase" }
		
			CGPROGRAM
			#pragma vertex vert
			#pragma fragment frag
			
			#include "UnityCG.cginc"
			#include "Lighting.cginc"

			struct appdata
			{
				float4 vertex : POSITION;
				float3 normal : NORMAL;
				float2 uv : TEXCOORD0;
			};

			struct v2f
			{
				float4 vertex : SV_POSITION;
				float3 wNormal : NORMAL;
				float2 uv : TEXCOORD0;
				float3 wPosition : TEXCOORD1;
				float3 viewDir : TEXCOORD2;
			};

			sampler2D _MainTex;
			float4 _MainTex_ST;
			sampler2D _NormalTex;
			
			float _WaterLevel;
			float _Visibility;
			float2 _WindDirection;
			float _WindSpeed;
			float _WaveScale;
			float3 _MudExtinction;
			float3 _WaterExtinction;
			float3 _SunTransmittance;
			float3 _WorldSpaceCameraPos2;
			float _SunFade;
			float _ScatterFade;
			
			v2f vert(appdata v)
			{
				v2f o;
				o.vertex = UnityObjectToClipPos(v.vertex);
				o.wPosition = mul(unity_ObjectToWorld, v.vertex).xyz;
				o.wNormal = UnityObjectToWorldNormal(v.normal);
				o.uv = TRANSFORM_TEX(v.uv, _MainTex);
				o.viewDir = _WorldSpaceCameraPos - o.wPosition;
				
				return o;
			}
            
            float3 intercept(float3 lineP, float3 lineN, float3 planeN, float planeD)
            {
                float distance = (planeD - dot(planeN, lineP)) / dot(lineN, planeN);
                return lineP + lineN * distance;
            }
            
            float3 perturb(sampler2D tex, float2 coords, float bend)
            {
                float3 col = 0;
                
                float timer = _Time.y;
                float2 windDir = _WindDirection;
                float windSpeed = _WindSpeed;
                float scale = _WaveScale;
                
                // might need to swizzle, not sure
                float2 nCoord = coords * (scale * 0.04) + windDir * timer * (windSpeed * 0.03);
                col += tex2D(tex, nCoord + float2(-timer * 0.005, -timer * 0.01)).rgb * 0.20;
                
                nCoord = coords * (scale * 0.1) + windDir * timer * (windSpeed * 0.05) - (col.xy / col.z) * bend;
                col += tex2D(tex, nCoord + float2(+timer * 0.01, +timer * 0.005)).rgb * 0.20;
                
                nCoord = coords * (scale * 0.25) + windDir * timer * (windSpeed * 0.1) - (col.xy / col.z) * bend;
                col += tex2D(tex, nCoord + float2(-timer * 0.02, -timer * 0.03)).rgb * 0.20;
                
                nCoord = coords * (scale * 0.5) + windDir * timer * (windSpeed * 0.2) - (col.xy / col.z) * bend;
                col += tex2D(tex, nCoord + float2(+timer * 0.03, +timer * 0.02)).rgb * 0.15;
                
                nCoord = coords * (scale * 1.0) + windDir * timer * (windSpeed * 1.0) - (col.xy / col.z) * bend;
                col += tex2D(tex, nCoord + float2(+timer * 0.03, +timer * 0.02)).rgb * 0.15;
                
                nCoord = coords * (scale * 2.0) + windDir * timer * (windSpeed * 1.3) - (col.xy / col.z) * bend;
                col += tex2D(tex, nCoord + float2(+timer * 0.03, +timer * 0.02)).rgb * 0.15;
                
                return col;
            }
			
			fixed4 frag(v2f i) : SV_Target
			{
			    float3 vVec = normalize(i.viewDir);
			
			    float waterSunGradient = dot(vVec, -_WorldSpaceLightPos0.xyz);
                waterSunGradient = max(pow(waterSunGradient * 0.7 + 0.3, 2.0), 0.0);
                
                float waterGradient = dot(vVec, float3(0.0, -1.0, 0.0));
                waterGradient = clamp((waterGradient * 0.5 + 0.5), 0.2, 1.0);
                                
                float3 waterSunColor = float3(0.0, 1.0, 0.85) * waterSunGradient;
                
                bool aboveWater = _WorldSpaceCameraPos2.y > _WaterLevel;
                                
                waterSunColor = aboveWater ? waterSunColor * 0.25 : waterSunColor * 0.5;
                
                float3 waterColor = (float3(0.0078, 0.5176, 0.700) + waterSunColor) * waterGradient * 1.5;
			    float3 fragCoord = float3(i.vertex.xyz);
                float2 TexCoord = i.uv;
                float3 normal = i.wNormal;
                float3 waterEyePos = intercept(i.wPosition, vVec, float3(0.0, 1.0, 0.0), _WaterLevel);
                float3 diffuse = tex2D(_MainTex, i.uv);     
                float NdotL = max(dot(normal, _WorldSpaceLightPos0.xyz), 0.0);
                float3 sunLight = _LightColor0 * NdotL * _SunFade;
                
                // sky illumination
                float skyBright = max(dot(normal, float3(0.0, 1.0, 0.0)) * 0.5 + 0.5, 0.0);
                float3 skyLight = lerp(float3(1.0, 0.5, 0.0) * 0.05, float3(0.2, 0.5, 1.0) * 1.5, _SunTransmittance);
                skyLight *= skyBright;
            
                // ground illumination
                float groundBright = max(dot(normal, float3(0.0, -1.0, 0.0)) * 0.5 + 0.5, 0.0);   
                float sunLerp = saturate(1.0 - exp(-_WorldSpaceLightPos0.y));
                float3 groundLight = .3 * sunLerp;
                groundLight *= groundBright;
                
                float3 EV = vVec;
                float underwaterFresnel = pow(saturate(1.0 - dot(normal, EV)), 2.0) * sunLerp;
                
                // water color
                float topfog = length(waterEyePos - i.wPosition) / _Visibility;
                topfog = saturate(topfog);
                
                float viewDepth = length(i.viewDir);
                
                float underfog = viewDepth / _Visibility;
                underfog = saturate(underfog);
            
                float depth = waterEyePos.y - i.wPosition.y; // water depth
            
                float far = viewDepth / 1000.0;
                float shorecut = aboveWater ? smoothstep(-0.001, 0.001, depth) : smoothstep(-5.0 * max(far, 0.0001), -4.0 * max(far, 0.0001), depth);
                float shorewetcut = smoothstep(-0.18, -0.000, depth + 0.01);
                
                depth /= _Visibility;
                depth = saturate(depth);
            
                float fog = aboveWater ? topfog : underfog;
                fog *= shorecut;
                
                float darkness = _Visibility * 1.5;
                darkness = lerp(1.0, saturate((_WorldSpaceCameraPos.y + darkness) / darkness), shorecut);
                
                float fogdarkness = _Visibility * 2.0;
                fogdarkness = lerp(1.0, saturate((_WorldSpaceCameraPos.y + fogdarkness) / fogdarkness), shorecut) * _ScatterFade;
                
                // caustics
                float3 causticPos = intercept(i.wPosition, _WorldSpaceLightPos0.xyz, float3(0.0, 1.0, 0.0), _WaterLevel);
                float causticdepth = length(causticPos - i.wPosition); // caustic depth
                causticdepth = 1.0 - saturate(causticdepth / _Visibility);
                causticdepth = saturate(causticdepth);
                
                float3 normalMap = perturb(_NormalTex, causticPos.xz, causticdepth) * 2 - 1;
                normalMap = normalMap.xzy;
                normalMap.xz *= -1;
                float3 causticnorm = normalMap;
                
                float fresnel = pow(saturate(dot(_WorldSpaceLightPos0.xyz, causticnorm)), 2.0); 
             
                float causticR = 1.0 - perturb(_NormalTex, causticPos.xz, causticdepth).z;
                    
                float3 caustics = saturate(pow(causticR * 5.5, 5.5 * causticdepth)) * NdotL * _SunFade * causticdepth;
                
                // not yet implemented
                //if(causticFringe)
                //{
                //    float causticG = 1.0-perturb(NormalSampler,causticPos.st+(1.0-causticdepth)*aberration,causticdepth).z;
                //    float causticB = 1.0-perturb(NormalSampler,causticPos.st+(1.0-causticdepth)*aberration*2.0,causticdepth).z;
                //    caustics = clamp(pow(vec3(causticR,causticG,causticB)*5.5,vec3(5.5*causticdepth)),0.0,1.0)*NdotL*_SunFade*causticdepth;
                //}
                
                float3 underwaterSunLight = saturate((sunLight + 0.9) - (1.0 - caustics)) * causticdepth + (sunLight * caustics);
    
                underwaterSunLight = lerp(underwaterSunLight, underwaterSunLight * waterColor, saturate((1.0 - causticdepth) / _WaterExtinction));
                float3 waterPenetration = saturate(depth / _WaterExtinction);
                skyLight = lerp(skyLight, skyLight * waterColor, waterPenetration);
                groundLight = lerp(groundLight, groundLight * waterColor, waterPenetration);
                
                sunLight = lerp(sunLight, lerp(underwaterSunLight , (waterColor * 0.8 + 0.4) * _SunFade, underwaterFresnel), shorecut);
                
                float3 color = float3(sunLight + skyLight * 0.7 + groundLight * 0.8) * darkness;
                
                waterColor = lerp(waterColor * 0.3 * _SunFade, waterColor, _SunTransmittance);
                                
                float3 fogging = lerp((diffuse * 0.2 + 0.8) * lerp(float3(1.2, 0.95, 0.58) * 0.8, float3(1.1, 0.85, 0.5) * 0.8, shorewetcut) * color, waterColor * fogdarkness, saturate(fog / _WaterExtinction)); // adding water color fog

				return float4(fogging, 1);
			}
			ENDCG
		}
		
		Pass 
         {
             Name "ShadowCaster"
             Tags { "LightMode" = "ShadowCaster" }
             
             Fog { Mode Off }
             ZWrite On ZTest LEqual Cull Off
             Offset 1, 1
 
             CGPROGRAM
             #pragma vertex vert
             #pragma fragment frag
             #pragma multi_compile_shadowcaster
             #include "UnityCG.cginc"
 
             struct v2f 
             { 
                 V2F_SHADOW_CASTER;
             };
 
             v2f vert(appdata_base v)
             {
                 v2f o;
                 TRANSFER_SHADOW_CASTER(o)
                 return o;
             }
 
             float4 frag( v2f i ) : SV_Target
             {
                 SHADOW_CASTER_FRAGMENT(i)
             }
             
             ENDCG
         }
	}
}

// original GLSL shader source
/*
varying vec3 WorldNormal, WorldTangent, WorldBinormal;
varying vec3 WorldSpacePos, eyePos;
varying vec3 LightVec;
varying vec4 fragPos;
varying mat3 WorldToTangent;
uniform sampler2D NormalSampler, TextureSampler,foamSampler;
//varying vec3 Pos;
uniform float timer;

bool causticFringe = false;

float choppy = 0.8;
float refractAmount = 0.4;
float aberration = 0.04;
float visibility = 28.0; //water visibility

float waterLevel = 0.0;

vec2 windDir = vec2(0.5, -0.8); //wind direction XY
float windSpeed = 0.2; //wind speed

float scale = 1.0; //overall wave scale

vec2 bigWaves = vec2(0.3, 0.3); //strength of big waves
vec2 midWaves = vec2(0.3, 0.15); //strength of middle sized waves
vec2 smallWaves = vec2(0.15, 0.1); //strength of small waves

vec3 tangentSpace(vec3 v)
{
	vec3 vec;
	vec.xy=v.xy;
	vec.z=sqrt(1.0-dot(vec.xy,vec.xy));
	vec.xyz= normalize(vec.x*WorldTangent+vec.y*WorldBinormal+vec.z*WorldNormal);
	return vec;
}

vec3 intercept(vec3 lineP,
               vec3 lineN,
               vec3 planeN,
               float  planeD)
{
  
	float distance = (planeD - dot(planeN, lineP)) /dot(lineN, planeN);
	return lineP + lineN * distance;
}

vec3 perturb1(sampler2D tex, vec2 coords, float bend)
{
	//normal map
	vec2 nCoord = vec2(0.0); //normal coords
    bend *= choppy;
  	nCoord = coords * (scale * 0.05) + windDir * timer * (windSpeed*0.04);
	vec3 normal0 = 2.0 * texture2D(tex, nCoord + vec2(-timer*0.015,-timer*0.05)).rgb - 1.0;
	nCoord = coords * (scale * 0.1) + windDir * timer * (windSpeed*0.08)-normal0.xy*bend;
	vec3 normal1 = 2.0 * texture2D(tex, nCoord + vec2(+timer*0.020,+timer*0.015)).rgb - 1.0;
 
 	nCoord = coords * (scale * 0.25) + windDir * timer * (windSpeed*0.07)-normal1.xy*bend;
	vec3 normal2 = 2.0 * texture2D(tex, nCoord + vec2(-timer*0.04,-timer*0.03)).rgb - 1.0;
	nCoord = coords * (scale * 0.5) + windDir * timer * (windSpeed*0.09)-normal2.xy*bend;
	vec3 normal3 = 2.0 * texture2D(tex, nCoord + vec2(+timer*0.03,+timer*0.04)).rgb - 1.0;
  
  	nCoord = coords * (scale* 1.0) + windDir * timer * (windSpeed*0.4)-normal3.xy*bend;
	vec3 normal4 = 2.0 * texture2D(tex, nCoord + vec2(-timer*0.2,+timer*0.1)).rgb - 1.0;  
    nCoord = coords * (scale * 2.0) + windDir * timer * (windSpeed*0.7)-normal4.xy*bend;
    vec3 normal5 = 2.0 * texture2D(tex, nCoord + vec2(+timer*0.1,-timer*0.06)).rgb - 1.0;


	vec3 normal = normalize(normal0 * bigWaves.x + normal1 * bigWaves.y +
                            normal2 * midWaves.x + normal3 * midWaves.y +
						    normal4 * smallWaves.x + normal5 * smallWaves.y);
    return normal;
}

vec3 perturb(sampler2D tex, vec2 coords, float bend)
{
bend *= choppy;
vec3 col = vec3(0.0);
vec2 nCoord = vec2(0.0); //normal coords

nCoord = coords * (scale * 0.04) + windDir * timer * (windSpeed*0.03);
col += texture2D(tex,nCoord + vec2(-timer*0.005,-timer*0.01)).rgb*0.20;
nCoord = coords * (scale * 0.1) + windDir * timer * (windSpeed*0.05)-(col.xy/col.zz)*bend;
col += texture2D(tex,nCoord + vec2(+timer*0.01,+timer*0.005)).rgb*0.20;

nCoord = coords * (scale * 0.25) + windDir * timer * (windSpeed*0.1)-(col.xy/col.zz)*bend;
col += texture2D(tex,nCoord + vec2(-timer*0.02,-timer*0.03)).rgb*0.20;
nCoord = coords * (scale * 0.5) + windDir * timer * (windSpeed*0.2)-(col.xy/col.zz)*bend;
col += texture2D(tex,nCoord + vec2(+timer*0.03,+timer*0.02)).rgb*0.15;

nCoord = coords * (scale* 1.0) + windDir * timer * (windSpeed*1.0)-(col.xy/col.zz)*bend;
col += texture2D(tex, nCoord + vec2(-timer*0.06,+timer*0.08)).rgb*0.15;
nCoord = coords * (scale * 2.0) + windDir * timer * (windSpeed*1.3)-(col.xy/col.zz)*bend;
col += texture2D(tex,nCoord + vec2(+timer*0.08,-timer*0.06)).rgb*0.10;

return col;
}

void main() {


    float waterSunGradient = dot(normalize(eyePos-WorldSpacePos), -normalize(LightVec));
    waterSunGradient = clamp(pow(waterSunGradient*0.7+0.3,2.0),0.0,1.0);
    
    float waterGradient = dot(normalize(eyePos-WorldSpacePos), vec3(0.0,0.0,-1.0));
    waterGradient = clamp((waterGradient*0.5+0.5),0.2,1.0);
    
    vec3 waterSunColor = vec3(0.0,1.0,0.85)*waterSunGradient;
    waterSunColor = (eyePos.z-waterLevel<0.0)?waterSunColor*0.5:waterSunColor*0.25;//below or above water?
    
    vec3 waterColor = (vec3(0.0078, 0.5176, 0.700)+waterSunColor)*waterGradient*1.5;
    
    vec3 mudext = vec3(1.0, 0.7, 0.5);//mud extinction
    vec3 waterext = vec3(0.6, 0.8, 1.0);//water extinction
    vec3 sunext = vec3(0.45, 0.55, 0.7);//sunlight extinction
    
    vec3 fragCoord = vec3(fragPos.xyz);

	vec2 TexCoord = gl_TexCoord[0].st;
	vec3 normal = tangentSpace(vec3(0.0,0.0,0.0));
	
	vec3 EV = normalize(eyePos-WorldSpacePos);
	vec3 LV	= normalize(LightVec-WorldSpacePos);
	
	vec3 waterEyePos = intercept(WorldSpacePos, eyePos-WorldSpacePos, vec3(0.0,0.0,1.0),waterLevel);
    
    vec3 diffuse = texture2D(TextureSampler,gl_TexCoord[0].st*0.05).rgb;      

	float NdotL = max(dot(normal,LV),0.0);


    float sunFade = clamp((LightVec.z+10.0)/20.0,0.0,1.0);
    float scatterFade = clamp((LightVec.z+50.0)/200.0,0.0,1.0);
    vec3 sunLight = mix(vec3(1.0,0.5,0.2), vec3(1.0,1.0,1.0), clamp(1.0-exp(-(LightVec.z/500.0)*sunext),0.0,1.0));
    sunLight *= NdotL*sunFade;
    
    
    //sky illumination
    float skyBright = max(dot(normal,vec3(0.0,0.0,1.0))*0.5+0.5,0.0);   
    vec3 skyLight = mix(vec3(1.0,0.5,0.0)*0.05, vec3(0.2,0.5,1.0)*1.5, clamp(1.0-exp(-(LightVec.z/500.0)*sunext),0.0,1.0));
    skyLight *= skyBright;

    //ground illumination
    float groundBright = max(dot(normal,vec3(0.0,0.0,-1.0))*0.5+0.5,0.0);   
    vec3 groundLight = vec3(0.3,0.3,0.3)*1.0*clamp(1.0-exp(-(LightVec.z/500.0)),0.0,1.0);
    groundLight *= groundBright;
 
    float underwaterFresnel = pow(clamp(1.0-dot(normal,EV),0.0,1.0),2.0)*clamp(1.0-exp(-(LightVec.z/500.0)),0.0,1.0);
 
    //water fogging
       
	float topfog = length(waterEyePos-WorldSpacePos)/visibility;
    topfog = clamp(topfog,0.0,1.0);
    
    float underfog = length(eyePos-WorldSpacePos)/visibility;
    underfog = clamp(underfog,0.0,1.0);

	float depth = waterEyePos.z-WorldSpacePos.z;//water depth

    float far = length(eyePos-WorldSpacePos)/1000.0;
    float shorecut = ((eyePos.z)-waterLevel<0.0)?smoothstep(-5.0*max(far,0.0001),-4.0*max(far,0.0001),depth):smoothstep(-0.001,0.001,depth);
    
    float shorewetcut = smoothstep(-0.18,-0.000,depth+0.01);
    
    
    
    depth /= visibility;  
    depth = clamp(depth,0.0,1.0);
    

    
    float fog = (eyePos.z-waterLevel<0.0)?underfog:topfog;//below or above water?
    fog = pow(fog,1.0);
    fog = fog*shorecut;
    
    float darkness = visibility*1.5;
    darkness = mix(1.0,clamp((eyePos.z+darkness)/darkness,0.0,1.0),shorecut);
    float fogdarkness = visibility*2.0;
    fogdarkness = mix(1.0,clamp((eyePos.z+fogdarkness)/fogdarkness,0.0,1.0),shorecut)*scatterFade;
    

    //caustics
    vec3 causticPos = intercept(WorldSpacePos, LightVec-WorldSpacePos, vec3(0.0,0.0,1.0),waterLevel);
    float causticdepth = length(causticPos-WorldSpacePos); //caustic depth
    causticdepth = 1.0-clamp(causticdepth/visibility,0.0,1.0);
    causticdepth = clamp(causticdepth,0.0,1.0);
    
    vec3 normalMap = perturb(NormalSampler,causticPos.st,causticdepth);
    vec3 causticnorm = tangentSpace(normalMap*2.0-1.0);
    
    float fresnel = pow(clamp(dot(LV,causticnorm),0.0,1.0),2.0); 
 
    float causticR = 1.0-perturb(NormalSampler,causticPos.st,causticdepth).z;
        
    vec3 caustics = clamp(pow(vec3(causticR)*5.5,vec3(5.5*causticdepth)),0.0,1.0)*NdotL*sunFade*causticdepth;
    
    if(causticFringe)
    {
    float causticG = 1.0-perturb(NormalSampler,causticPos.st+(1.0-causticdepth)*aberration,causticdepth).z;
    float causticB = 1.0-perturb(NormalSampler,causticPos.st+(1.0-causticdepth)*aberration*2.0,causticdepth).z;
    caustics = clamp(pow(vec3(causticR,causticG,causticB)*5.5,vec3(5.5*causticdepth)),0.0,1.0)*NdotL*sunFade*causticdepth;
    }
    
    
    vec3 underwaterSunLight = clamp((sunLight+0.9)-(1.0-caustics),0.0,1.0)*causticdepth+(sunLight*caustics);
    
    underwaterSunLight = mix(underwaterSunLight, underwaterSunLight*waterColor, clamp((1.0-causticdepth)/waterext,0.0,1.0));
    skyLight = mix(skyLight, skyLight*waterColor, clamp((depth)/waterext,0.0,1.0));
    groundLight = mix(groundLight, groundLight*waterColor, clamp((depth)/waterext,0.0,1.0));

    sunLight = mix(sunLight,mix(underwaterSunLight,(waterColor*0.8+0.4)*sunFade,underwaterFresnel),shorecut);

    vec3 color = vec3(sunLight+skyLight*0.7+groundLight*0.8)*darkness;

    waterColor = mix(waterColor*0.3*sunFade, waterColor, clamp(1.0-exp(-(LightVec.z/500.0)*sunext),0.0,1.0));

    vec3 fogging = mix((diffuse*0.2+0.8)*mix(vec3(1.2,0.95,0.58)*0.8,vec3(1.1,0.85,0.5)*0.8,shorewetcut)*color, waterColor*fogdarkness, clamp(fog/waterext,0.0,1.0));//adding water color fog
    
    //vec3 light = ((diffuse*0.2+0.8)*vec3(1.0,0.85,0.55)*(NdotL+skyLight+groundLight));
    
    gl_FragColor =  vec4(vec3(fogging),1.0) ;
	
}
*/

================================================
FILE: Water/Assets/Water/Shaders/WaterUnder.shader.meta
================================================
fileFormatVersion: 2
guid: 891ac3ba7a1754646afff4b89a5a8a80
ShaderImporter:
  externalObjects: {}
  defaultTextures: []
  nonModifiableTextures: []
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Shaders.meta
================================================
fileFormatVersion: 2
guid: 733aac3ad35d543d1a150a975b03c3f9
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Textures/grid.png.meta
================================================
fileFormatVersion: 2
guid: 65b81ca5f830e4f1f87398de1eedbad9
TextureImporter:
  fileIDToRecycleName: {}
  externalObjects: {}
  serializedVersion: 5
  mipmaps:
    mipMapMode: 0
    enableMipMap: 1
    sRGBTexture: 1
    linearTexture: 0
    fadeOut: 0
    borderMipMap: 0
    mipMapsPreserveCoverage: 0
    alphaTestReferenceValue: 0.5
    mipMapFadeDistanceStart: 1
    mipMapFadeDistanceEnd: 3
  bumpmap:
    convertToNormalMap: 0
    externalNormalMap: 0
    heightScale: 0.25
    normalMapFilter: 0
  isReadable: 0
  grayScaleToAlpha: 0
  generateCubemap: 6
  cubemapConvolution: 0
  seamlessCubemap: 0
  textureFormat: 1
  maxTextureSize: 2048
  textureSettings:
    serializedVersion: 2
    filterMode: 2
    aniso: 16
    mipBias: -1
    wrapU: -1
    wrapV: -1
    wrapW: -1
  nPOTScale: 1
  lightmap: 0
  compressionQuality: 50
  spriteMode: 0
  spriteExtrude: 1
  spriteMeshType: 1
  alignment: 0
  spritePivot: {x: 0.5, y: 0.5}
  spritePixelsToUnits: 100
  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
  spriteGenerateFallbackPhysicsShape: 1
  alphaUsage: 0
  alphaIsTransparency: 0
  spriteTessellationDetail: -1
  textureType: 0
  textureShape: 1
  singleChannelComponent: 0
  maxTextureSizeSet: 0
  compressionQualitySet: 0
  textureFormatSet: 0
  platformSettings:
  - serializedVersion: 2
    buildTarget: DefaultTexturePlatform
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  - serializedVersion: 2
    buildTarget: Standalone
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  - serializedVersion: 2
    buildTarget: WebGL
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  spriteSheet:
    serializedVersion: 2
    sprites: []
    outline: []
    physicsShape: []
    bones: []
    spriteID: 
    vertices: []
    indices: 
    edges: []
    weights: []
  spritePackingTag: 
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Textures/water-normal.png.meta
================================================
fileFormatVersion: 2
guid: eca2a7fa5744c453b8a3dd4d9549b767
TextureImporter:
  fileIDToRecycleName: {}
  externalObjects: {}
  serializedVersion: 5
  mipmaps:
    mipMapMode: 0
    enableMipMap: 1
    sRGBTexture: 0
    linearTexture: 0
    fadeOut: 0
    borderMipMap: 0
    mipMapsPreserveCoverage: 0
    alphaTestReferenceValue: 0.5
    mipMapFadeDistanceStart: 1
    mipMapFadeDistanceEnd: 3
  bumpmap:
    convertToNormalMap: 0
    externalNormalMap: 0
    heightScale: 0.25
    normalMapFilter: 0
  isReadable: 0
  grayScaleToAlpha: 0
  generateCubemap: 6
  cubemapConvolution: 0
  seamlessCubemap: 0
  textureFormat: 1
  maxTextureSize: 2048
  textureSettings:
    serializedVersion: 2
    filterMode: 2
    aniso: 16
    mipBias: -1
    wrapU: -1
    wrapV: -1
    wrapW: -1
  nPOTScale: 1
  lightmap: 0
  compressionQuality: 50
  spriteMode: 0
  spriteExtrude: 1
  spriteMeshType: 1
  alignment: 0
  spritePivot: {x: 0.5, y: 0.5}
  spritePixelsToUnits: 100
  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
  spriteGenerateFallbackPhysicsShape: 1
  alphaUsage: 1
  alphaIsTransparency: 0
  spriteTessellationDetail: -1
  textureType: 0
  textureShape: 1
  singleChannelComponent: 0
  maxTextureSizeSet: 0
  compressionQualitySet: 0
  textureFormatSet: 0
  platformSettings:
  - serializedVersion: 2
    buildTarget: DefaultTexturePlatform
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 0
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  - serializedVersion: 2
    buildTarget: Standalone
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 0
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  - serializedVersion: 2
    buildTarget: WebGL
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 0
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  spriteSheet:
    serializedVersion: 2
    sprites: []
    outline: []
    physicsShape: []
    bones: []
    spriteID: 
    vertices: []
    indices: 
    edges: []
    weights: []
  spritePackingTag: 
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water/Textures.meta
================================================
fileFormatVersion: 2
guid: 1e8901ab0328c441da00bc2a5d374b09
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Assets/Water.meta
================================================
fileFormatVersion: 2
guid: 446a5f9c4c14e4052b0dcda9fb25a2a0
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData: 
  assetBundleName: 
  assetBundleVariant: 


================================================
FILE: Water/Packages/manifest.json
================================================
{
  "dependencies": {
    "com.unity.package-manager-ui": "1.9.11",
    "com.unity.postprocessing": "2.0.12-preview",
    "com.unity.textmeshpro": "1.2.4",
    "com.unity.modules.ai": "1.0.0",
    "com.unity.modules.animation": "1.0.0",
    "com.unity.modules.assetbundle": "1.0.0",
    "com.unity.modules.audio": "1.0.0",
    "com.unity.modules.cloth": "1.0.0",
    "com.unity.modules.director": "1.0.0",
    "com.unity.modules.imageconversion": "1.0.0",
    "com.unity.modules.imgui": "1.0.0",
    "com.unity.modules.jsonserialize": "1.0.0",
    "com.unity.modules.particlesystem": "1.0.0",
    "com.unity.modules.physics": "1.0.0",
    "com.unity.modules.physics2d": "1.0.0",
    "com.unity.modules.screencapture": "1.0.0",
    "com.unity.modules.terrain": "1.0.0",
    "com.unity.modules.terrainphysics": "1.0.0",
    "com.unity.modules.tilemap": "1.0.0",
    "com.unity.modules.ui": "1.0.0",
    "com.unity.modules.uielements": "1.0.0",
    "com.unity.modules.umbra": "1.0.0",
    "com.unity.modules.unityanalytics": "1.0.0",
    "com.unity.modules.unitywebrequest": "1.0.0",
    "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
    "com.unity.modules.unitywebrequestaudio": "1.0.0",
    "com.unity.modules.unitywebrequesttexture": "1.0.0",
    "com.unity.modules.unitywebrequestwww": "1.0.0",
    "com.unity.modules.vehicles": "1.0.0",
    "com.unity.modules.video": "1.0.0",
    "com.unity.modules.vr": "1.0.0",
    "com.unity.modules.wind": "1.0.0",
    "com.unity.modules.xr": "1.0.0"
  }
}


================================================
FILE: Water/ProjectSettings/AudioManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!11 &1
AudioManager:
  m_ObjectHideFlags: 0
  m_Volume: 1
  Rolloff Scale: 1
  Doppler Factor: 1
  Default Speaker Mode: 2
  m_SampleRate: 0
  m_DSPBufferSize: 1024
  m_VirtualVoiceCount: 512
  m_RealVoiceCount: 32
  m_SpatializerPlugin: 
  m_AmbisonicDecoderPlugin: 
  m_DisableAudio: 0
  m_VirtualizeEffects: 1


================================================
FILE: Water/ProjectSettings/ClusterInputManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!236 &1
ClusterInputManager:
  m_ObjectHideFlags: 0
  m_Inputs: []


================================================
FILE: Water/ProjectSettings/DynamicsManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!55 &1
PhysicsManager:
  m_ObjectHideFlags: 0
  serializedVersion: 7
  m_Gravity: {x: 0, y: -9.81, z: 0}
  m_DefaultMaterial: {fileID: 0}
  m_BounceThreshold: 2
  m_SleepThreshold: 0.005
  m_DefaultContactOffset: 0.01
  m_DefaultSolverIterations: 6
  m_DefaultSolverVelocityIterations: 1
  m_QueriesHitBackfaces: 0
  m_QueriesHitTriggers: 1
  m_EnableAdaptiveForce: 0
  m_ClothInterCollisionDistance: 0
  m_ClothInterCollisionStiffness: 0
  m_ContactsGeneration: 1
  m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
  m_AutoSimulation: 1
  m_AutoSyncTransforms: 1
  m_ClothInterCollisionSettingsToggle: 0
  m_ContactPairsMode: 0
  m_BroadphaseType: 0
  m_WorldBounds:
    m_Center: {x: 0, y: 0, z: 0}
    m_Extent: {x: 250, y: 250, z: 250}
  m_WorldSubdivisions: 8


================================================
FILE: Water/ProjectSettings/EditorBuildSettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1045 &1
EditorBuildSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 2
  m_Scenes:
  - enabled: 1
    path: Assets/Scenes/SampleScene.unity
    guid: 99c9720ab356a0642a771bea13969a05
  m_configObjects: {}


================================================
FILE: Water/ProjectSettings/EditorSettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!159 &1
EditorSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 7
  m_ExternalVersionControlSupport: Visible Meta Files
  m_SerializationMode: 2
  m_LineEndingsForNewScripts: 2
  m_DefaultBehaviorMode: 0
  m_SpritePackerMode: 0
  m_SpritePackerPaddingPower: 1
  m_EtcTextureCompressorBehavior: 1
  m_EtcTextureFastCompressor: 1
  m_EtcTextureNormalCompressor: 2
  m_EtcTextureBestCompressor: 4
  m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef
  m_ProjectGenerationRootNamespace: 
  m_UserGeneratedProjectSuffix: 
  m_CollabEditorSettings:
    inProgressEnabled: 1


================================================
FILE: Water/ProjectSettings/GraphicsSettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!30 &1
GraphicsSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 12
  m_Deferred:
    m_Mode: 1
    m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
  m_DeferredReflections:
    m_Mode: 1
    m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
  m_ScreenSpaceShadows:
    m_Mode: 1
    m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
  m_LegacyDeferred:
    m_Mode: 1
    m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
  m_DepthNormals:
    m_Mode: 1
    m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
  m_MotionVectors:
    m_Mode: 1
    m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
  m_LightHalo:
    m_Mode: 1
    m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
  m_LensFlare:
    m_Mode: 1
    m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
  m_AlwaysIncludedShaders:
  - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0}
  - {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0}
  m_PreloadedShaders: []
  m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
    type: 0}
  m_CustomRenderPipeline: {fileID: 0}
  m_TransparencySortMode: 0
  m_TransparencySortAxis: {x: 0, y: 0, z: 1}
  m_DefaultRenderingPath: 1
  m_DefaultMobileRenderingPath: 1
  m_TierSettings:
  - serializedVersion: 5
    m_BuildTarget: 1
    m_Tier: 0
    m_Settings:
      standardShaderQuality: 2
      renderingPath: 1
      hdrMode: 1
      realtimeGICPUUsage: 25
      useReflectionProbeBoxProjection: 1
      useReflectionProbeBlending: 1
      useHDR: 1
      useDetailNormalMap: 1
      useCascadedShadowMaps: 1
      prefer32BitShadowMaps: 0
      enableLPPV: 1
      useDitherMaskForAlphaBlendedShadows: 1
    m_Automatic: 0
  - serializedVersion: 5
    m_BuildTarget: 1
    m_Tier: 1
    m_Settings:
      standardShaderQuality: 2
      renderingPath: 1
      hdrMode: 1
      realtimeGICPUUsage: 25
      useReflectionProbeBoxProjection: 1
      useReflectionProbeBlending: 1
      useHDR: 1
      useDetailNormalMap: 1
      useCascadedShadowMaps: 1
      prefer32BitShadowMaps: 0
      enableLPPV: 1
      useDitherMaskForAlphaBlendedShadows: 1
    m_Automatic: 0
  - serializedVersion: 5
    m_BuildTarget: 1
    m_Tier: 2
    m_Settings:
      standardShaderQuality: 2
      renderingPath: 1
      hdrMode: 1
      realtimeGICPUUsage: 50
      useReflectionProbeBoxProjection: 1
      useReflectionProbeBlending: 1
      useHDR: 1
      useDetailNormalMap: 1
      useCascadedShadowMaps: 1
      prefer32BitShadowMaps: 0
      enableLPPV: 1
      useDitherMaskForAlphaBlendedShadows: 1
    m_Automatic: 0
  m_LightmapStripping: 0
  m_FogStripping: 0
  m_InstancingStripping: 0
  m_LightmapKeepPlain: 1
  m_LightmapKeepDirCombined: 1
  m_LightmapKeepDynamicPlain: 1
  m_LightmapKeepDynamicDirCombined: 1
  m_LightmapKeepShadowMask: 1
  m_LightmapKeepSubtractive: 1
  m_FogKeepLinear: 1
  m_FogKeepExp: 1
  m_FogKeepExp2: 1
  m_AlbedoSwatchInfos: []
  m_LightsUseLinearIntensity: 0
  m_LightsUseColorTemperature: 0


================================================
FILE: Water/ProjectSettings/InputManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!13 &1
InputManager:
  m_ObjectHideFlags: 0
  serializedVersion: 2
  m_Axes:
  - serializedVersion: 3
    m_Name: Horizontal
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: left
    positiveButton: right
    altNegativeButton: a
    altPositiveButton: d
    gravity: 3
    dead: 0.001
    sensitivity: 3
    snap: 1
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Vertical
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: down
    positiveButton: up
    altNegativeButton: s
    altPositiveButton: w
    gravity: 3
    dead: 0.001
    sensitivity: 3
    snap: 1
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Fire1
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: left ctrl
    altNegativeButton: 
    altPositiveButton: mouse 0
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Fire2
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: left alt
    altNegativeButton: 
    altPositiveButton: mouse 1
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Fire3
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: left shift
    altNegativeButton: 
    altPositiveButton: mouse 2
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Jump
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: space
    altNegativeButton: 
    altPositiveButton: 
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Mouse X
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: 
    altNegativeButton: 
    altPositiveButton: 
    gravity: 0
    dead: 0
    sensitivity: 0.1
    snap: 0
    invert: 0
    type: 1
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Mouse Y
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: 
    altNegativeButton: 
    altPositiveButton: 
    gravity: 0
    dead: 0
    sensitivity: 0.1
    snap: 0
    invert: 0
    type: 1
    axis: 1
    joyNum: 0
  - serializedVersion: 3
    m_Name: Mouse ScrollWheel
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: 
    altNegativeButton: 
    altPositiveButton: 
    gravity: 0
    dead: 0
    sensitivity: 0.1
    snap: 0
    invert: 0
    type: 1
    axis: 2
    joyNum: 0
  - serializedVersion: 3
    m_Name: Horizontal
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: 
    altNegativeButton: 
    altPositiveButton: 
    gravity: 0
    dead: 0.19
    sensitivity: 1
    snap: 0
    invert: 0
    type: 2
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Vertical
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: 
    altNegativeButton: 
    altPositiveButton: 
    gravity: 0
    dead: 0.19
    sensitivity: 1
    snap: 0
    invert: 1
    type: 2
    axis: 1
    joyNum: 0
  - serializedVersion: 3
    m_Name: Fire1
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: joystick button 0
    altNegativeButton: 
    altPositiveButton: 
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Fire2
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: joystick button 1
    altNegativeButton: 
    altPositiveButton: 
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Fire3
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: joystick button 2
    altNegativeButton: 
    altPositiveButton: 
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Jump
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: joystick button 3
    altNegativeButton: 
    altPositiveButton: 
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Submit
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: return
    altNegativeButton: 
    altPositiveButton: joystick button 0
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Submit
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: enter
    altNegativeButton: 
    altPositiveButton: space
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0
  - serializedVersion: 3
    m_Name: Cancel
    descriptiveName: 
    descriptiveNegativeName: 
    negativeButton: 
    positiveButton: escape
    altNegativeButton: 
    altPositiveButton: joystick button 1
    gravity: 1000
    dead: 0.001
    sensitivity: 1000
    snap: 0
    invert: 0
    type: 0
    axis: 0
    joyNum: 0


================================================
FILE: Water/ProjectSettings/NavMeshAreas.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!126 &1
NavMeshProjectSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 2
  areas:
  - name: Walkable
    cost: 1
  - name: Not Walkable
    cost: 1
  - name: Jump
    cost: 2
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  - name: 
    cost: 1
  m_LastAgentTypeID: -887442657
  m_Settings:
  - serializedVersion: 2
    agentTypeID: 0
    agentRadius: 0.5
    agentHeight: 2
    agentSlope: 45
    agentClimb: 0.75
    ledgeDropHeight: 0
    maxJumpAcrossDistance: 0
    minRegionArea: 2
    manualCellSize: 0
    cellSize: 0.16666667
    manualTileSize: 0
    tileSize: 256
    accuratePlacement: 0
    debug:
      m_Flags: 0
  m_SettingNames:
  - Humanoid


================================================
FILE: Water/ProjectSettings/NetworkManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!149 &1
NetworkManager:
  m_ObjectHideFlags: 0
  m_DebugLevel: 0
  m_Sendrate: 15
  m_AssetToPrefab: {}


================================================
FILE: Water/ProjectSettings/Physics2DSettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!19 &1
Physics2DSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 3
  m_Gravity: {x: 0, y: -9.81}
  m_DefaultMaterial: {fileID: 0}
  m_VelocityIterations: 8
  m_PositionIterations: 3
  m_VelocityThreshold: 1
  m_MaxLinearCorrection: 0.2
  m_MaxAngularCorrection: 8
  m_MaxTranslationSpeed: 100
  m_MaxRotationSpeed: 360
  m_BaumgarteScale: 0.2
  m_BaumgarteTimeOfImpactScale: 0.75
  m_TimeToSleep: 0.5
  m_LinearSleepTolerance: 0.01
  m_AngularSleepTolerance: 2
  m_DefaultContactOffset: 0.01
  m_AutoSimulation: 1
  m_QueriesHitTriggers: 1
  m_QueriesStartInColliders: 1
  m_ChangeStopsCallbacks: 0
  m_CallbacksOnDisable: 1
  m_AutoSyncTransforms: 1
  m_AlwaysShowColliders: 0
  m_ShowColliderSleep: 1
  m_ShowColliderContacts: 0
  m_ShowColliderAABB: 0
  m_ContactArrowScale: 0.2
  m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
  m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
  m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
  m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
  m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff


================================================
FILE: Water/ProjectSettings/PresetManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1386491679 &1
PresetManager:
  m_ObjectHideFlags: 0
  m_DefaultList:
  - type:
      m_NativeTypeID: 108
      m_ManagedTypePPtr: {fileID: 0}
      m_ManagedTypeFallback: 
    defaultPresets:
    - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea,
        type: 2}
  - type:
      m_NativeTypeID: 1020
      m_ManagedTypePPtr: {fileID: 0}
      m_ManagedTypeFallback: 
    defaultPresets:
    - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6,
        type: 2}
  - type:
      m_NativeTypeID: 1006
      m_ManagedTypePPtr: {fileID: 0}
      m_ManagedTypeFallback: 
    defaultPresets:
    - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9,
        type: 2}


================================================
FILE: Water/ProjectSettings/ProjectSettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!129 &1
PlayerSettings:
  m_ObjectHideFlags: 0
  serializedVersion: 15
  productGUID: b04bf724ce5c14d10ad24a7ba3de8c44
  AndroidProfiler: 0
  AndroidFilterTouchesWhenObscured: 0
  AndroidEnableSustainedPerformanceMode: 0
  defaultScreenOrientation: 4
  targetDevice: 2
  useOnDemandResources: 0
  accelerometerFrequency: 60
  companyName: DefaultCompany
  productName: Water
  defaultCursor: {fileID: 0}
  cursorHotspot: {x: 0, y: 0}
  m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
  m_ShowUnitySplashScreen: 1
  m_ShowUnitySplashLogo: 1
  m_SplashScreenOverlayOpacity: 1
  m_SplashScreenAnimation: 1
  m_SplashScreenLogoStyle: 1
  m_SplashScreenDrawMode: 0
  m_SplashScreenBackgroundAnimationZoom: 1
  m_SplashScreenLogoAnimationZoom: 1
  m_SplashScreenBackgroundLandscapeAspect: 1
  m_SplashScreenBackgroundPortraitAspect: 1
  m_SplashScreenBackgroundLandscapeUvs:
    serializedVersion: 2
    x: 0
    y: 0
    width: 1
    height: 1
  m_SplashScreenBackgroundPortraitUvs:
    serializedVersion: 2
    x: 0
    y: 0
    width: 1
    height: 1
  m_SplashScreenLogos: []
  m_VirtualRealitySplashScreen: {fileID: 0}
  m_HolographicTrackingLossScreen: {fileID: 0}
  defaultScreenWidth: 1024
  defaultScreenHeight: 768
  defaultScreenWidthWeb: 960
  defaultScreenHeightWeb: 600
  m_StereoRenderingPath: 0
  m_ActiveColorSpace: 1
  m_MTRendering: 1
  m_StackTraceTypes: 010000000100000001000000010000000100000001000000
  iosShowActivityIndicatorOnLoading: -1
  androidShowActivityIndicatorOnLoading: -1
  iosAppInBackgroundBehavior: 0
  displayResolutionDialog: 1
  iosAllowHTTPDownload: 1
  allowedAutorotateToPortrait: 1
  allowedAutorotateToPortraitUpsideDown: 1
  allowedAutorotateToLandscapeRight: 1
  allowedAutorotateToLandscapeLeft: 1
  useOSAutorotation: 1
  use32BitDisplayBuffer: 1
  preserveFramebufferAlpha: 0
  disableDepthAndStencilBuffers: 0
  androidBlitType: 0
  defaultIsNativeResolution: 1
  macRetinaSupport: 1
  runInBackground: 1
  captureSingleScreen: 0
  muteOtherAudioSources: 0
  Prepare IOS For Recording: 0
  Force IOS Speakers When Recording: 0
  deferSystemGesturesMode: 0
  hideHomeButton: 0
  submitAnalytics: 1
  usePlayerLog: 1
  bakeCollisionMeshes: 0
  forceSingleInstance: 0
  resizableWindow: 0
  useMacAppStoreValidation: 0
  macAppStoreCategory: public.app-category.games
  gpuSkinning: 1
  graphicsJobs: 0
  xboxPIXTextureCapture: 0
  xboxEnableAvatar: 0
  xboxEnableKinect: 0
  xboxEnableKinectAutoTracking: 0
  xboxEnableFitness: 0
  visibleInBackground: 1
  allowFullscreenSwitch: 1
  graphicsJobMode: 0
  fullscreenMode: 1
  xboxSpeechDB: 0
  xboxEnableHeadOrientation: 0
  xboxEnableGuest: 0
  xboxEnablePIXSampling: 0
  metalFramebufferOnly: 0
  n3dsDisableStereoscopicView: 0
  n3dsEnableSharedListOpt: 1
  n3dsEnableVSync: 0
  xboxOneResolution: 0
  xboxOneSResolution: 0
  xboxOneXResolution: 3
  xboxOneMonoLoggingLevel: 0
  xboxOneLoggingLevel: 1
  xboxOneDisableEsram: 0
  xboxOnePresentImmediateThreshold: 0
  switchQueueCommandMemory: 0
  videoMemoryForVertexBuffers: 0
  psp2PowerMode: 0
  psp2AcquireBGM: 1
  vulkanEnableSetSRGBWrite: 0
  vulkanUseSWCommandBuffers: 0
  m_SupportedAspectRatios:
    4:3: 1
    5:4: 1
    16:10: 1
    16:9: 1
    Others: 1
  bundleVersion: 0.1
  preloadedAssets: []
  metroInputSource: 0
  wsaTransparentSwapchain: 0
  m_HolographicPauseOnTrackingLoss: 1
  xboxOneDisableKinectGpuReservation: 0
  xboxOneEnable7thCore: 0
  isWsaHolographicRemotingEnabled: 0
  vrSettings:
    cardboard:
      depthFormat: 0
      enableTransitionView: 0
    daydream:
      depthFormat: 0
      useSustainedPerformanceMode: 0
      enableVideoLayer: 0
      useProtectedVideoMemory: 0
      minimumSupportedHeadTracking: 0
      maximumSupportedHeadTracking: 1
    hololens:
      depthFormat: 1
      depthBufferSharingEnabled: 0
    oculus:
      sharedDepthBuffer: 0
      dashSupport: 0
    enable360StereoCapture: 0
  protectGraphicsMemory: 0
  useHDRDisplay: 0
  m_ColorGamuts: 00000000
  targetPixelDensity: 30
  resolutionScalingMode: 0
  androidSupportedAspectRatio: 1
  androidMaxAspectRatio: 2.1
  applicationIdentifier: {}
  buildNumber: {}
  AndroidBundleVersionCode: 1
  AndroidMinSdkVersion: 16
  AndroidTargetSdkVersion: 0
  AndroidPreferredInstallLocation: 1
  aotOptions: 
  stripEngineCode: 1
  iPhoneStrippingLevel: 0
  iPhoneScriptCallOptimization: 0
  ForceInternetPermission: 0
  ForceSDCardPermission: 0
  CreateWallpaper: 0
  APKExpansionFiles: 0
  keepLoadedShadersAlive: 0
  StripUnusedMeshComponents: 1
  VertexChannelCompressionMask: 4054
  iPhoneSdkVersion: 988
  iOSTargetOSVersionString: 8.0
  tvOSSdkVersion: 0
  tvOSRequireExtendedGameController: 0
  tvOSTargetOSVersionString: 9.0
  uIPrerenderedIcon: 0
  uIRequiresPersistentWiFi: 0
  uIRequiresFullScreen: 1
  uIStatusBarHidden: 1
  uIExitOnSuspend: 0
  uIStatusBarStyle: 0
  iPhoneSplashScreen: {fileID: 0}
  iPhoneHighResSplashScreen: {fileID: 0}
  iPhoneTallHighResSplashScreen: {fileID: 0}
  iPhone47inSplashScreen: {fileID: 0}
  iPhone55inPortraitSplashScreen: {fileID: 0}
  iPhone55inLandscapeSplashScreen: {fileID: 0}
  iPhone58inPortraitSplashScreen: {fileID: 0}
  iPhone58inLandscapeSplashScreen: {fileID: 0}
  iPadPortraitSplashScreen: {fileID: 0}
  iPadHighResPortraitSplashScreen: {fileID: 0}
  iPadLandscapeSplashScreen: {fileID: 0}
  iPadHighResLandscapeSplashScreen: {fileID: 0}
  appleTVSplashScreen: {fileID: 0}
  appleTVSplashScreen2x: {fileID: 0}
  tvOSSmallIconLayers: []
  tvOSSmallIconLayers2x: []
  tvOSLargeIconLayers: []
  tvOSLargeIconLayers2x: []
  tvOSTopShelfImageLayers: []
  tvOSTopShelfImageLayers2x: []
  tvOSTopShelfImageWideLayers: []
  tvOSTopShelfImageWideLayers2x: []
  iOSLaunchScreenType: 0
  iOSLaunchScreenPortrait: {fileID: 0}
  iOSLaunchScreenLandscape: {fileID: 0}
  iOSLaunchScreenBackgroundColor:
    serializedVersion: 2
    rgba: 0
  iOSLaunchScreenFillPct: 100
  iOSLaunchScreenSize: 100
  iOSLaunchScreenCustomXibPath: 
  iOSLaunchScreeniPadType: 0
  iOSLaunchScreeniPadImage: {fileID: 0}
  iOSLaunchScreeniPadBackgroundColor:
    serializedVersion: 2
    rgba: 0
  iOSLaunchScreeniPadFillPct: 100
  iOSLaunchScreeniPadSize: 100
  iOSLaunchScreeniPadCustomXibPath: 
  iOSUseLaunchScreenStoryboard: 0
  iOSLaunchScreenCustomStoryboardPath: 
  iOSDeviceRequirements: []
  iOSURLSchemes: []
  iOSBackgroundModes: 0
  iOSMetalForceHardShadows: 0
  metalEditorSupport: 1
  metalAPIValidation: 1
  iOSRenderExtraFrameOnPause: 0
  appleDeveloperTeamID: 
  iOSManualSigningProvisioningProfileID: 
  tvOSManualSigningProvisioningProfileID: 
  iOSManualSigningProvisioningProfileType: 0
  tvOSManualSigningProvisioningProfileType: 0
  appleEnableAutomaticSigning: 0
  iOSRequireARKit: 0
  appleEnableProMotion: 0
  vulkanEditorSupport: 0
  clonedFromGUID: 56e7a2d3a00f33d44bdd161b773c35b5
  templatePackageId: com.unity.template.3d@1.0.0
  templateDefaultScene: Assets/Scenes/SampleScene.unity
  AndroidTargetArchitectures: 5
  AndroidSplashScreenScale: 0
  androidSplashScreen: {fileID: 0}
  AndroidKeystoreName: 
  AndroidKeyaliasName: 
  AndroidBuildApkPerCpuArchitecture: 0
  AndroidTVCompatibility: 1
  AndroidIsGame: 1
  AndroidEnableTango: 0
  androidEnableBanner: 1
  androidUseLowAccuracyLocation: 0
  m_AndroidBanners:
  - width: 320
    height: 180
    banner: {fileID: 0}
  androidGamepadSupportLevel: 0
  resolutionDialogBanner: {fileID: 0}
  m_BuildTargetIcons: []
  m_BuildTargetPlatformIcons: []
  m_BuildTargetBatching:
  - m_BuildTarget: Standalone
    m_StaticBatching: 1
    m_DynamicBatching: 0
  - m_BuildTarget: tvOS
    m_StaticBatching: 1
    m_DynamicBatching: 0
  - m_BuildTarget: Android
    m_StaticBatching: 1
    m_DynamicBatching: 0
  - m_BuildTarget: iPhone
    m_StaticBatching: 1
    m_DynamicBatching: 0
  - m_BuildTarget: WebGL
    m_StaticBatching: 0
    m_DynamicBatching: 0
  m_BuildTargetGraphicsAPIs:
  - m_BuildTarget: AndroidPlayer
    m_APIs: 0b00000015000000
    m_Automatic: 1
  - m_BuildTarget: iOSSupport
    m_APIs: 10000000
    m_Automatic: 1
  - m_BuildTarget: AppleTVSupport
    m_APIs: 10000000
    m_Automatic: 0
  - m_BuildTarget: WebGLSupport
    m_APIs: 0b000000
    m_Automatic: 1
  m_BuildTargetVRSettings:
  - m_BuildTarget: Standalone
    m_Enabled: 0
    m_Devices:
    - Oculus
    - OpenVR
  m_BuildTargetEnableVuforiaSettings: []
  openGLRequireES31: 0
  openGLRequireES31AEP: 0
  m_TemplateCustomTags: {}
  mobileMTRendering:
    Android: 1
    iPhone: 1
    tvOS: 1
  m_BuildTargetGroupLightmapEncodingQuality: []
  m_BuildTargetGroupLightmapSettings: []
  playModeTestRunnerEnabled: 0
  runPlayModeTestAsEditModeTest: 0
  actionOnDotNetUnhandledException: 1
  enableInternalProfiler: 0
  logObjCUncaughtExceptions: 1
  enableCrashReportAPI: 0
  cameraUsageDescription: 
  locationUsageDescription: 
  microphoneUsageDescription: 
  switchNetLibKey: 
  switchSocketMemoryPoolSize: 6144
  switchSocketAllocatorPoolSize: 128
  switchSocketConcurrencyLimit: 14
  switchScreenResolutionBehavior: 2
  switchUseCPUProfiler: 0
  switchApplicationID: 0x01004b9000490000
  switchNSODependencies: 
  switchTitleNames_0: 
  switchTitleNames_1: 
  switchTitleNames_2: 
  switchTitleNames_3: 
  switchTitleNames_4: 
  switchTitleNames_5: 
  switchTitleNames_6: 
  switchTitleNames_7: 
  switchTitleNames_8: 
  switchTitleNames_9: 
  switchTitleNames_10: 
  switchTitleNames_11: 
  switchTitleNames_12: 
  switchTitleNames_13: 
  switchTitleNames_14: 
  switchPublisherNames_0: 
  switchPublisherNames_1: 
  switchPublisherNames_2: 
  switchPublisherNames_3: 
  switchPublisherNames_4: 
  switchPublisherNames_5: 
  switchPublisherNames_6: 
  switchPublisherNames_7: 
  switchPublisherNames_8: 
  switchPublisherNames_9: 
  switchPublisherNames_10: 
  switchPublisherNames_11: 
  switchPublisherNames_12: 
  switchPublisherNames_13: 
  switchPublisherNames_14: 
  switchIcons_0: {fileID: 0}
  switchIcons_1: {fileID: 0}
  switchIcons_2: {fileID: 0}
  switchIcons_3: {fileID: 0}
  switchIcons_4: {fileID: 0}
  switchIcons_5: {fileID: 0}
  switchIcons_6: {fileID: 0}
  switchIcons_7: {fileID: 0}
  switchIcons_8: {fileID: 0}
  switchIcons_9: {fileID: 0}
  switchIcons_10: {fileID: 0}
  switchIcons_11: {fileID: 0}
  switchIcons_12: {fileID: 0}
  switchIcons_13: {fileID: 0}
  switchIcons_14: {fileID: 0}
  switchSmallIcons_0: {fileID: 0}
  switchSmallIcons_1: {fileID: 0}
  switchSmallIcons_2: {fileID: 0}
  switchSmallIcons_3: {fileID: 0}
  switchSmallIcons_4: {fileID: 0}
  switchSmallIcons_5: {fileID: 0}
  switchSmallIcons_6: {fileID: 0}
  switchSmallIcons_7: {fileID: 0}
  switchSmallIcons_8: {fileID: 0}
  switchSmallIcons_9: {fileID: 0}
  switchSmallIcons_10: {fileID: 0}
  switchSmallIcons_11: {fileID: 0}
  switchSmallIcons_12: {fileID: 0}
  switchSmallIcons_13: {fileID: 0}
  switchSmallIcons_14: {fileID: 0}
  switchManualHTML: 
  switchAccessibleURLs: 
  switchLegalInformation: 
  switchMainThreadStackSize: 1048576
  switchPresenceGroupId: 
  switchLogoHandling: 0
  switchReleaseVersion: 0
  switchDisplayVersion: 1.0.0
  switchStartupUserAccount: 0
  switchTouchScreenUsage: 0
  switchSupportedLanguagesMask: 0
  switchLogoType: 0
  switchApplicationErrorCodeCategory: 
  switchUserAccountSaveDataSize: 0
  switchUserAccountSaveDataJournalSize: 0
  switchApplicationAttribute: 0
  switchCardSpecSize: -1
  switchCardSpecClock: -1
  switchRatingsMask: 0
  switchRatingsInt_0: 0
  switchRatingsInt_1: 0
  switchRatingsInt_2: 0
  switchRatingsInt_3: 0
  switchRatingsInt_4: 0
  switchRatingsInt_5: 0
  switchRatingsInt_6: 0
  switchRatingsInt_7: 0
  switchRatingsInt_8: 0
  switchRatingsInt_9: 0
  switchRatingsInt_10: 0
  switchRatingsInt_11: 0
  switchLocalCommunicationIds_0: 
  switchLocalCommunicationIds_1: 
  switchLocalCommunicationIds_2: 
  switchLocalCommunicationIds_3: 
  switchLocalCommunicationIds_4: 
  switchLocalCommunicationIds_5: 
  switchLocalCommunicationIds_6: 
  switchLocalCommunicationIds_7: 
  switchParentalControl: 0
  switchAllowsScreenshot: 1
  switchAllowsVideoCapturing: 1
  switchAllowsRuntimeAddOnContentInstall: 0
  switchDataLossConfirmation: 0
  switchUserAccountLockEnabled: 0
  switchSupportedNpadStyles: 3
  switchNativeFsCacheSize: 32
  switchIsHoldTypeHorizontal: 0
  switchSupportedNpadCount: 8
  switchSocketConfigEnabled: 0
  switchTcpInitialSendBufferSize: 32
  switchTcpInitialReceiveBufferSize: 64
  switchTcpAutoSendBufferSizeMax: 256
  switchTcpAutoReceiveBufferSizeMax: 256
  switchUdpSendBufferSize: 9
  switchUdpReceiveBufferSize: 42
  switchSocketBufferEfficiency: 4
  switchSocketInitializeEnabled: 1
  switchNetworkInterfaceManagerInitializeEnabled: 1
  switchPlayerConnectionEnabled: 1
  ps4NPAgeRating: 12
  ps4NPTitleSecret: 
  ps4NPTrophyPackPath: 
  ps4ParentalLevel: 11
  ps4ContentID: ED1633-NPXX51362_00-0000000000000000
  ps4Category: 0
  ps4MasterVersion: 01.00
  ps4AppVersion: 01.00
  ps4AppType: 0
  ps4ParamSfxPath: 
  ps4VideoOutPixelFormat: 0
  ps4VideoOutInitialWidth: 1920
  ps4VideoOutBaseModeInitialWidth: 1920
  ps4VideoOutReprojectionRate: 60
  ps4PronunciationXMLPath: 
  ps4PronunciationSIGPath: 
  ps4BackgroundImagePath: 
  ps4StartupImagePath: 
  ps4StartupImagesFolder: 
  ps4IconImagesFolder: 
  ps4SaveDataImagePath: 
  ps4SdkOverride: 
  ps4BGMPath: 
  ps4ShareFilePath: 
  ps4ShareOverlayImagePath: 
  ps4PrivacyGuardImagePath: 
  ps4NPtitleDatPath: 
  ps4RemotePlayKeyAssignment: -1
  ps4RemotePlayKeyMappingDir: 
  ps4PlayTogetherPlayerCount: 0
  ps4EnterButtonAssignment: 1
  ps4ApplicationParam1: 0
  ps4ApplicationParam2: 0
  ps4ApplicationParam3: 0
  ps4ApplicationParam4: 0
  ps4DownloadDataSize: 0
  ps4GarlicHeapSize: 2048
  ps4ProGarlicHeapSize: 2560
  ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ
  ps4pnSessions: 1
  ps4pnPresence: 1
  ps4pnFriends: 1
  ps4pnGameCustomData: 1
  playerPrefsSupport: 0
  enableApplicationExit: 0
  restrictedAudioUsageRights: 0
  ps4UseResolutionFallback: 0
  ps4ReprojectionSupport: 0
  ps4UseAudio3dBackend: 0
  ps4SocialScreenEnabled: 0
  ps4ScriptOptimizationLevel: 0
  ps4Audio3dVirtualSpeakerCount: 14
  ps4attribCpuUsage: 0
  ps4PatchPkgPath: 
  ps4PatchLatestPkgPath: 
  ps4PatchChangeinfoPath: 
  ps4PatchDayOne: 0
  ps4attribUserManagement: 0
  ps4attribMoveSupport: 0
  ps4attrib3DSupport: 0
  ps4attribShareSupport: 0
  ps4attribExclusiveVR: 0
  ps4disableAutoHideSplash: 0
  ps4videoRecordingFeaturesUsed: 0
  ps4contentSearchFeaturesUsed: 0
  ps4attribEyeToEyeDistanceSettingVR: 0
  ps4IncludedModules: []
  monoEnv: 
  psp2Splashimage: {fileID: 0}
  psp2NPTrophyPackPath: 
  psp2NPSupportGBMorGJP: 0
  psp2NPAgeRating: 12
  psp2NPTitleDatPath: 
  psp2NPCommsID: 
  psp2NPCommunicationsID: 
  psp2NPCommsPassphrase: 
  psp2NPCommsSig: 
  psp2ParamSfxPath: 
  psp2ManualPath: 
  psp2LiveAreaGatePath: 
  psp2LiveAreaBackroundPath: 
  psp2LiveAreaPath: 
  psp2LiveAreaTrialPath: 
  psp2PatchChangeInfoPath: 
  psp2PatchOriginalPackage: 
  psp2PackagePassword: F69AzBlax3CF3EDNhm3soLBPh71Yexui
  psp2KeystoneFile: 
  psp2MemoryExpansionMode: 0
  psp2DRMType: 0
  psp2StorageType: 0
  psp2MediaCapacity: 0
  psp2DLCConfigPath: 
  psp2ThumbnailPath: 
  psp2BackgroundPath: 
  psp2SoundPath: 
  psp2TrophyCommId: 
  psp2TrophyPackagePath: 
  psp2PackagedResourcesPath: 
  psp2SaveDataQuota: 10240
  psp2ParentalLevel: 1
  psp2ShortTitle: Not Set
  psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF
  psp2Category: 0
  psp2MasterVersion: 01.00
  psp2AppVersion: 01.00
  psp2TVBootMode: 0
  psp2EnterButtonAssignment: 2
  psp2TVDisableEmu: 0
  psp2AllowTwitterDialog: 1
  psp2Upgradable: 0
  psp2HealthWarning: 0
  psp2UseLibLocation: 0
  psp2InfoBarOnStartup: 0
  psp2InfoBarColor: 0
  psp2ScriptOptimizationLevel: 0
  splashScreenBackgroundSourceLandscape: {fileID: 0}
  splashScreenBackgroundSourcePortrait: {fileID: 0}
  spritePackerPolicy: 
  webGLMemorySize: 256
  webGLExceptionSupport: 1
  webGLNameFilesAsHashes: 0
  webGLDataCaching: 0
  webGLDebugSymbols: 0
  webGLEmscriptenArgs: 
  webGLModulesDirectory: 
  webGLTemplate: APPLICATION:Default
  webGLAnalyzeBuildSize: 0
  webGLUseEmbeddedResources: 0
  webGLCompressionFormat: 1
  webGLLinkerTarget: 0
  scriptingDefineSymbols:
    1: UNITY_POST_PROCESSING_STACK_V2
    4: UNITY_POST_PROCESSING_STACK_V2
    7: UNITY_POST_PROCESSING_STACK_V2
    13: UNITY_POST_PROCESSING_STACK_V2
    14: UNITY_POST_PROCESSING_STACK_V2
    17: UNITY_POST_PROCESSING_STACK_V2
    18: UNITY_POST_PROCESSING_STACK_V2
    19: UNITY_POST_PROCESSING_STACK_V2
    21: UNITY_POST_PROCESSING_STACK_V2
    23: UNITY_POST_PROCESSING_STACK_V2
    24: UNITY_POST_PROCESSING_STACK_V2
    25: UNITY_POST_PROCESSING_STACK_V2
    26: UNITY_POST_PROCESSING_STACK_V2
    27: UNITY_POST_PROCESSING_STACK_V2
  platformArchitecture: {}
  scriptingBackend: {}
  il2cppCompilerConfiguration: {}
  incrementalIl2cppBuild: {}
  allowUnsafeCode: 0
  additionalIl2CppArgs: 
  scriptingRuntimeVersion: 1
  apiCompatibilityLevelPerPlatform: {}
  m_RenderingPath: 1
  m_MobileRenderingPath: 1
  metroPackageName: Template_3D
  metroPackageVersion: 
  metroCertificatePath: 
  metroCertificatePassword: 
  metroCertificateSubject: 
  metroCertificateIssuer: 
  metroCertificateNotAfter: 0000000000000000
  metroApplicationDescription: Template_3D
  wsaImages: {}
  metroTileShortName: 
  metroTileShowName: 0
  metroMediumTileShowName: 0
  metroLargeTileShowName: 0
  metroWideTileShowName: 0
  metroDefaultTileSize: 1
  metroTileForegroundText: 2
  metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
  metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628,
    a: 1}
  metroSplashScreenUseBackgroundColor: 0
  platformCapabilities: {}
  metroFTAName: 
  metroFTAFileTypes: []
  metroProtocolName: 
  metroCompilationOverrides: 1
  n3dsUseExtSaveData: 0
  n3dsCompressStaticMem: 1
  n3dsExtSaveDataNumber: 0x12345
  n3dsStackSize: 131072
  n3dsTargetPlatform: 2
  n3dsRegion: 7
  n3dsMediaSize: 0
  n3dsLogoStyle: 3
  n3dsTitle: GameName
  n3dsProductCode: 
  n3dsApplicationId: 0xFF3FF
  XboxOneProductId: 
  XboxOneUpdateKey: 
  XboxOneSandboxId: 
  XboxOneContentId: 
  XboxOneTitleId: 
  XboxOneSCId: 
  XboxOneGameOsOverridePath: 
  XboxOnePackagingOverridePath: 
  XboxOneAppManifestOverridePath: 
  XboxOneVersion: 1.0.0.0
  XboxOnePackageEncryption: 0
  XboxOnePackageUpdateGranularity: 2
  XboxOneDescription: 
  XboxOneLanguage:
  - enus
  XboxOneCapability: []
  XboxOneGameRating: {}
  XboxOneIsContentPackage: 0
  XboxOneEnableGPUVariability: 0
  XboxOneSockets: {}
  XboxOneSplashScreen: {fileID: 0}
  XboxOneAllowedProductIds: []
  XboxOnePersistentLocalStorageSize: 0
  XboxOneXTitleMemory: 8
  xboxOneScriptCompiler: 0
  vrEditorSettings:
    daydream:
      daydreamIconForeground: {fileID: 0}
      daydreamIconBackground: {fileID: 0}
  cloudServicesEnabled:
    UNet: 1
  facebookSdkVersion: 7.9.4
  apiCompatibilityLevel: 3
  cloudProjectId: 
  projectName: Template_3D
  organizationId: 
  cloudEnabled: 0
  enableNativePlatformBackendsForNewInputSystem: 0
  disableOldInputManagerSupport: 0


================================================
FILE: Water/ProjectSettings/ProjectVersion.txt
================================================
m_EditorVersion: 2018.2.11f1


================================================
FILE: Water/ProjectSettings/QualitySettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!47 &1
QualitySettings:
  m_ObjectHideFlags: 0
  serializedVersion: 5
  m_CurrentQuality: 4
  m_QualitySettings:
  - serializedVersion: 2
    name: Very Low
    pixelLightCount: 0
    shadows: 0
    shadowResolution: 0
    shadowProjection: 1
    shadowCascades: 1
    shadowDistance: 15
    shadowNearPlaneOffset: 3
    shadowCascade2Split: 0.33333334
    shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
    shadowmaskMode: 0
    blendWeights: 1
    textureQuality: 1
    anisotropicTextures: 0
    antiAliasing: 0
    softParticles: 0
    softVegetation: 0
    realtimeReflectionProbes: 0
    billboardsFaceCameraPosition: 0
    vSyncCount: 0
    lodBias: 0.3
    maximumLODLevel: 0
    particleRaycastBudget: 4
    asyncUploadTimeSlice: 2
    asyncUploadBufferSize: 4
    resolutionScalingFixedDPIFactor: 1
    excludedTargetPlatforms: []
  - serializedVersion: 2
    name: Low
    pixelLightCount: 0
    shadows: 0
    shadowResolution: 0
    shadowProjection: 1
    shadowCascades: 1
    shadowDistance: 20
    shadowNearPlaneOffset: 3
    shadowCascade2Split: 0.33333334
    shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
    shadowmaskMode: 0
    blendWeights: 2
    textureQuality: 0
    anisotropicTextures: 0
    antiAliasing: 0
    softParticles: 0
    softVegetation: 0
    realtimeReflectionProbes: 0
    billboardsFaceCameraPosition: 0
    vSyncCount: 0
    lodBias: 0.4
    maximumLODLevel: 0
    particleRaycastBudget: 16
    asyncUploadTimeSlice: 2
    asyncUploadBufferSize: 4
    resolutionScalingFixedDPIFactor: 1
    excludedTargetPlatforms: []
  - serializedVersion: 2
    name: Medium
    pixelLightCount: 1
    shadows: 1
    shadowResolution: 0
    shadowProjection: 1
    shadowCascades: 1
    shadowDistance: 20
    shadowNearPlaneOffset: 3
    shadowCascade2Split: 0.33333334
    shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
    shadowmaskMode: 0
    blendWeights: 2
    textureQuality: 0
    anisotropicTextures: 1
    antiAliasing: 0
    softParticles: 0
    softVegetation: 0
    realtimeReflectionProbes: 0
    billboardsFaceCameraPosition: 0
    vSyncCount: 1
    lodBias: 0.7
    maximumLODLevel: 0
    particleRaycastBudget: 64
    asyncUploadTimeSlice: 2
    asyncUploadBufferSize: 4
    resolutionScalingFixedDPIFactor: 1
    excludedTargetPlatforms: []
  - serializedVersion: 2
    name: High
    pixelLightCount: 2
    shadows: 2
    shadowResolution: 1
    shadowProjection: 1
    shadowCascades: 2
    shadowDistance: 40
    shadowNearPlaneOffset: 3
    shadowCascade2Split: 0.33333334
    shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
    shadowmaskMode: 1
    blendWeights: 2
    textureQuality: 0
    anisotropicTextures: 1
    antiAliasing: 2
    softParticles: 0
    softVegetation: 1
    realtimeReflectionProbes: 1
    billboardsFaceCameraPosition: 1
    vSyncCount: 1
    lodBias: 1
    maximumLODLevel: 0
    particleRaycastBudget: 256
    asyncUploadTimeSlice: 2
    asyncUploadBufferSize: 4
    resolutionScalingFixedDPIFactor: 1
    excludedTargetPlatforms: []
  - serializedVersion: 2
    name: Very High
    pixelLightCount: 3
    shadows: 2
    shadowResolution: 2
    shadowProjection: 1
    shadowCascades: 2
    shadowDistance: 40
    shadowNearPlaneOffset: 3
    shadowCascade2Split: 0.33333334
    shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
    shadowmaskMode: 1
    blendWeights: 4
    textureQuality: 0
    anisotropicTextures: 1
    antiAliasing: 4
    softParticles: 1
    softVegetation: 1
    realtimeReflectionProbes: 1
    billboardsFaceCameraPosition: 1
    vSyncCount: 1
    lodBias: 1.5
    maximumLODLevel: 0
    particleRaycastBudget: 1024
    asyncUploadTimeSlice: 2
    asyncUploadBufferSize: 4
    resolutionScalingFixedDPIFactor: 1
    excludedTargetPlatforms: []
  - serializedVersion: 2
    name: Ultra
    pixelLightCount: 4
    shadows: 2
    shadowResolution: 2
    shadowProjection: 1
    shadowCascades: 4
    shadowDistance: 150
    shadowNearPlaneOffset: 3
    shadowCascade2Split: 0.33333334
    shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
    shadowmaskMode: 1
    blendWeights: 4
    textureQuality: 0
    anisotropicTextures: 1
    antiAliasing: 4
    softParticles: 1
    softVegetation: 1
    realtimeReflectionProbes: 1
    billboardsFaceCameraPosition: 1
    vSyncCount: 1
    lodBias: 2
    maximumLODLevel: 0
    particleRaycastBudget: 4096
    asyncUploadTimeSlice: 2
    asyncUploadBufferSize: 4
    resolutionScalingFixedDPIFactor: 1
    excludedTargetPlatforms: []
  m_PerPlatformDefaultQuality:
    Android: 2
    Nintendo 3DS: 5
    Nintendo Switch: 5
    PS4: 5
    PSP2: 2
    Standalone: 5
    Tizen: 2
    WebGL: 3
    WiiU: 5
    Windows Store Apps: 5
    XboxOne: 5
    iPhone: 2
    tvOS: 2


================================================
FILE: Water/ProjectSettings/TagManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!78 &1
TagManager:
  serializedVersion: 2
  tags: []
  layers:
  - Default
  - TransparentFX
  - Ignore Raycast
  - 
  - Water
  - UI
  - 
  - 
  - PostProcessing
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  - 
  m_SortingLayers:
  - name: Default
    uniqueID: 0
    locked: 0


================================================
FILE: Water/ProjectSettings/TimeManager.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!5 &1
TimeManager:
  m_ObjectHideFlags: 0
  Fixed Timestep: 0.0167
  Maximum Allowed Timestep: 0.1
  m_TimeScale: 1
  Maximum Particle Timestep: 0.03


================================================
FILE: Water/ProjectSettings/UnityConnectSettings.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!310 &1
UnityConnectSettings:
  m_ObjectHideFlags: 0
  m_Enabled: 1
  m_TestMode: 0
  m_TestEventUrl: 
  m_TestConfigUrl: 
  m_TestInitMode: 0
  CrashReportingSettings:
    m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes
    m_NativeEventUrl: https://perf-events.cloud.unity3d.com/symbolicate
    m_Enabled: 0
    m_CaptureEditorExceptions: 1
  UnityPurchasingSettings:
    m_Enabled: 0
    m_TestMode: 0
  UnityAnalyticsSettings:
    m_Enabled: 1
    m_InitializeOnStartup: 1
    m_TestMode: 0
    m_TestEventUrl: 
    m_TestConfigUrl: 
  UnityAdsSettings:
    m_Enabled: 0
    m_InitializeOnStartup: 1
    m_TestMode: 0
    m_IosGameId: 
    m_AndroidGameId: 
    m_GameIds: {}
    m_GameId: 
  PerformanceReportingSettings:
    m_Enabled: 0
Download .txt
gitextract_me6j29t8/

├── .gitignore
├── LICENSE
├── README.md
└── Water/
    ├── .gitignore
    ├── Assets/
    │   ├── Plugins/
    │   │   ├── Editor/
    │   │   │   ├── .gitignore
    │   │   │   └── JetBrains.meta
    │   │   └── Editor.meta
    │   ├── Plugins.meta
    │   ├── Water/
    │   │   ├── Materials/
    │   │   │   ├── Skybox.mat
    │   │   │   ├── Skybox.mat.meta
    │   │   │   ├── Underwater.mat
    │   │   │   ├── Underwater.mat.meta
    │   │   │   ├── WaterSurface.mat
    │   │   │   └── WaterSurface.mat.meta
    │   │   ├── Materials.meta
    │   │   ├── Models/
    │   │   │   ├── terrain.fbx
    │   │   │   ├── terrain.fbx.meta
    │   │   │   ├── watersurface.fbx
    │   │   │   └── watersurface.fbx.meta
    │   │   ├── Models.meta
    │   │   ├── Prefabs/
    │   │   │   ├── Water Surface.prefab
    │   │   │   └── Water Surface.prefab.meta
    │   │   ├── Prefabs.meta
    │   │   ├── Scenes/
    │   │   │   ├── SampleScene/
    │   │   │   │   ├── LightingData.asset
    │   │   │   │   ├── LightingData.asset.meta
    │   │   │   │   ├── ReflectionProbe-0.exr
    │   │   │   │   ├── ReflectionProbe-0.exr.meta
    │   │   │   │   ├── ReflectionProbe-1.exr
    │   │   │   │   └── ReflectionProbe-1.exr.meta
    │   │   │   ├── SampleScene.meta
    │   │   │   ├── SampleScene.unity
    │   │   │   ├── SampleScene.unity.meta
    │   │   │   ├── SampleScene_Profiles/
    │   │   │   │   ├── Post-process Volume Profile.asset
    │   │   │   │   └── Post-process Volume Profile.asset.meta
    │   │   │   └── SampleScene_Profiles.meta
    │   │   ├── Scenes.meta
    │   │   ├── Scripts/
    │   │   │   ├── CameraMove.cs
    │   │   │   ├── CameraMove.cs.meta
    │   │   │   ├── LightGrab.cs
    │   │   │   ├── LightGrab.cs.meta
    │   │   │   ├── Water.cs
    │   │   │   ├── Water.cs.meta
    │   │   │   ├── WaterSettings.cs
    │   │   │   ├── WaterSettings.cs.meta
    │   │   │   ├── WaterUtility.cs
    │   │   │   └── WaterUtility.cs.meta
    │   │   ├── Scripts.meta
    │   │   ├── Shaders/
    │   │   │   ├── WaterSurface.shader
    │   │   │   ├── WaterSurface.shader.meta
    │   │   │   ├── WaterUnder.shader
    │   │   │   └── WaterUnder.shader.meta
    │   │   ├── Shaders.meta
    │   │   ├── Textures/
    │   │   │   ├── grid.png.meta
    │   │   │   └── water-normal.png.meta
    │   │   └── Textures.meta
    │   └── Water.meta
    ├── Packages/
    │   └── manifest.json
    └── ProjectSettings/
        ├── AudioManager.asset
        ├── ClusterInputManager.asset
        ├── DynamicsManager.asset
        ├── EditorBuildSettings.asset
        ├── EditorSettings.asset
        ├── GraphicsSettings.asset
        ├── InputManager.asset
        ├── NavMeshAreas.asset
        ├── NetworkManager.asset
        ├── Physics2DSettings.asset
        ├── PresetManager.asset
        ├── ProjectSettings.asset
        ├── ProjectVersion.txt
        ├── QualitySettings.asset
        ├── TagManager.asset
        ├── TimeManager.asset
        └── UnityConnectSettings.asset
Download .txt
SYMBOL INDEX (20 symbols across 5 files)

FILE: Water/Assets/Water/Scripts/CameraMove.cs
  class CameraMove (line 3) | public class CameraMove : MonoBehaviour
    method Update (line 5) | void Update()

FILE: Water/Assets/Water/Scripts/LightGrab.cs
  class LightGrab (line 3) | [ExecuteInEditMode]
    method Update (line 19) | void Update()
    method GetLightColor (line 49) | Color GetLightColor(Vector3 lightDir)

FILE: Water/Assets/Water/Scripts/Water.cs
  class Water (line 4) | [ExecuteInEditMode]
    method OnWillRenderObject (line 38) | void OnWillRenderObject()
    method UpdateMaterial (line 112) | void UpdateMaterial()
    method OnEnable (line 158) | void OnEnable()
    method LateUpdate (line 163) | void LateUpdate()
    method PreRender (line 168) | void PreRender(Camera c)
    method OnDisable (line 179) | void OnDisable()
    method UpdateCameraModes (line 196) | void UpdateCameraModes(Camera src)
    method GetRenderTexture (line 236) | RenderTexture GetRenderTexture(Camera currentCamera)
    method CameraSpacePlane (line 265) | Vector4 CameraSpacePlane(Camera cam, Vector3 pos, Vector3 normal)
    method CalculateReflectionMatrix (line 279) | static void CalculateReflectionMatrix(ref Matrix4x4 reflectionMat, Vec...

FILE: Water/Assets/Water/Scripts/WaterSettings.cs
  class WaterSettings (line 4) | [Serializable]

FILE: Water/Assets/Water/Scripts/WaterUtility.cs
  class WaterUtility (line 3) | public static class WaterUtility
    method ToVector3 (line 5) | public static Vector3 ToVector3(this Color c) => new Vector3(c.r, c.g,...
    method GetTransmittance (line 7) | public static Vector3 GetTransmittance(Vector3 lightDir, Vector3 light...
Condensed preview — 74 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (191K chars).
[
  {
    "path": ".gitignore",
    "chars": 1020,
    "preview": "# macOS\n# General\n.DS_Store\n.AppleDouble\n.LSOverride\n\n# Icon must end with two \\r\nIcon\n\n\n# Thumbnails\n._*\n\n# Files that "
  },
  {
    "path": "LICENSE",
    "chars": 1061,
    "preview": "MIT License\n\nCopyright (c) 2018 Muck\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof th"
  },
  {
    "path": "README.md",
    "chars": 2398,
    "preview": "# Optically Realistic Water\nA Unity port of Martins Upitis' fantastic [ocean water shader](https://devlog-martinsh.blogs"
  },
  {
    "path": "Water/.gitignore",
    "chars": 427,
    "preview": "[Ll]ibrary/\n[Tt]emp/\n[Oo]bj/\n[Bb]uild/\n[Bb]uilds/\nAssets/AssetStoreTools*\n\n# Visual Studio 2015 cache directory\n/.vs/\n\n#"
  },
  {
    "path": "Water/Assets/Plugins/Editor/.gitignore",
    "chars": 16,
    "preview": "[Jj]et[Bb]rains/"
  },
  {
    "path": "Water/Assets/Plugins/Editor/JetBrains.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 000f9a97b0c034e85834df174bcc9506\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Plugins/Editor.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 9eaaf39c5592849cb9a2985b96401ad8\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Plugins.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 640382a6168b94ee69c490b6eb71a5d9\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Materials/Skybox.mat",
    "chars": 794,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!21 &2100000\nMaterial:\n  serializedVersion: 6\n  m_ObjectHideFlags: 0\n  m_"
  },
  {
    "path": "Water/Assets/Water/Materials/Skybox.mat.meta",
    "chars": 188,
    "preview": "fileFormatVersion: 2\nguid: 4a8aa65aac3ec4b3fa72f539852b84f9\nNativeFormatImporter:\n  externalObjects: {}\n  mainObjectFile"
  },
  {
    "path": "Water/Assets/Water/Materials/Underwater.mat",
    "chars": 2410,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!21 &2100000\nMaterial:\n  serializedVersion: 6\n  m_ObjectHideFlags: 0\n  m_"
  },
  {
    "path": "Water/Assets/Water/Materials/Underwater.mat.meta",
    "chars": 188,
    "preview": "fileFormatVersion: 2\nguid: 06618ef051ba8422a85c276d05b5be98\nNativeFormatImporter:\n  externalObjects: {}\n  mainObjectFile"
  },
  {
    "path": "Water/Assets/Water/Materials/WaterSurface.mat",
    "chars": 1585,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!21 &2100000\nMaterial:\n  serializedVersion: 6\n  m_ObjectHideFlags: 0\n  m_"
  },
  {
    "path": "Water/Assets/Water/Materials/WaterSurface.mat.meta",
    "chars": 188,
    "preview": "fileFormatVersion: 2\nguid: 784f7b1ea93064cb79f69935ad0efad4\nNativeFormatImporter:\n  externalObjects: {}\n  mainObjectFile"
  },
  {
    "path": "Water/Assets/Water/Materials.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 8ba53af3751684390ae8d35fde42204f\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Models/terrain.fbx.meta",
    "chars": 2225,
    "preview": "fileFormatVersion: 2\nguid: 230faa639d2cf4ee98a023a6526b47ff\nModelImporter:\n  serializedVersion: 22\n  fileIDToRecycleName"
  },
  {
    "path": "Water/Assets/Water/Models/watersurface.fbx.meta",
    "chars": 3641,
    "preview": "fileFormatVersion: 2\nguid: f887aba9d4c2b4ed7aa199c12fda2221\nModelImporter:\n  serializedVersion: 22\n  fileIDToRecycleName"
  },
  {
    "path": "Water/Assets/Water/Models.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: c067694b1663f4a319591cbac03ae3d3\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Prefabs/Water Surface.prefab",
    "chars": 3653,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!1001 &100100000\nPrefab:\n  m_ObjectHideFlags: 1\n  serializedVersion: 2\n  "
  },
  {
    "path": "Water/Assets/Water/Prefabs/Water Surface.prefab.meta",
    "chars": 190,
    "preview": "fileFormatVersion: 2\nguid: 20de1bf9e984c4606a378e2e88960fe2\nNativeFormatImporter:\n  externalObjects: {}\n  mainObjectFile"
  },
  {
    "path": "Water/Assets/Water/Prefabs.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: a6b6b767a300b4426ba058af2c640842\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene/LightingData.asset.meta",
    "chars": 189,
    "preview": "fileFormatVersion: 2\nguid: f1061ecdfe0124098a6f7abd28d41fbb\nNativeFormatImporter:\n  externalObjects: {}\n  mainObjectFile"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene/ReflectionProbe-0.exr.meta",
    "chars": 1853,
    "preview": "fileFormatVersion: 2\nguid: 71213cc1419644e388aecddf279aef6b\nTextureImporter:\n  fileIDToRecycleName:\n    8900000: generat"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene/ReflectionProbe-1.exr.meta",
    "chars": 1853,
    "preview": "fileFormatVersion: 2\nguid: 5a58a4cc09abf44d291f28fa3ee7ddac\nTextureImporter:\n  fileIDToRecycleName:\n    8900000: generat"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 4170843eeef83425a9a6c96eaf19fdb5\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene.unity",
    "chars": 26607,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!29 &1\nOcclusionCullingSettings:\n  m_ObjectHideFlags: 0\n  serializedVersi"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene.unity.meta",
    "chars": 162,
    "preview": "fileFormatVersion: 2\r\nguid: 99c9720ab356a0642a771bea13969a05\r\nDefaultImporter:\r\n  externalObjects: {}\r\n  userData: \r\n  a"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene_Profiles/Post-process Volume Profile.asset",
    "chars": 22906,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!114 &11400000\nMonoBehaviour:\n  m_ObjectHideFlags: 0\n  m_PrefabParentObje"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene_Profiles/Post-process Volume Profile.asset.meta",
    "chars": 189,
    "preview": "fileFormatVersion: 2\nguid: fe7b519646b984bcd9778a537cbc164c\nNativeFormatImporter:\n  externalObjects: {}\n  mainObjectFile"
  },
  {
    "path": "Water/Assets/Water/Scenes/SampleScene_Profiles.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 74e3dc751f42141a58fb42c416891d2f\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Scenes.meta",
    "chars": 180,
    "preview": "fileFormatVersion: 2\r\nguid: 4f704ae4b4f98ae41a0bce26658850c1\r\nfolderAsset: yes\r\nDefaultImporter:\r\n  externalObjects: {}\r"
  },
  {
    "path": "Water/Assets/Water/Scripts/CameraMove.cs",
    "chars": 393,
    "preview": "using UnityEngine;\r\n\r\npublic class CameraMove : MonoBehaviour\r\n{\r\n\tvoid Update()\r\n\t{\r\n\t\ttransform.Rotate(-Input.GetAxis"
  },
  {
    "path": "Water/Assets/Water/Scripts/CameraMove.cs.meta",
    "chars": 243,
    "preview": "fileFormatVersion: 2\nguid: 55512927bb6e346438f511122529a907\nMonoImporter:\n  externalObjects: {}\n  serializedVersion: 2\n "
  },
  {
    "path": "Water/Assets/Water/Scripts/LightGrab.cs",
    "chars": 1440,
    "preview": "using UnityEngine;\r\n\r\n[ExecuteInEditMode]\r\npublic class LightGrab : MonoBehaviour\r\n{\r\n\t[SerializeField]\r\n\tColor extinct"
  },
  {
    "path": "Water/Assets/Water/Scripts/LightGrab.cs.meta",
    "chars": 243,
    "preview": "fileFormatVersion: 2\nguid: 4b5fe6ee500ee41c39b6f3662c2fbf20\nMonoImporter:\n  externalObjects: {}\n  serializedVersion: 2\n "
  },
  {
    "path": "Water/Assets/Water/Scripts/Water.cs",
    "chars": 9608,
    "preview": "using System.Collections.Generic;\r\nusing UnityEngine;\r\n\r\n[ExecuteInEditMode]\r\npublic class Water : MonoBehaviour\r\n{\r\n\t["
  },
  {
    "path": "Water/Assets/Water/Scripts/Water.cs.meta",
    "chars": 243,
    "preview": "fileFormatVersion: 2\nguid: cf6badaa217364968a525ba8a44a3fe3\nMonoImporter:\n  externalObjects: {}\n  serializedVersion: 2\n "
  },
  {
    "path": "Water/Assets/Water/Scripts/WaterSettings.cs",
    "chars": 976,
    "preview": "using System;\nusing UnityEngine;\n\n[Serializable]\npublic class WaterSettings\n{\n\tpublic static WaterSettings Default => ne"
  },
  {
    "path": "Water/Assets/Water/Scripts/WaterSettings.cs.meta",
    "chars": 86,
    "preview": "fileFormatVersion: 2\r\nguid: 4a75d34a0ae34f259cb9e252b7454714\r\ntimeCreated: 1539418983"
  },
  {
    "path": "Water/Assets/Water/Scripts/WaterUtility.cs",
    "chars": 475,
    "preview": "using UnityEngine;\r\n\r\npublic static class WaterUtility\r\n{\r\n\tpublic static Vector3 ToVector3(this Color c) => new Vector3"
  },
  {
    "path": "Water/Assets/Water/Scripts/WaterUtility.cs.meta",
    "chars": 86,
    "preview": "fileFormatVersion: 2\r\nguid: 0cccd72dcdad4428bfc2bb16b1d1f5b4\r\ntimeCreated: 1540008067"
  },
  {
    "path": "Water/Assets/Water/Scripts.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 3a4dc27fd14f94831a20bd62dc2cd11d\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Shaders/WaterSurface.shader",
    "chars": 18316,
    "preview": "Shader \"Water/WaterSurface\"\r\n{\r\n\tSubShader\r\n\t{\r\n\t\tTags { \"RenderType\"=\"Overlay\" \"Queue\"=\"Transparent\" }\r\n\t\tLOD 100\r\n\t\tZ"
  },
  {
    "path": "Water/Assets/Water/Shaders/WaterSurface.shader.meta",
    "chars": 204,
    "preview": "fileFormatVersion: 2\nguid: 6cdea64d237bb4dfa80eddee7ad81c28\nShaderImporter:\n  externalObjects: {}\n  defaultTextures: []\n"
  },
  {
    "path": "Water/Assets/Water/Shaders/WaterUnder.shader",
    "chars": 19777,
    "preview": "Shader \"Water/WaterUnder\"\r\n{\r\n\tProperties\r\n\t{\r\n\t\t_MainTex(\"Texture\", 2D) = \"white\" {}\r\n\t}\r\n\tSubShader\r\n\t{\r\n\t\tTags { \"Re"
  },
  {
    "path": "Water/Assets/Water/Shaders/WaterUnder.shader.meta",
    "chars": 204,
    "preview": "fileFormatVersion: 2\nguid: 891ac3ba7a1754646afff4b89a5a8a80\nShaderImporter:\n  externalObjects: {}\n  defaultTextures: []\n"
  },
  {
    "path": "Water/Assets/Water/Shaders.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 733aac3ad35d543d1a150a975b03c3f9\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water/Textures/grid.png.meta",
    "chars": 2393,
    "preview": "fileFormatVersion: 2\nguid: 65b81ca5f830e4f1f87398de1eedbad9\nTextureImporter:\n  fileIDToRecycleName: {}\n  externalObjects"
  },
  {
    "path": "Water/Assets/Water/Textures/water-normal.png.meta",
    "chars": 2393,
    "preview": "fileFormatVersion: 2\nguid: eca2a7fa5744c453b8a3dd4d9549b767\nTextureImporter:\n  fileIDToRecycleName: {}\n  externalObjects"
  },
  {
    "path": "Water/Assets/Water/Textures.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 1e8901ab0328c441da00bc2a5d374b09\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Assets/Water.meta",
    "chars": 172,
    "preview": "fileFormatVersion: 2\nguid: 446a5f9c4c14e4052b0dcda9fb25a2a0\nfolderAsset: yes\nDefaultImporter:\n  externalObjects: {}\n  us"
  },
  {
    "path": "Water/Packages/manifest.json",
    "chars": 1508,
    "preview": "{\n  \"dependencies\": {\n    \"com.unity.package-manager-ui\": \"1.9.11\",\n    \"com.unity.postprocessing\": \"2.0.12-preview\",\n  "
  },
  {
    "path": "Water/ProjectSettings/AudioManager.asset",
    "chars": 377,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!11 &1\r\nAudioManager:\r\n  m_ObjectHideFlags: 0\r\n  m_Volume: 1\r\n  Rolloff"
  },
  {
    "path": "Water/ProjectSettings/ClusterInputManager.asset",
    "chars": 120,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!236 &1\r\nClusterInputManager:\r\n  m_ObjectHideFlags: 0\r\n  m_Inputs: []\r\n"
  },
  {
    "path": "Water/ProjectSettings/DynamicsManager.asset",
    "chars": 1073,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!55 &1\r\nPhysicsManager:\r\n  m_ObjectHideFlags: 0\r\n  serializedVersion: 7"
  },
  {
    "path": "Water/ProjectSettings/EditorBuildSettings.asset",
    "chars": 268,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!1045 &1\r\nEditorBuildSettings:\r\n  m_ObjectHideFlags: 0\r\n  serializedVer"
  },
  {
    "path": "Water/ProjectSettings/EditorSettings.asset",
    "chars": 629,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!159 &1\nEditorSettings:\n  m_ObjectHideFlags: 0\n  serializedVersion: 7\n  m"
  },
  {
    "path": "Water/ProjectSettings/GraphicsSettings.asset",
    "chars": 3685,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!30 &1\nGraphicsSettings:\n  m_ObjectHideFlags: 0\n  serializedVersion: 12\n "
  },
  {
    "path": "Water/ProjectSettings/InputManager.asset",
    "chars": 6088,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!13 &1\r\nInputManager:\r\n  m_ObjectHideFlags: 0\r\n  serializedVersion: 2\r\n"
  },
  {
    "path": "Water/ProjectSettings/NavMeshAreas.asset",
    "chars": 1399,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!126 &1\r\nNavMeshProjectSettings:\r\n  m_ObjectHideFlags: 0\r\n  serializedV"
  },
  {
    "path": "Water/ProjectSettings/NetworkManager.asset",
    "chars": 159,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!149 &1\r\nNetworkManager:\r\n  m_ObjectHideFlags: 0\r\n  m_DebugLevel: 0\r\n  "
  },
  {
    "path": "Water/ProjectSettings/Physics2DSettings.asset",
    "chars": 1437,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!19 &1\r\nPhysics2DSettings:\r\n  m_ObjectHideFlags: 0\r\n  serializedVersion"
  },
  {
    "path": "Water/ProjectSettings/PresetManager.asset",
    "chars": 824,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!1386491679 &1\r\nPresetManager:\r\n  m_ObjectHideFlags: 0\r\n  m_DefaultList"
  },
  {
    "path": "Water/ProjectSettings/ProjectSettings.asset",
    "chars": 19070,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!129 &1\nPlayerSettings:\n  m_ObjectHideFlags: 0\n  serializedVersion: 15\n  "
  },
  {
    "path": "Water/ProjectSettings/ProjectVersion.txt",
    "chars": 29,
    "preview": "m_EditorVersion: 2018.2.11f1\n"
  },
  {
    "path": "Water/ProjectSettings/QualitySettings.asset",
    "chars": 4835,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!47 &1\nQualitySettings:\n  m_ObjectHideFlags: 0\n  serializedVersion: 5\n  m"
  },
  {
    "path": "Water/ProjectSettings/TagManager.asset",
    "chars": 435,
    "preview": "%YAML 1.1\r\n%TAG !u! tag:unity3d.com,2011:\r\n--- !u!78 &1\r\nTagManager:\r\n  serializedVersion: 2\r\n  tags: []\r\n  layers:\r\n  -"
  },
  {
    "path": "Water/ProjectSettings/TimeManager.asset",
    "chars": 197,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!5 &1\nTimeManager:\n  m_ObjectHideFlags: 0\n  Fixed Timestep: 0.0167\n  Maxi"
  },
  {
    "path": "Water/ProjectSettings/UnityConnectSettings.asset",
    "chars": 812,
    "preview": "%YAML 1.1\n%TAG !u! tag:unity3d.com,2011:\n--- !u!310 &1\nUnityConnectSettings:\n  m_ObjectHideFlags: 0\n  m_Enabled: 1\n  m_T"
  }
]

// ... and 5 more files (download for full content)

About this extraction

This page contains the full source code of the muckSponge/Optically-Realistic-Water GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 74 files (171.9 KB), approximately 66.6k tokens, and a symbol index with 20 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!