├── Assets ├── Test Card.png ├── Test.unity.meta ├── Test Card.mat.meta ├── RippleEffect.meta ├── RippleEffect │ ├── RippleEffect.shader.meta │ ├── RippleEffect.cs.meta │ ├── RippleEffect.shader │ └── RippleEffect.cs ├── Test Card.mat ├── Test Card.png.meta └── Test.unity ├── RippleEffect.unitypackage ├── .gitignore ├── ProjectSettings ├── EditorBuildSettings.asset ├── NetworkManager.asset ├── TimeManager.asset ├── GraphicsSettings.asset ├── AudioManager.asset ├── EditorSettings.asset ├── DynamicsManager.asset ├── Physics2DSettings.asset ├── TagManager.asset ├── NavMeshLayers.asset ├── QualitySettings.asset ├── InputManager.asset └── ProjectSettings.asset └── README.md /Assets/Test Card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/keijiro/RippleEffect/HEAD/Assets/Test Card.png -------------------------------------------------------------------------------- /RippleEffect.unitypackage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/keijiro/RippleEffect/HEAD/RippleEffect.unitypackage -------------------------------------------------------------------------------- /Assets/Test.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e245a72ea8254a97bd9932af5f6fc74 3 | DefaultImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | Library/ 2 | Temp/ 3 | 4 | *.csproj 5 | *.unityproj 6 | *.sln 7 | *.pidb 8 | *.userprefs 9 | 10 | .DS_Store 11 | -------------------------------------------------------------------------------- /Assets/Test Card.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6d68704d564943a19cf778a71d2f67e 3 | NativeFormatImporter: 4 | userData: 5 | -------------------------------------------------------------------------------- /Assets/RippleEffect.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7fe411a77dc3f47caa28fced4b13dc44 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | -------------------------------------------------------------------------------- /Assets/RippleEffect/RippleEffect.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 162fe242d486f4dab90ed53db15b9c19 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: .0199999996 7 | Maximum Allowed Timestep: .333333343 8 | m_TimeScale: 1 9 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | m_AlwaysIncludedShaders: 7 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 8 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | m_SpeedOfSound: 347 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_DSPBufferSize: 0 12 | m_DisableAudio: 0 13 | -------------------------------------------------------------------------------- /Assets/RippleEffect/RippleEffect.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a1bc7030f5bb244b09b8037c2ded95f1 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: 6 | - shader: {fileID: 4800000, guid: 162fe242d486f4dab90ed53db15b9c19, type: 3} 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Water surface ripple effect for Unity 2 | ------------------------------------- 3 | 4 | ![screenshot](http://keijiro.github.io/RippleEffect/screenshot.png) 5 | 6 | https://vine.co/v/MrF1utblYLM 7 | 8 | This is an image effect that distorts the rendered image with ripples on a water surface. 9 | 10 | ### License 11 | 12 | You can use the scripts and the shaders in this project as you like. 13 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_WebSecurityEmulationEnabled: 0 10 | m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d 11 | m_DefaultBehaviorMode: 0 12 | m_SpritePackerMode: 0 13 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | m_Gravity: {x: 0, y: -9.81000042, z: 0} 7 | m_DefaultMaterial: {fileID: 0} 8 | m_BounceThreshold: 2 9 | m_SleepVelocity: .150000006 10 | m_SleepAngularVelocity: .140000001 11 | m_MaxAngularVelocity: 7 12 | m_MinPenetrationForPenalty: .00999999978 13 | m_SolverIterationCount: 6 14 | m_RaycastsHitTriggers: 1 15 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 16 | -------------------------------------------------------------------------------- /Assets/Test Card.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 3 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Test Card 10 | m_Shader: {fileID: 10752, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: [] 12 | m_CustomRenderQueue: -1 13 | m_SavedProperties: 14 | serializedVersion: 2 15 | m_TexEnvs: 16 | data: 17 | first: 18 | name: _MainTex 19 | second: 20 | m_Texture: {fileID: 2800000, guid: d759891f9cdbb49cca1b851dd425f059, type: 3} 21 | m_Scale: {x: 1, y: 1} 22 | m_Offset: {x: 0, y: 0} 23 | m_Floats: {} 24 | m_Colors: 25 | data: 26 | first: 27 | name: _Color 28 | second: {r: 1, g: 1, b: 1, a: 1} 29 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | m_Gravity: {x: 0, y: -9.81000042} 7 | m_DefaultMaterial: {fileID: 0} 8 | m_VelocityIterations: 8 9 | m_PositionIterations: 3 10 | m_VelocityThreshold: 1 11 | m_MaxLinearCorrection: .200000003 12 | m_MaxAngularCorrection: 8 13 | m_MaxTranslationSpeed: 100 14 | m_MaxRotationSpeed: 360 15 | m_BaumgarteScale: .200000003 16 | m_BaumgarteTimeOfImpactScale: .75 17 | m_TimeToSleep: .5 18 | m_LinearSleepTolerance: .00999999978 19 | m_AngularSleepTolerance: 2 20 | m_RaycastsHitTriggers: 1 21 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 22 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | tags: 6 | - 7 | Builtin Layer 0: Default 8 | Builtin Layer 1: TransparentFX 9 | Builtin Layer 2: Ignore Raycast 10 | Builtin Layer 3: 11 | Builtin Layer 4: Water 12 | Builtin Layer 5: UI 13 | Builtin Layer 6: 14 | Builtin Layer 7: 15 | User Layer 8: 16 | User Layer 9: 17 | User Layer 10: 18 | User Layer 11: 19 | User Layer 12: 20 | User Layer 13: 21 | User Layer 14: 22 | User Layer 15: 23 | User Layer 16: 24 | User Layer 17: 25 | User Layer 18: 26 | User Layer 19: 27 | User Layer 20: 28 | User Layer 21: 29 | User Layer 22: 30 | User Layer 23: 31 | User Layer 24: 32 | User Layer 25: 33 | User Layer 26: 34 | User Layer 27: 35 | User Layer 28: 36 | User Layer 29: 37 | User Layer 30: 38 | User Layer 31: 39 | m_SortingLayers: 40 | - name: Default 41 | userID: 0 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /Assets/Test Card.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d759891f9cdbb49cca1b851dd425f059 3 | TextureImporter: 4 | serializedVersion: 2 5 | mipmaps: 6 | mipMapMode: 0 7 | enableMipMap: 1 8 | linearTexture: 0 9 | correctGamma: 0 10 | fadeOut: 0 11 | borderMipMap: 0 12 | mipMapFadeDistanceStart: 1 13 | mipMapFadeDistanceEnd: 3 14 | bumpmap: 15 | convertToNormalMap: 0 16 | externalNormalMap: 0 17 | heightScale: .25 18 | normalMapFilter: 0 19 | isReadable: 0 20 | grayScaleToAlpha: 0 21 | generateCubemap: 0 22 | seamlessCubemap: 0 23 | textureFormat: -1 24 | maxTextureSize: 2048 25 | textureSettings: 26 | filterMode: -1 27 | aniso: -1 28 | mipBias: -1 29 | wrapMode: -1 30 | nPOTScale: 1 31 | lightmap: 0 32 | compressionQuality: 50 33 | spriteMode: 0 34 | spriteExtrude: 1 35 | spriteMeshType: 1 36 | alignment: 0 37 | spritePivot: {x: .5, y: .5} 38 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 39 | spritePixelsToUnits: 100 40 | alphaIsTransparency: 0 41 | textureType: -1 42 | buildTargetSettings: [] 43 | spriteSheet: 44 | sprites: [] 45 | spritePackingTag: 46 | userData: 47 | -------------------------------------------------------------------------------- /Assets/RippleEffect/RippleEffect.shader: -------------------------------------------------------------------------------- 1 | Shader "Hidden/Ripple Effect" 2 | { 3 | Properties 4 | { 5 | _MainTex("Base", 2D) = "white" {} 6 | _GradTex("Gradient", 2D) = "white" {} 7 | _Reflection("Reflection Color", Color) = (0, 0, 0, 0) 8 | _Params1("Parameters 1", Vector) = (1, 1, 0.8, 0) 9 | _Params2("Parameters 2", Vector) = (1, 1, 1, 0) 10 | _Drop1("Drop 1", Vector) = (0.49, 0.5, 0, 0) 11 | _Drop2("Drop 2", Vector) = (0.50, 0.5, 0, 0) 12 | _Drop3("Drop 3", Vector) = (0.51, 0.5, 0, 0) 13 | } 14 | 15 | CGINCLUDE 16 | 17 | #include "UnityCG.cginc" 18 | 19 | sampler2D _MainTex; 20 | float2 _MainTex_TexelSize; 21 | 22 | sampler2D _GradTex; 23 | 24 | half4 _Reflection; 25 | float4 _Params1; // [ aspect, 1, scale, 0 ] 26 | float4 _Params2; // [ 1, 1/aspect, refraction, reflection ] 27 | 28 | float3 _Drop1; 29 | float3 _Drop2; 30 | float3 _Drop3; 31 | 32 | float wave(float2 position, float2 origin, float time) 33 | { 34 | float d = length(position - origin); 35 | float t = time - d * _Params1.z; 36 | return (tex2D(_GradTex, float2(t, 0)).a - 0.5f) * 2; 37 | } 38 | 39 | float allwave(float2 position) 40 | { 41 | return 42 | wave(position, _Drop1.xy, _Drop1.z) + 43 | wave(position, _Drop2.xy, _Drop2.z) + 44 | wave(position, _Drop3.xy, _Drop3.z); 45 | } 46 | 47 | half4 frag(v2f_img i) : SV_Target 48 | { 49 | const float2 dx = float2(0.01f, 0); 50 | const float2 dy = float2(0, 0.01f); 51 | 52 | float2 p = i.uv * _Params1.xy; 53 | 54 | float w = allwave(p); 55 | float2 dw = float2(allwave(p + dx) - w, allwave(p + dy) - w); 56 | 57 | float2 duv = dw * _Params2.xy * 0.2f * _Params2.z; 58 | half4 c = tex2D(_MainTex, i.uv + duv); 59 | float fr = pow(length(dw) * 3 * _Params2.w, 3); 60 | 61 | return lerp(c, _Reflection, fr); 62 | } 63 | 64 | ENDCG 65 | 66 | SubShader 67 | { 68 | Pass 69 | { 70 | ZTest Always Cull Off ZWrite Off 71 | Fog { Mode off } 72 | CGPROGRAM 73 | #pragma fragmentoption ARB_precision_hint_fastest 74 | #pragma target 3.0 75 | #pragma vertex vert_img 76 | #pragma fragment frag 77 | ENDCG 78 | } 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshLayers.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshLayers: 5 | m_ObjectHideFlags: 0 6 | Built-in Layer 0: 7 | name: Default 8 | cost: 1 9 | editType: 2 10 | Built-in Layer 1: 11 | name: Not Walkable 12 | cost: 1 13 | editType: 0 14 | Built-in Layer 2: 15 | name: Jump 16 | cost: 2 17 | editType: 2 18 | User Layer 0: 19 | name: 20 | cost: 1 21 | editType: 3 22 | User Layer 1: 23 | name: 24 | cost: 1 25 | editType: 3 26 | User Layer 2: 27 | name: 28 | cost: 1 29 | editType: 3 30 | User Layer 3: 31 | name: 32 | cost: 1 33 | editType: 3 34 | User Layer 4: 35 | name: 36 | cost: 1 37 | editType: 3 38 | User Layer 5: 39 | name: 40 | cost: 1 41 | editType: 3 42 | User Layer 6: 43 | name: 44 | cost: 1 45 | editType: 3 46 | User Layer 7: 47 | name: 48 | cost: 1 49 | editType: 3 50 | User Layer 8: 51 | name: 52 | cost: 1 53 | editType: 3 54 | User Layer 9: 55 | name: 56 | cost: 1 57 | editType: 3 58 | User Layer 10: 59 | name: 60 | cost: 1 61 | editType: 3 62 | User Layer 11: 63 | name: 64 | cost: 1 65 | editType: 3 66 | User Layer 12: 67 | name: 68 | cost: 1 69 | editType: 3 70 | User Layer 13: 71 | name: 72 | cost: 1 73 | editType: 3 74 | User Layer 14: 75 | name: 76 | cost: 1 77 | editType: 3 78 | User Layer 15: 79 | name: 80 | cost: 1 81 | editType: 3 82 | User Layer 16: 83 | name: 84 | cost: 1 85 | editType: 3 86 | User Layer 17: 87 | name: 88 | cost: 1 89 | editType: 3 90 | User Layer 18: 91 | name: 92 | cost: 1 93 | editType: 3 94 | User Layer 19: 95 | name: 96 | cost: 1 97 | editType: 3 98 | User Layer 20: 99 | name: 100 | cost: 1 101 | editType: 3 102 | User Layer 21: 103 | name: 104 | cost: 1 105 | editType: 3 106 | User Layer 22: 107 | name: 108 | cost: 1 109 | editType: 3 110 | User Layer 23: 111 | name: 112 | cost: 1 113 | editType: 3 114 | User Layer 24: 115 | name: 116 | cost: 1 117 | editType: 3 118 | User Layer 25: 119 | name: 120 | cost: 1 121 | editType: 3 122 | User Layer 26: 123 | name: 124 | cost: 1 125 | editType: 3 126 | User Layer 27: 127 | name: 128 | cost: 1 129 | editType: 3 130 | User Layer 28: 131 | name: 132 | cost: 1 133 | editType: 3 134 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 3 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Fastest 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | blendWeights: 1 18 | textureQuality: 1 19 | anisotropicTextures: 0 20 | antiAliasing: 0 21 | softParticles: 0 22 | softVegetation: 0 23 | vSyncCount: 0 24 | lodBias: .300000012 25 | maximumLODLevel: 0 26 | particleRaycastBudget: 4 27 | excludedTargetPlatforms: [] 28 | - serializedVersion: 2 29 | name: Fast 30 | pixelLightCount: 0 31 | shadows: 0 32 | shadowResolution: 0 33 | shadowProjection: 1 34 | shadowCascades: 1 35 | shadowDistance: 20 36 | blendWeights: 2 37 | textureQuality: 0 38 | anisotropicTextures: 0 39 | antiAliasing: 0 40 | softParticles: 0 41 | softVegetation: 0 42 | vSyncCount: 0 43 | lodBias: .400000006 44 | maximumLODLevel: 0 45 | particleRaycastBudget: 16 46 | excludedTargetPlatforms: [] 47 | - serializedVersion: 2 48 | name: Simple 49 | pixelLightCount: 1 50 | shadows: 1 51 | shadowResolution: 0 52 | shadowProjection: 1 53 | shadowCascades: 1 54 | shadowDistance: 20 55 | blendWeights: 2 56 | textureQuality: 0 57 | anisotropicTextures: 1 58 | antiAliasing: 0 59 | softParticles: 0 60 | softVegetation: 0 61 | vSyncCount: 0 62 | lodBias: .699999988 63 | maximumLODLevel: 0 64 | particleRaycastBudget: 64 65 | excludedTargetPlatforms: [] 66 | - serializedVersion: 2 67 | name: Good 68 | pixelLightCount: 2 69 | shadows: 2 70 | shadowResolution: 1 71 | shadowProjection: 1 72 | shadowCascades: 2 73 | shadowDistance: 40 74 | blendWeights: 2 75 | textureQuality: 0 76 | anisotropicTextures: 1 77 | antiAliasing: 0 78 | softParticles: 0 79 | softVegetation: 1 80 | vSyncCount: 1 81 | lodBias: 1 82 | maximumLODLevel: 0 83 | particleRaycastBudget: 256 84 | excludedTargetPlatforms: [] 85 | - serializedVersion: 2 86 | name: Beautiful 87 | pixelLightCount: 3 88 | shadows: 2 89 | shadowResolution: 2 90 | shadowProjection: 1 91 | shadowCascades: 2 92 | shadowDistance: 70 93 | blendWeights: 4 94 | textureQuality: 0 95 | anisotropicTextures: 2 96 | antiAliasing: 2 97 | softParticles: 1 98 | softVegetation: 1 99 | vSyncCount: 1 100 | lodBias: 1.5 101 | maximumLODLevel: 0 102 | particleRaycastBudget: 1024 103 | excludedTargetPlatforms: [] 104 | - serializedVersion: 2 105 | name: Fantastic 106 | pixelLightCount: 4 107 | shadows: 2 108 | shadowResolution: 2 109 | shadowProjection: 1 110 | shadowCascades: 4 111 | shadowDistance: 150 112 | blendWeights: 4 113 | textureQuality: 0 114 | anisotropicTextures: 2 115 | antiAliasing: 2 116 | softParticles: 1 117 | softVegetation: 1 118 | vSyncCount: 1 119 | lodBias: 2 120 | maximumLODLevel: 0 121 | particleRaycastBudget: 4096 122 | excludedTargetPlatforms: [] 123 | m_PerPlatformDefaultQuality: 124 | Android: 2 125 | BlackBerry: 2 126 | FlashPlayer: 3 127 | GLES Emulation: 3 128 | PS3: 3 129 | PS4: 3 130 | PSM: 3 131 | PSP2: 3 132 | Samsung TV: 2 133 | Standalone: 3 134 | Tizen: 2 135 | WP8: 3 136 | Web: 3 137 | Windows Store Apps: 3 138 | XBOX360: 3 139 | XboxOne: 3 140 | iPhone: 2 141 | -------------------------------------------------------------------------------- /Assets/RippleEffect/RippleEffect.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | public class RippleEffect : MonoBehaviour 5 | { 6 | public AnimationCurve waveform = new AnimationCurve( 7 | new Keyframe(0.00f, 0.50f, 0, 0), 8 | new Keyframe(0.05f, 1.00f, 0, 0), 9 | new Keyframe(0.15f, 0.10f, 0, 0), 10 | new Keyframe(0.25f, 0.80f, 0, 0), 11 | new Keyframe(0.35f, 0.30f, 0, 0), 12 | new Keyframe(0.45f, 0.60f, 0, 0), 13 | new Keyframe(0.55f, 0.40f, 0, 0), 14 | new Keyframe(0.65f, 0.55f, 0, 0), 15 | new Keyframe(0.75f, 0.46f, 0, 0), 16 | new Keyframe(0.85f, 0.52f, 0, 0), 17 | new Keyframe(0.99f, 0.50f, 0, 0) 18 | ); 19 | 20 | [Range(0.01f, 1.0f)] 21 | public float refractionStrength = 0.5f; 22 | 23 | public Color reflectionColor = Color.gray; 24 | 25 | [Range(0.01f, 1.0f)] 26 | public float reflectionStrength = 0.7f; 27 | 28 | [Range(1.0f, 3.0f)] 29 | public float waveSpeed = 1.25f; 30 | 31 | [Range(0.0f, 2.0f)] 32 | public float dropInterval = 0.5f; 33 | 34 | [SerializeField, HideInInspector] 35 | Shader shader; 36 | 37 | class Droplet 38 | { 39 | Vector2 position; 40 | float time; 41 | 42 | public Droplet() 43 | { 44 | time = 1000; 45 | } 46 | 47 | public void Reset() 48 | { 49 | position = new Vector2(Random.value, Random.value); 50 | time = 0; 51 | } 52 | 53 | public void Update() 54 | { 55 | time += Time.deltaTime; 56 | } 57 | 58 | public Vector4 MakeShaderParameter(float aspect) 59 | { 60 | return new Vector4(position.x * aspect, position.y, time, 0); 61 | } 62 | } 63 | 64 | Droplet[] droplets; 65 | Texture2D gradTexture; 66 | Material material; 67 | float timer; 68 | int dropCount; 69 | 70 | void UpdateShaderParameters() 71 | { 72 | var c = GetComponent(); 73 | 74 | material.SetVector("_Drop1", droplets[0].MakeShaderParameter(c.aspect)); 75 | material.SetVector("_Drop2", droplets[1].MakeShaderParameter(c.aspect)); 76 | material.SetVector("_Drop3", droplets[2].MakeShaderParameter(c.aspect)); 77 | 78 | material.SetColor("_Reflection", reflectionColor); 79 | material.SetVector("_Params1", new Vector4(c.aspect, 1, 1 / waveSpeed, 0)); 80 | material.SetVector("_Params2", new Vector4(1, 1 / c.aspect, refractionStrength, reflectionStrength)); 81 | } 82 | 83 | void Awake() 84 | { 85 | droplets = new Droplet[3]; 86 | droplets[0] = new Droplet(); 87 | droplets[1] = new Droplet(); 88 | droplets[2] = new Droplet(); 89 | 90 | gradTexture = new Texture2D(2048, 1, TextureFormat.Alpha8, false); 91 | gradTexture.wrapMode = TextureWrapMode.Clamp; 92 | gradTexture.filterMode = FilterMode.Bilinear; 93 | for (var i = 0; i < gradTexture.width; i++) 94 | { 95 | var x = 1.0f / gradTexture.width * i; 96 | var a = waveform.Evaluate(x); 97 | gradTexture.SetPixel(i, 0, new Color(a, a, a, a)); 98 | } 99 | gradTexture.Apply(); 100 | 101 | material = new Material(shader); 102 | material.hideFlags = HideFlags.DontSave; 103 | material.SetTexture("_GradTex", gradTexture); 104 | 105 | UpdateShaderParameters(); 106 | } 107 | 108 | void Update() 109 | { 110 | if (dropInterval > 0) 111 | { 112 | timer += Time.deltaTime; 113 | while (timer > dropInterval) 114 | { 115 | Emit(); 116 | timer -= dropInterval; 117 | } 118 | } 119 | 120 | foreach (var d in droplets) d.Update(); 121 | 122 | UpdateShaderParameters(); 123 | } 124 | 125 | void OnRenderImage(RenderTexture source, RenderTexture destination) 126 | { 127 | Graphics.Blit(source, destination, material); 128 | } 129 | 130 | public void Emit() 131 | { 132 | droplets[dropCount++ % droplets.Length].Reset(); 133 | } 134 | } 135 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | m_Axes: 7 | - serializedVersion: 3 8 | m_Name: Horizontal 9 | descriptiveName: 10 | descriptiveNegativeName: 11 | negativeButton: left 12 | positiveButton: right 13 | altNegativeButton: a 14 | altPositiveButton: d 15 | gravity: 3 16 | dead: .00100000005 17 | sensitivity: 3 18 | snap: 1 19 | invert: 0 20 | type: 0 21 | axis: 0 22 | joyNum: 0 23 | - serializedVersion: 3 24 | m_Name: Vertical 25 | descriptiveName: 26 | descriptiveNegativeName: 27 | negativeButton: down 28 | positiveButton: up 29 | altNegativeButton: s 30 | altPositiveButton: w 31 | gravity: 3 32 | dead: .00100000005 33 | sensitivity: 3 34 | snap: 1 35 | invert: 0 36 | type: 0 37 | axis: 0 38 | joyNum: 0 39 | - serializedVersion: 3 40 | m_Name: Fire1 41 | descriptiveName: 42 | descriptiveNegativeName: 43 | negativeButton: 44 | positiveButton: left ctrl 45 | altNegativeButton: 46 | altPositiveButton: mouse 0 47 | gravity: 1000 48 | dead: .00100000005 49 | sensitivity: 1000 50 | snap: 0 51 | invert: 0 52 | type: 0 53 | axis: 0 54 | joyNum: 0 55 | - serializedVersion: 3 56 | m_Name: Fire2 57 | descriptiveName: 58 | descriptiveNegativeName: 59 | negativeButton: 60 | positiveButton: left alt 61 | altNegativeButton: 62 | altPositiveButton: mouse 1 63 | gravity: 1000 64 | dead: .00100000005 65 | sensitivity: 1000 66 | snap: 0 67 | invert: 0 68 | type: 0 69 | axis: 0 70 | joyNum: 0 71 | - serializedVersion: 3 72 | m_Name: Fire3 73 | descriptiveName: 74 | descriptiveNegativeName: 75 | negativeButton: 76 | positiveButton: left cmd 77 | altNegativeButton: 78 | altPositiveButton: mouse 2 79 | gravity: 1000 80 | dead: .00100000005 81 | sensitivity: 1000 82 | snap: 0 83 | invert: 0 84 | type: 0 85 | axis: 0 86 | joyNum: 0 87 | - serializedVersion: 3 88 | m_Name: Jump 89 | descriptiveName: 90 | descriptiveNegativeName: 91 | negativeButton: 92 | positiveButton: space 93 | altNegativeButton: 94 | altPositiveButton: 95 | gravity: 1000 96 | dead: .00100000005 97 | sensitivity: 1000 98 | snap: 0 99 | invert: 0 100 | type: 0 101 | axis: 0 102 | joyNum: 0 103 | - serializedVersion: 3 104 | m_Name: Mouse X 105 | descriptiveName: 106 | descriptiveNegativeName: 107 | negativeButton: 108 | positiveButton: 109 | altNegativeButton: 110 | altPositiveButton: 111 | gravity: 0 112 | dead: 0 113 | sensitivity: .100000001 114 | snap: 0 115 | invert: 0 116 | type: 1 117 | axis: 0 118 | joyNum: 0 119 | - serializedVersion: 3 120 | m_Name: Mouse Y 121 | descriptiveName: 122 | descriptiveNegativeName: 123 | negativeButton: 124 | positiveButton: 125 | altNegativeButton: 126 | altPositiveButton: 127 | gravity: 0 128 | dead: 0 129 | sensitivity: .100000001 130 | snap: 0 131 | invert: 0 132 | type: 1 133 | axis: 1 134 | joyNum: 0 135 | - serializedVersion: 3 136 | m_Name: Mouse ScrollWheel 137 | descriptiveName: 138 | descriptiveNegativeName: 139 | negativeButton: 140 | positiveButton: 141 | altNegativeButton: 142 | altPositiveButton: 143 | gravity: 0 144 | dead: 0 145 | sensitivity: .100000001 146 | snap: 0 147 | invert: 0 148 | type: 1 149 | axis: 2 150 | joyNum: 0 151 | - serializedVersion: 3 152 | m_Name: Horizontal 153 | descriptiveName: 154 | descriptiveNegativeName: 155 | negativeButton: 156 | positiveButton: 157 | altNegativeButton: 158 | altPositiveButton: 159 | gravity: 0 160 | dead: .189999998 161 | sensitivity: 1 162 | snap: 0 163 | invert: 0 164 | type: 2 165 | axis: 0 166 | joyNum: 0 167 | - serializedVersion: 3 168 | m_Name: Vertical 169 | descriptiveName: 170 | descriptiveNegativeName: 171 | negativeButton: 172 | positiveButton: 173 | altNegativeButton: 174 | altPositiveButton: 175 | gravity: 0 176 | dead: .189999998 177 | sensitivity: 1 178 | snap: 0 179 | invert: 1 180 | type: 2 181 | axis: 1 182 | joyNum: 0 183 | - serializedVersion: 3 184 | m_Name: Fire1 185 | descriptiveName: 186 | descriptiveNegativeName: 187 | negativeButton: 188 | positiveButton: joystick button 0 189 | altNegativeButton: 190 | altPositiveButton: 191 | gravity: 1000 192 | dead: .00100000005 193 | sensitivity: 1000 194 | snap: 0 195 | invert: 0 196 | type: 0 197 | axis: 0 198 | joyNum: 0 199 | - serializedVersion: 3 200 | m_Name: Fire2 201 | descriptiveName: 202 | descriptiveNegativeName: 203 | negativeButton: 204 | positiveButton: joystick button 1 205 | altNegativeButton: 206 | altPositiveButton: 207 | gravity: 1000 208 | dead: .00100000005 209 | sensitivity: 1000 210 | snap: 0 211 | invert: 0 212 | type: 0 213 | axis: 0 214 | joyNum: 0 215 | - serializedVersion: 3 216 | m_Name: Fire3 217 | descriptiveName: 218 | descriptiveNegativeName: 219 | negativeButton: 220 | positiveButton: joystick button 2 221 | altNegativeButton: 222 | altPositiveButton: 223 | gravity: 1000 224 | dead: .00100000005 225 | sensitivity: 1000 226 | snap: 0 227 | invert: 0 228 | type: 0 229 | axis: 0 230 | joyNum: 0 231 | - serializedVersion: 3 232 | m_Name: Jump 233 | descriptiveName: 234 | descriptiveNegativeName: 235 | negativeButton: 236 | positiveButton: joystick button 3 237 | altNegativeButton: 238 | altPositiveButton: 239 | gravity: 1000 240 | dead: .00100000005 241 | sensitivity: 1000 242 | snap: 0 243 | invert: 0 244 | type: 0 245 | axis: 0 246 | joyNum: 0 247 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | AndroidProfiler: 0 8 | defaultScreenOrientation: 0 9 | targetDevice: 2 10 | targetGlesGraphics: 1 11 | targetResolution: 0 12 | accelerometerFrequency: 60 13 | companyName: DefaultCompany 14 | productName: Ripple 15 | defaultCursor: {fileID: 0} 16 | cursorHotspot: {x: 0, y: 0} 17 | defaultScreenWidth: 1024 18 | defaultScreenHeight: 768 19 | defaultScreenWidthWeb: 960 20 | defaultScreenHeightWeb: 600 21 | m_RenderingPath: 1 22 | m_MobileRenderingPath: 1 23 | m_ActiveColorSpace: 0 24 | m_MTRendering: 1 25 | m_MobileMTRendering: 0 26 | m_UseDX11: 1 27 | m_Stereoscopic3D: 0 28 | iosShowActivityIndicatorOnLoading: -1 29 | androidShowActivityIndicatorOnLoading: -1 30 | displayResolutionDialog: 1 31 | allowedAutorotateToPortrait: 1 32 | allowedAutorotateToPortraitUpsideDown: 1 33 | allowedAutorotateToLandscapeRight: 1 34 | allowedAutorotateToLandscapeLeft: 1 35 | useOSAutorotation: 1 36 | use32BitDisplayBuffer: 1 37 | use24BitDepthBuffer: 1 38 | defaultIsFullScreen: 1 39 | defaultIsNativeResolution: 1 40 | runInBackground: 0 41 | captureSingleScreen: 0 42 | Override IPod Music: 0 43 | Prepare IOS For Recording: 0 44 | enableHWStatistics: 1 45 | usePlayerLog: 1 46 | stripPhysics: 0 47 | forceSingleInstance: 0 48 | resizableWindow: 0 49 | useMacAppStoreValidation: 0 50 | gpuSkinning: 0 51 | xboxPIXTextureCapture: 0 52 | xboxEnableAvatar: 0 53 | xboxEnableKinect: 0 54 | xboxEnableKinectAutoTracking: 0 55 | xboxEnableFitness: 0 56 | macFullscreenMode: 2 57 | xboxSpeechDB: 0 58 | xboxEnableHeadOrientation: 0 59 | xboxEnableGuest: 0 60 | videoMemoryForVertexBuffers: 0 61 | m_SupportedAspectRatios: 62 | 4:3: 1 63 | 5:4: 1 64 | 16:10: 1 65 | 16:9: 1 66 | Others: 1 67 | iPhoneBundleIdentifier: com.Company.ProductName 68 | metroEnableIndependentInputSource: 0 69 | metroEnableLowLatencyPresentationAPI: 0 70 | productGUID: e3d837d89d4244449a6b1f4ee988298d 71 | iPhoneBundleVersion: 1.0 72 | AndroidBundleVersionCode: 1 73 | AndroidMinSdkVersion: 9 74 | AndroidPreferredInstallLocation: 1 75 | aotOptions: 76 | apiCompatibilityLevel: 2 77 | iPhoneStrippingLevel: 0 78 | iPhoneScriptCallOptimization: 0 79 | ForceInternetPermission: 0 80 | ForceSDCardPermission: 0 81 | CreateWallpaper: 0 82 | APKExpansionFiles: 0 83 | StripUnusedMeshComponents: 0 84 | iPhoneSdkVersion: 988 85 | iPhoneTargetOSVersion: 16 86 | uIPrerenderedIcon: 0 87 | uIRequiresPersistentWiFi: 0 88 | uIStatusBarHidden: 1 89 | uIExitOnSuspend: 0 90 | uIStatusBarStyle: 0 91 | iPhoneSplashScreen: {fileID: 0} 92 | iPhoneHighResSplashScreen: {fileID: 0} 93 | iPhoneTallHighResSplashScreen: {fileID: 0} 94 | iPadPortraitSplashScreen: {fileID: 0} 95 | iPadHighResPortraitSplashScreen: {fileID: 0} 96 | iPadLandscapeSplashScreen: {fileID: 0} 97 | iPadHighResLandscapeSplashScreen: {fileID: 0} 98 | AndroidTargetDevice: 0 99 | AndroidSplashScreenScale: 0 100 | AndroidKeystoreName: 101 | AndroidKeyaliasName: 102 | resolutionDialogBanner: {fileID: 0} 103 | m_BuildTargetIcons: [] 104 | m_BuildTargetBatching: [] 105 | webPlayerTemplate: APPLICATION:Default 106 | m_TemplateCustomTags: {} 107 | XboxTitleId: 108 | XboxImageXexPath: 109 | XboxSpaPath: 110 | XboxGenerateSpa: 0 111 | XboxDeployKinectResources: 0 112 | XboxSplashScreen: {fileID: 0} 113 | xboxEnableSpeech: 0 114 | xboxAdditionalTitleMemorySize: 0 115 | xboxDeployKinectHeadOrientation: 0 116 | xboxDeployKinectHeadPosition: 0 117 | ps3TitleConfigPath: 118 | ps3DLCConfigPath: 119 | ps3ThumbnailPath: 120 | ps3BackgroundPath: 121 | ps3SoundPath: 122 | ps3TrophyCommId: 123 | ps3NpCommunicationPassphrase: 124 | ps3TrophyPackagePath: 125 | ps3BootCheckMaxSaveGameSizeKB: 128 126 | ps3TrophyCommSig: 127 | ps3SaveGameSlots: 1 128 | ps3TrialMode: 0 129 | psp2Splashimage: {fileID: 0} 130 | psp2LiveAreaGate: {fileID: 0} 131 | psp2LiveAreaBackround: {fileID: 0} 132 | psp2NPTrophyPackPath: 133 | psp2NPCommsID: 134 | psp2NPCommsPassphrase: 135 | psp2NPCommsSig: 136 | psp2ParamSfxPath: 137 | psp2PackagePassword: 138 | psp2DLCConfigPath: 139 | psp2ThumbnailPath: 140 | psp2BackgroundPath: 141 | psp2SoundPath: 142 | psp2TrophyCommId: 143 | psp2TrophyPackagePath: 144 | psp2PackagedResourcesPath: 145 | flashStrippingLevel: 2 146 | spritePackerPolicy: 147 | scriptingDefineSymbols: {} 148 | metroPackageName: Ripple 149 | metroPackageLogo: 150 | metroPackageLogo140: 151 | metroPackageLogo180: 152 | metroPackageVersion: 153 | metroCertificatePath: 154 | metroCertificatePassword: 155 | metroCertificateSubject: 156 | metroCertificateIssuer: 157 | metroCertificateNotAfter: 0000000000000000 158 | metroApplicationDescription: Ripple 159 | metroTileLogo80: 160 | metroTileLogo: 161 | metroTileLogo140: 162 | metroTileLogo180: 163 | metroTileWideLogo80: 164 | metroTileWideLogo: 165 | metroTileWideLogo140: 166 | metroTileWideLogo180: 167 | metroTileSmallLogo80: 168 | metroTileSmallLogo: 169 | metroTileSmallLogo140: 170 | metroTileSmallLogo180: 171 | metroSmallTile80: 172 | metroSmallTile: 173 | metroSmallTile140: 174 | metroSmallTile180: 175 | metroLargeTile80: 176 | metroLargeTile: 177 | metroLargeTile140: 178 | metroLargeTile180: 179 | metroTileShortName: 180 | metroCommandLineArgsFile: 181 | metroTileShowName: 0 182 | metroMediumTileShowName: 0 183 | metroLargeTileShowName: 0 184 | metroWideTileShowName: 0 185 | metroDefaultTileSize: 1 186 | metroTileForegroundText: 1 187 | metroTileBackgroundColor: {r: 0, g: 0, b: 0, a: 1} 188 | metroSplashScreenImage: 189 | metroSplashScreenImage140: 190 | metroSplashScreenImage180: 191 | metroSplashScreenBackgroundColor: {r: 0, g: 0, b: 0, a: 1} 192 | metroSplashScreenUseBackgroundColor: 0 193 | metroCapabilities: {} 194 | metroUnprocessedPlugins: [] 195 | metroCompilationOverrides: 1 196 | blackberryDeviceAddress: 197 | blackberryDevicePassword: 198 | blackberryTokenPath: 199 | blackberryTokenExires: 200 | blackberryTokenAuthor: 201 | blackberryTokenAuthorId: 202 | blackberryAuthorId: 203 | blackberryCskPassword: 204 | blackberrySaveLogPath: 205 | blackberryAuthorIdOveride: 0 206 | blackberrySharedPermissions: 0 207 | blackberryCameraPermissions: 0 208 | blackberryGPSPermissions: 0 209 | blackberryDeviceIDPermissions: 0 210 | blackberryMicrophonePermissions: 0 211 | blackberryGamepadSupport: 0 212 | blackberryBuildId: 0 213 | blackberryLandscapeSplashScreen: {fileID: 0} 214 | blackberryPortraitSplashScreen: {fileID: 0} 215 | blackberrySquareSplashScreen: {fileID: 0} 216 | tizenProductDescription: 217 | tizenProductURL: 218 | tizenCertificatePath: 219 | tizenCertificatePassword: 220 | tizenGPSPermissions: 0 221 | tizenMicrophonePermissions: 0 222 | stvDeviceAddress: 223 | firstStreamedLevelWithResources: 0 224 | unityRebuildLibraryVersion: 9 225 | unityForwardCompatibleVersion: 39 226 | unityStandardAssetsVersion: 0 227 | -------------------------------------------------------------------------------- /Assets/Test.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | SceneSettings: 5 | m_ObjectHideFlags: 0 6 | m_PVSData: 7 | m_PVSObjectsArray: [] 8 | m_PVSPortalsArray: [] 9 | m_OcclusionBakeSettings: 10 | smallestOccluder: 5 11 | smallestHole: .25 12 | backfaceThreshold: 100 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_Fog: 0 16 | m_FogColor: {r: .5, g: .5, b: .5, a: 1} 17 | m_FogMode: 3 18 | m_FogDensity: .00999999978 19 | m_LinearFogStart: 0 20 | m_LinearFogEnd: 300 21 | m_AmbientLight: {r: .200000003, g: .200000003, b: .200000003, a: 1} 22 | m_SkyboxMaterial: {fileID: 0} 23 | m_HaloStrength: .5 24 | m_FlareStrength: 1 25 | m_FlareFadeSpeed: 3 26 | m_HaloTexture: {fileID: 0} 27 | m_SpotCookie: {fileID: 0} 28 | m_ObjectHideFlags: 0 29 | --- !u!127 &3 30 | LevelGameManager: 31 | m_ObjectHideFlags: 0 32 | --- !u!157 &4 33 | LightmapSettings: 34 | m_ObjectHideFlags: 0 35 | m_LightProbes: {fileID: 0} 36 | m_Lightmaps: [] 37 | m_LightmapsMode: 1 38 | m_BakedColorSpace: 0 39 | m_UseDualLightmapsInForward: 0 40 | m_LightmapEditorSettings: 41 | m_Resolution: 50 42 | m_LastUsedResolution: 0 43 | m_TextureWidth: 1024 44 | m_TextureHeight: 1024 45 | m_BounceBoost: 1 46 | m_BounceIntensity: 1 47 | m_SkyLightColor: {r: .860000014, g: .930000007, b: 1, a: 1} 48 | m_SkyLightIntensity: 0 49 | m_Quality: 0 50 | m_Bounces: 1 51 | m_FinalGatherRays: 1000 52 | m_FinalGatherContrastThreshold: .0500000007 53 | m_FinalGatherGradientThreshold: 0 54 | m_FinalGatherInterpolationPoints: 15 55 | m_AOAmount: 0 56 | m_AOMaxDistance: .100000001 57 | m_AOContrast: 1 58 | m_LODSurfaceMappingDistance: 1 59 | m_Padding: 0 60 | m_TextureCompression: 0 61 | m_LockAtlas: 0 62 | --- !u!196 &5 63 | NavMeshSettings: 64 | m_ObjectHideFlags: 0 65 | m_BuildSettings: 66 | agentRadius: .5 67 | agentHeight: 2 68 | agentSlope: 45 69 | agentClimb: .400000006 70 | ledgeDropHeight: 0 71 | maxJumpAcrossDistance: 0 72 | accuratePlacement: 0 73 | minRegionArea: 2 74 | widthInaccuracy: 16.666666 75 | heightInaccuracy: 10 76 | m_NavMesh: {fileID: 0} 77 | --- !u!1 &567522568 78 | GameObject: 79 | m_ObjectHideFlags: 0 80 | m_PrefabParentObject: {fileID: 0} 81 | m_PrefabInternal: {fileID: 0} 82 | serializedVersion: 4 83 | m_Component: 84 | - 4: {fileID: 567522573} 85 | - 20: {fileID: 567522572} 86 | - 92: {fileID: 567522571} 87 | - 124: {fileID: 567522570} 88 | - 81: {fileID: 567522569} 89 | - 114: {fileID: 567522574} 90 | m_Layer: 0 91 | m_Name: Main Camera 92 | m_TagString: MainCamera 93 | m_Icon: {fileID: 0} 94 | m_NavMeshLayer: 0 95 | m_StaticEditorFlags: 0 96 | m_IsActive: 1 97 | --- !u!81 &567522569 98 | AudioListener: 99 | m_ObjectHideFlags: 0 100 | m_PrefabParentObject: {fileID: 0} 101 | m_PrefabInternal: {fileID: 0} 102 | m_GameObject: {fileID: 567522568} 103 | m_Enabled: 1 104 | --- !u!124 &567522570 105 | Behaviour: 106 | m_ObjectHideFlags: 0 107 | m_PrefabParentObject: {fileID: 0} 108 | m_PrefabInternal: {fileID: 0} 109 | m_GameObject: {fileID: 567522568} 110 | m_Enabled: 1 111 | --- !u!92 &567522571 112 | Behaviour: 113 | m_ObjectHideFlags: 0 114 | m_PrefabParentObject: {fileID: 0} 115 | m_PrefabInternal: {fileID: 0} 116 | m_GameObject: {fileID: 567522568} 117 | m_Enabled: 1 118 | --- !u!20 &567522572 119 | Camera: 120 | m_ObjectHideFlags: 0 121 | m_PrefabParentObject: {fileID: 0} 122 | m_PrefabInternal: {fileID: 0} 123 | m_GameObject: {fileID: 567522568} 124 | m_Enabled: 1 125 | serializedVersion: 2 126 | m_ClearFlags: 1 127 | m_BackGroundColor: {r: .192156866, g: .301960796, b: .474509805, a: .0196078438} 128 | m_NormalizedViewPortRect: 129 | serializedVersion: 2 130 | x: 0 131 | y: 0 132 | width: 1 133 | height: 1 134 | near clip plane: .300000012 135 | far clip plane: 10 136 | field of view: 60 137 | orthographic: 1 138 | orthographic size: .5 139 | m_Depth: -1 140 | m_CullingMask: 141 | serializedVersion: 2 142 | m_Bits: 4294967295 143 | m_RenderingPath: -1 144 | m_TargetTexture: {fileID: 0} 145 | m_TargetDisplay: 0 146 | m_HDR: 0 147 | m_OcclusionCulling: 1 148 | m_StereoConvergence: 10 149 | m_StereoSeparation: .0219999999 150 | --- !u!4 &567522573 151 | Transform: 152 | m_ObjectHideFlags: 0 153 | m_PrefabParentObject: {fileID: 0} 154 | m_PrefabInternal: {fileID: 0} 155 | m_GameObject: {fileID: 567522568} 156 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 157 | m_LocalPosition: {x: 0, y: 0, z: -10} 158 | m_LocalScale: {x: 1, y: 1, z: 1} 159 | m_Children: [] 160 | m_Father: {fileID: 0} 161 | m_RootOrder: 0 162 | --- !u!114 &567522574 163 | MonoBehaviour: 164 | m_ObjectHideFlags: 0 165 | m_PrefabParentObject: {fileID: 0} 166 | m_PrefabInternal: {fileID: 0} 167 | m_GameObject: {fileID: 567522568} 168 | m_Enabled: 1 169 | m_EditorHideFlags: 0 170 | m_Script: {fileID: 11500000, guid: a1bc7030f5bb244b09b8037c2ded95f1, type: 3} 171 | m_Name: 172 | m_EditorClassIdentifier: 173 | waveform: 174 | serializedVersion: 2 175 | m_Curve: 176 | - time: 0 177 | value: .5 178 | inSlope: 0 179 | outSlope: 0 180 | tangentMode: 0 181 | - time: .0500000007 182 | value: 1 183 | inSlope: 0 184 | outSlope: 0 185 | tangentMode: 0 186 | - time: .150000006 187 | value: .100000001 188 | inSlope: 0 189 | outSlope: 0 190 | tangentMode: 0 191 | - time: .25 192 | value: .800000012 193 | inSlope: 0 194 | outSlope: 0 195 | tangentMode: 0 196 | - time: .349999994 197 | value: .300000012 198 | inSlope: 0 199 | outSlope: 0 200 | tangentMode: 0 201 | - time: .449999988 202 | value: .600000024 203 | inSlope: 0 204 | outSlope: 0 205 | tangentMode: 0 206 | - time: .550000012 207 | value: .400000006 208 | inSlope: 0 209 | outSlope: 0 210 | tangentMode: 0 211 | - time: .649999976 212 | value: .550000012 213 | inSlope: 0 214 | outSlope: 0 215 | tangentMode: 0 216 | - time: .75 217 | value: .460000008 218 | inSlope: 0 219 | outSlope: 0 220 | tangentMode: 0 221 | - time: .850000024 222 | value: .519999981 223 | inSlope: 0 224 | outSlope: 0 225 | tangentMode: 0 226 | - time: .99000001 227 | value: .5 228 | inSlope: 0 229 | outSlope: 0 230 | tangentMode: 0 231 | m_PreInfinity: 2 232 | m_PostInfinity: 2 233 | refractionStrength: .5 234 | reflectionColor: {r: .5, g: .5, b: .5, a: 1} 235 | reflectionStrength: .699999988 236 | waveSpeed: 1.25 237 | dropInterval: .5 238 | shader: {fileID: 4800000, guid: 162fe242d486f4dab90ed53db15b9c19, type: 3} 239 | --- !u!1 &2116522087 240 | GameObject: 241 | m_ObjectHideFlags: 0 242 | m_PrefabParentObject: {fileID: 0} 243 | m_PrefabInternal: {fileID: 0} 244 | serializedVersion: 4 245 | m_Component: 246 | - 4: {fileID: 2116522091} 247 | - 33: {fileID: 2116522090} 248 | - 23: {fileID: 2116522088} 249 | m_Layer: 0 250 | m_Name: Quad 251 | m_TagString: Untagged 252 | m_Icon: {fileID: 0} 253 | m_NavMeshLayer: 0 254 | m_StaticEditorFlags: 0 255 | m_IsActive: 1 256 | --- !u!23 &2116522088 257 | Renderer: 258 | m_ObjectHideFlags: 0 259 | m_PrefabParentObject: {fileID: 0} 260 | m_PrefabInternal: {fileID: 0} 261 | m_GameObject: {fileID: 2116522087} 262 | m_Enabled: 1 263 | m_CastShadows: 1 264 | m_ReceiveShadows: 1 265 | m_LightmapIndex: 255 266 | m_LightmapTilingOffset: {x: 1, y: 1, z: 0, w: 0} 267 | m_Materials: 268 | - {fileID: 2100000, guid: b6d68704d564943a19cf778a71d2f67e, type: 2} 269 | m_SubsetIndices: 270 | m_StaticBatchRoot: {fileID: 0} 271 | m_UseLightProbes: 0 272 | m_LightProbeAnchor: {fileID: 0} 273 | m_ScaleInLightmap: 1 274 | m_SortingLayerID: 0 275 | m_SortingOrder: 0 276 | --- !u!33 &2116522090 277 | MeshFilter: 278 | m_ObjectHideFlags: 0 279 | m_PrefabParentObject: {fileID: 0} 280 | m_PrefabInternal: {fileID: 0} 281 | m_GameObject: {fileID: 2116522087} 282 | m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} 283 | --- !u!4 &2116522091 284 | Transform: 285 | m_ObjectHideFlags: 0 286 | m_PrefabParentObject: {fileID: 0} 287 | m_PrefabInternal: {fileID: 0} 288 | m_GameObject: {fileID: 2116522087} 289 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 290 | m_LocalPosition: {x: 0, y: 0, z: 0} 291 | m_LocalScale: {x: 2, y: 2, z: 1} 292 | m_Children: [] 293 | m_Father: {fileID: 0} 294 | m_RootOrder: 1 295 | --------------------------------------------------------------------------------