├── GrabScreen.cs
├── GrabScreen.cs.meta
├── Materials.meta
├── Materials
├── CommandBufferRefraction.mat
├── CommandBufferRefraction.mat.meta
├── CommandBufferRefractionCheaper.mat
├── CommandBufferRefractionCheaper.mat.meta
├── CommandBufferRefractionCheaperAlt.mat
└── CommandBufferRefractionCheaperAlt.mat.meta
├── README.md
├── Shaders.meta
├── Shaders
├── RefractionWithCommandBuffer.shader
├── RefractionWithCommandBuffer.shader.meta
├── RefractionWithCommandBufferCheaper.shader
├── RefractionWithCommandBufferCheaper.shader.meta
├── SeparableBlur.shader
├── SeparableBlur.shader.meta
├── ShaderGUI.meta
└── ShaderGUI
│ ├── Editor.meta
│ └── Editor
│ ├── CustomMaterialInspector.cs
│ └── CustomMaterialInspector.cs.meta
├── Textures.meta
├── Textures
├── Portal_AlbedoBlur.psd
├── Portal_AlbedoBlur.psd.meta
├── Portal_MetallicSmoothnessOcclusionOpacity.psd
├── Portal_MetallicSmoothnessOcclusionOpacity.psd.meta
├── Portal_Normal.png
└── Portal_Normal.png.meta
├── _CommandBufferRefraction.unity
├── _CommandBufferRefraction.unity.meta
├── _CommandBufferRefractionCheaper.unity
└── _CommandBufferRefractionCheaper.unity.meta
/GrabScreen.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEngine.Rendering;
3 |
4 | ///
5 | /// ----------
6 | /// GrabScreen - Command Buffer script
7 | /// This script creates two global textures containing the screen. Blurred and non-blurred.
8 | /// These textures can be used by e.g. refraction shaders to work without a grab pass.
9 | /// Inspired & adapted by: https://blogs.unity3d.com/2015/02/06/extending-unity-5-rendering-pipeline-command-buffers/
10 | ///
11 | /// INSTRUCTIONS: Put this script on the camera you want to capture the screen from.
12 | /// ----------
13 | ///
14 | [ExecuteInEditMode, RequireComponent(typeof(Camera))]
15 | public class GrabScreen : MonoBehaviour{
16 |
17 | ///
18 | /// The shader used to blur the screen.
19 | ///
20 | public Shader blurShader;
21 |
22 | ///
23 | /// Strings used for shader property identification...
24 | ///
25 | private const string
26 | cBufferName = "GrabAndBlurScreen",
27 | screenCopyKey = "_ScreenCopyTexture",
28 | blurredIDKey = "_Temp1",
29 | blurredID2Key = "_Temp2",
30 | offsetsKey = "offsets",
31 | globalBlurKey = "_GrabBlurTexture",
32 | globalNoBlurKey = "_GrabNoBlurTexture",
33 | blurShaderKey = "Hidden/SeparableBlur";
34 |
35 | ///
36 | /// Which camera event the command buffer should be attached to.
37 | ///
38 | private CameraEvent _cameraEvent = CameraEvent.AfterImageEffectsOpaque;
39 | ///
40 | /// The texture filter mode of the created render textures.
41 | ///
42 | private FilterMode _filterMode = FilterMode.Bilinear;
43 | ///
44 | /// Reference to the material we are using
45 | ///
46 | private Material _material;
47 | ///
48 | /// Screen resolution. Used to check if the screen size changed.
49 | ///
50 | private Resolution _currentScreenRes = new Resolution();
51 | ///
52 | /// Reference to our command buffer.
53 | ///
54 | private CommandBuffer _cBuffer;
55 | ///
56 | /// reference to our attached camera.
57 | ///
58 | private Camera _camera;
59 | ///
60 | /// Shader property IDs (automatically set)
61 | ///
62 | private int _screenCopyID, _blurredID, _blurredID2;
63 |
64 | ///
65 | /// Attached camera getter (read only)
66 | ///
67 | private Camera Camera {
68 | get {
69 | GetCamera();
70 | return _camera;
71 | }
72 | }
73 |
74 | ///
75 | /// Creates the command buffer.
76 | ///
77 | private void CreateCommandBuffer() {
78 | DestroyCommandBuffer();
79 | Initialize();
80 |
81 | // Create CommandBuffer
82 | _cBuffer = new CommandBuffer();
83 | _cBuffer.name = cBufferName;
84 | _cBuffer.Clear();
85 |
86 | // copy screen into temporary RT (-2 means half the screen size)
87 | _cBuffer.GetTemporaryRT(_screenCopyID, -2, -2, 0, _filterMode);
88 | _cBuffer.Blit(BuiltinRenderTextureType.CurrentActive, _screenCopyID);
89 | _cBuffer.SetGlobalTexture(globalNoBlurKey, _screenCopyID);
90 |
91 | // get two smaller RTs (-4 means quad the screen size)
92 | _cBuffer.GetTemporaryRT(_blurredID, -4, -4, 0, _filterMode);
93 | _cBuffer.GetTemporaryRT(_blurredID2, -4, -4, 0, _filterMode);
94 |
95 | // downsample screen copy into smaller RT, release screen RT
96 | _cBuffer.Blit(_screenCopyID, _blurredID);
97 | _cBuffer.ReleaseTemporaryRT(_screenCopyID);
98 |
99 | // horizontal blur
100 | _cBuffer.SetGlobalVector(offsetsKey, new Vector4(2.0f / Screen.width, 0, 0, 0));
101 | _cBuffer.Blit(_blurredID, _blurredID2, _material);
102 | // vertical blur
103 | _cBuffer.SetGlobalVector(offsetsKey, new Vector4(0, 2.0f / Screen.height, 0, 0));
104 | _cBuffer.Blit(_blurredID2, _blurredID, _material);
105 | // horizontal blur
106 | _cBuffer.SetGlobalVector(offsetsKey, new Vector4(4.0f / Screen.width, 0, 0, 0));
107 | _cBuffer.Blit(_blurredID, _blurredID2, _material);
108 | // vertical blur
109 | _cBuffer.SetGlobalVector(offsetsKey, new Vector4(0, 4.0f / Screen.height, 0, 0));
110 | _cBuffer.Blit(_blurredID2, _blurredID, _material);
111 |
112 | _cBuffer.SetGlobalTexture(globalBlurKey, _blurredID);
113 | Camera.AddCommandBuffer(_cameraEvent, _cBuffer);
114 | }
115 |
116 | ///
117 | /// Destroys the command buffer.
118 | ///
119 | private void DestroyCommandBuffer() {
120 | if (_cBuffer != null) {
121 | Camera.RemoveCommandBuffer(_cameraEvent, _cBuffer);
122 | _cBuffer.Clear();
123 | _cBuffer.Dispose();
124 | _cBuffer = null;
125 | }
126 |
127 | // Make sure we don't have any duplicates of our command buffer.
128 | CommandBuffer[] commandBuffers = Camera.GetCommandBuffers(_cameraEvent);
129 | foreach (CommandBuffer cBuffer in commandBuffers) {
130 | if (cBuffer.name == cBufferName) {
131 | Camera.RemoveCommandBuffer(_cameraEvent, cBuffer);
132 | cBuffer.Clear();
133 | cBuffer.Dispose();
134 | }
135 | }
136 | }
137 |
138 | // Update is called once per frame
139 | private void OnPreRender() {
140 | //Recreate command buffer if screen size, downsample or blur was (de)activated
141 | if (_currentScreenRes.height != Camera.pixelHeight || _currentScreenRes.width != Camera.pixelWidth) {
142 | SetCurrentValues();
143 | CreateCommandBuffer();
144 | }
145 | SetCurrentValues();
146 | }
147 |
148 | ///
149 | /// Sets the current values.
150 | ///
151 | private void SetCurrentValues() {
152 | _currentScreenRes.height = Camera.pixelHeight;
153 | _currentScreenRes.width = Camera.pixelWidth;
154 | }
155 |
156 | ///
157 | /// Initialize stuff.
158 | ///
159 | private void OnEnable() {
160 | Initialize();
161 | }
162 |
163 | ///
164 | /// Initialize shader, material, camera
165 | ///
166 | private void Initialize() {
167 | // If the blur shader isn't initialized, try to find it.
168 | if (!blurShader) {
169 | blurShader = Shader.Find(blurShaderKey);
170 | }
171 |
172 | // if no material was created with the blur shader yet, create one.
173 | if (!_material) {
174 | _material = new Material(blurShader);
175 | _material.hideFlags = HideFlags.HideAndDontSave;
176 | }
177 |
178 | // convert shader property keywords into IDs.
179 | _screenCopyID = Shader.PropertyToID(screenCopyKey);
180 | _blurredID = Shader.PropertyToID(blurredIDKey);
181 | _blurredID2 = Shader.PropertyToID(blurredID2Key);
182 |
183 | // get our attached camera.
184 | GetCamera();
185 | }
186 |
187 | ///
188 | /// Gets the attached camera.
189 | ///
190 | private void GetCamera() {
191 | if (!_camera) {
192 | _camera = GetComponent();
193 | }
194 | }
195 | }
196 |
--------------------------------------------------------------------------------
/GrabScreen.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 609a343303ee93443b246291d3a836db
3 | timeCreated: 1506186128
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Materials.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 96153b65aad0cd640aa2fdf36ab84f5c
3 | folderAsset: yes
4 | timeCreated: 1506188181
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Materials/CommandBufferRefraction.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: CommandBufferRefraction
10 | m_Shader: {fileID: 4800000, guid: 7a7b0e7bd71b2ab4993293afe6edb68b, type: 3}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 0
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _AlbedoRGBBlurA:
22 | m_Texture: {fileID: 2800000, guid: e122d594fa5ecb344af7837481889edf, type: 3}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _BumpMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailAlbedoMap:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailMask:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _DetailNormalMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _EmissionMap:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MainTex:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MetallicGlossMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _MetallicRSmoothnessGOcclusionBOpacityA:
54 | m_Texture: {fileID: 2800000, guid: a0f30737eb30d264fb5e9c2550105bf2, type: 3}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _NormalMapRGB:
58 | m_Texture: {fileID: 2800000, guid: d661edcb637ee16479a68c225ba641ce, type: 3}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _OcclusionMap:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | - _ParallaxMap:
66 | m_Texture: {fileID: 0}
67 | m_Scale: {x: 1, y: 1}
68 | m_Offset: {x: 0, y: 0}
69 | - _texcoord:
70 | m_Texture: {fileID: 0}
71 | m_Scale: {x: 1, y: 1}
72 | m_Offset: {x: 0, y: 0}
73 | m_Floats:
74 | - _Al: 1
75 | - _AlbedoContribution: 0.6
76 | - _AlbedoContributo: 1
77 | - _AlbedoContributoi: 1
78 | - _BumpScale: 1
79 | - _Cutoff: 0.5
80 | - _DetailNormalMapScale: 1
81 | - _Distortion: 0.05
82 | - _DistortionStrength: 0.05
83 | - _DstBlend: 0
84 | - _EmissionContribution: 0.4
85 | - _GlossMapScale: 1
86 | - _Glossiness: 0.5
87 | - _GlossyReflections: 1
88 | - _Metallic: 0
89 | - _Mode: 0
90 | - _NormalScale: 0.7
91 | - _OcclusionStrength: 1
92 | - _Parallax: 0.02
93 | - _ReflectionStrength: 0.4
94 | - _SmoothnessTextureChannel: 0
95 | - _SpecularHighlights: 1
96 | - _SrcBlend: 1
97 | - _UVSec: 0
98 | - _ZWrite: 1
99 | - __dirty: 0
100 | - _normalScale: 0.539
101 | m_Colors:
102 | - _Color: {r: 1, g: 1, b: 1, a: 1}
103 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
104 |
--------------------------------------------------------------------------------
/Materials/CommandBufferRefraction.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 14dcb84324e8609489297d6f8ff87c8d
3 | timeCreated: 1506188190
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Materials/CommandBufferRefractionCheaper.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: CommandBufferRefractionCheaper
10 | m_Shader: {fileID: 4800000, guid: c930ae72e69763541892469e86754a86, type: 3}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 0
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _AlbedoRGBBlurA:
22 | m_Texture: {fileID: 2800000, guid: e122d594fa5ecb344af7837481889edf, type: 3}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _BumpMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailAlbedoMap:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailMask:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _DetailNormalMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _EmissionMap:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MainTex:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MetallicGlossMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _MetallicRSmoothnessGOcclusionBOpacityA:
54 | m_Texture: {fileID: 2800000, guid: a0f30737eb30d264fb5e9c2550105bf2, type: 3}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _NormalMapRGB:
58 | m_Texture: {fileID: 2800000, guid: d661edcb637ee16479a68c225ba641ce, type: 3}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _OcclusionMap:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | - _ParallaxMap:
66 | m_Texture: {fileID: 0}
67 | m_Scale: {x: 1, y: 1}
68 | m_Offset: {x: 0, y: 0}
69 | - _texcoord:
70 | m_Texture: {fileID: 0}
71 | m_Scale: {x: 1, y: 1}
72 | m_Offset: {x: 0, y: 0}
73 | m_Floats:
74 | - _BlurAmount: 0.761
75 | - _BumpScale: 1
76 | - _Cutoff: 0.5
77 | - _DetailNormalMapScale: 1
78 | - _DistortionStrength: 0.06
79 | - _DstBlend: 0
80 | - _EmissionContribution: 0.428
81 | - _GlossMapScale: 1
82 | - _Glossiness: 0.5
83 | - _GlossyReflections: 1
84 | - _Metallic: 0
85 | - _Mode: 0
86 | - _NormalScale: 0.338
87 | - _OcclusionStrength: 1
88 | - _Opacity: 0.5
89 | - _Parallax: 0.02
90 | - _ReflectionStrength: 0.383
91 | - _Smoothness: 0.762
92 | - _SmoothnessTextureChannel: 0
93 | - _SpecularHighlights: 1
94 | - _SrcBlend: 1
95 | - _UVSec: 0
96 | - _ZWrite: 1
97 | - __dirty: 0
98 | m_Colors:
99 | - _AlbedoColor: {r: 0.11764707, g: 0.253, b: 0.11764707, a: 1}
100 | - _AlbedoOpacity: {r: 0.11764707, g: 0.253, b: 0.11764707, a: 0.497}
101 | - _AlbedoRGBOpacityA: {r: 0.11764707, g: 0.253, b: 0.11764707, a: 0.497}
102 | - _Color: {r: 1, g: 1, b: 1, a: 1}
103 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
104 | - _MetallicSmoothness: {r: 0, g: 0.7, b: 0, a: 0}
105 | - _MetallicSmoothnessOcclusionOpacity: {r: 0, g: 0.5, b: 0, a: 0.5}
106 | - _OcclusionOpacity: {r: 0, g: 0.5, b: 0, a: 0}
107 |
--------------------------------------------------------------------------------
/Materials/CommandBufferRefractionCheaper.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9b869f7e1c6bbce428bce3f664432840
3 | timeCreated: 1506192367
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Materials/CommandBufferRefractionCheaperAlt.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_PrefabParentObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: CommandBufferRefractionCheaperAlt
10 | m_Shader: {fileID: 4800000, guid: c930ae72e69763541892469e86754a86, type: 3}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 0
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _AlbedoRGBBlurA:
22 | m_Texture: {fileID: 2800000, guid: e122d594fa5ecb344af7837481889edf, type: 3}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _BumpMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailAlbedoMap:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailMask:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _DetailNormalMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _EmissionMap:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MainTex:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MetallicGlossMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _MetallicRSmoothnessGOcclusionBOpacityA:
54 | m_Texture: {fileID: 2800000, guid: a0f30737eb30d264fb5e9c2550105bf2, type: 3}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _NormalMapRGB:
58 | m_Texture: {fileID: 2800000, guid: d661edcb637ee16479a68c225ba641ce, type: 3}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _OcclusionMap:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | - _ParallaxMap:
66 | m_Texture: {fileID: 0}
67 | m_Scale: {x: 1, y: 1}
68 | m_Offset: {x: 0, y: 0}
69 | - _texcoord:
70 | m_Texture: {fileID: 0}
71 | m_Scale: {x: 1, y: 1}
72 | m_Offset: {x: 0, y: 0}
73 | m_Floats:
74 | - _BlurAmount: 0.604
75 | - _BumpScale: 1
76 | - _Cutoff: 0.5
77 | - _DetailNormalMapScale: 1
78 | - _DistortionStrength: 0.081
79 | - _DstBlend: 0
80 | - _EmissionContribution: 0.06
81 | - _GlossMapScale: 1
82 | - _Glossiness: 0.5
83 | - _GlossyReflections: 1
84 | - _Metallic: 0
85 | - _Mode: 0
86 | - _NormalScale: 0.324
87 | - _OcclusionStrength: 1
88 | - _Opacity: 0.5
89 | - _Parallax: 0.02
90 | - _ReflectionStrength: 0.925
91 | - _Smoothness: 0.898
92 | - _SmoothnessTextureChannel: 0
93 | - _SpecularHighlights: 1
94 | - _SrcBlend: 1
95 | - _UVSec: 0
96 | - _ZWrite: 1
97 | - __dirty: 0
98 | m_Colors:
99 | - _AlbedoColor: {r: 0.11764707, g: 0.253, b: 0.11764707, a: 1}
100 | - _AlbedoOpacity: {r: 0.11764707, g: 0.253, b: 0.11764707, a: 0.497}
101 | - _AlbedoRGBOpacityA: {r: 0.75178415, g: 0.83317924, b: 0.99264705, a: 0.497}
102 | - _Color: {r: 1, g: 1, b: 1, a: 1}
103 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
104 | - _MetallicSmoothness: {r: 0, g: 0.7, b: 0, a: 0}
105 | - _MetallicSmoothnessOcclusionOpacity: {r: 0, g: 0.5, b: 0, a: 0.5}
106 | - _OcclusionOpacity: {r: 0, g: 0.5, b: 0, a: 0}
107 |
--------------------------------------------------------------------------------
/Materials/CommandBufferRefractionCheaperAlt.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 959046c714828cc479babecfa0878fe9
3 | timeCreated: 1506192367
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Command Buffer based Refraction shaders for Unity
2 |
3 | **Adjustable, blurred Refraction shaders** created with Amplify Shader Editor using **Command Buffers**. Cool to create **glass like materials**. **Works without Amplify Shader Editor**. Inspired by an [Unity blog entry](https://blogs.unity3d.com/2015/02/06/extending-unity-5-rendering-pipeline-command-buffers).
4 |
5 | This implementation was initially created for use in **[Pizza Connection 3](https://store.steampowered.com/app/588160/Pizza_Connection_3/)**, but I adapted the approach for general usage.
6 |
7 | # Goal
8 | To create **cool looking glass materials** it's nice to have **refraction** on the surfaces. In recent games, glass materials sometimes also feature a dynamic blurred refraction on their surface.
9 |
10 | See the new **DOOM** for example:
11 |
12 | 
13 |
14 | To achieve this effect in Unity the [classical approach](https://forum.unity.com/threads/simple-optimized-blur-shader.185327/) is to use a GrabPass in your shader & blur several instances of the same screen based texture. Since **Unity 5** there is an alternative to this approach using [CommandBuffers](https://docs.unity3d.com/ScriptReference/Rendering.CommandBuffer.html). See [this blog entry](https://blogs.unity3d.com/2015/02/06/extending-unity-5-rendering-pipeline-command-buffers/) for more detail. *TL;DR: Using Command buffers is more performant, flexible and easier to use than a normal grab pass in the above case.*
15 |
16 | Since I haven't found any sources except the Unity blog entry on how to achieve the desired effect using Command Buffers I implemented it on my own by adapting the [example provided by Unity](https://blogs.unity3d.com/wp-content/uploads/2015/02/RenderingCommandBuffers50b22.zip). To create the main shaders I used the Amplify Shader Editor *(ASE)*.
17 |
18 | **Disclaimer:** I'm no expert in Shader/Graphics Programming, I just felt the urge to contribute and help others. Everyone is encouraged to contribute to this project and make it better. :)
19 |
20 | ### Screenshots
21 | The blur amount can be tweaked as a simple float property.
22 | 
23 | Reflectivity, Distortion, Emission contribution and a lot of other things can be tweaked.
24 | 
25 |
26 | ### Usage
27 | 1. **Copy the contents** of this repository into your **Unity project**.
28 | 2. Add **GrabScreen.cs** to the **camera** you want to capture the screen from. *(This creates 2 global screen textures for our shaders: Blur & No Blur)*
29 | 3. Create a new **Material** and use one of the CommandBufferRefraction shaders, found under **Custom/CommandBufferRefraction** or **Custom/CommandBufferRefractionCheaper**
30 | 4. **Apply your material** to a renderer in your scene.
31 | 5. **Press play** & watch the material in the **Game View**
32 |
33 | ### Options
34 |
35 | #### *RefractionWithCommandBuffer.shader*
36 | 
37 |
38 | *Note: To give maximum flexibility 3 textures are used to define the material. The property name already shows you which channels of the texture are used for which purpose.*
39 |
40 | ### *RefractionWithCommandBufferCheaper.shader*
41 | 
42 |
43 | *Note: This is the more easy to use, faster version of the shader (less texture calls). A lot of the properties are tweaked by using sliders.*
44 |
45 | ### ASE Graphs
46 | The shader was created using the Amplify Shader Editor from the Asset Store. Luckily, **you can use these shaders without this asset**. However if you have the shader editor you can directly open the shaders in ASE.
47 |
48 | *Below be shader graphs:*
49 | The CommandBufferRefractionShader.
50 | 
51 | The cheaper version (fewer texture calls).
52 | 
53 |
54 | ### Caveats
55 | 
56 | - **Unity Editor:** Shaders don't preview correctly in the *Scene View*
57 | - **Performance:** We create 2 global textures with the command buffer (blurred and non blurred), they are smaller than the actual camera screen size, but this is still performance heavy, so watch out.
58 | - **Forward Based:** We need to render in the transparent queue, so this shader works only with forward rendering.
59 |
--------------------------------------------------------------------------------
/Shaders.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ab87a468d911038469ced511a52c68a4
3 | folderAsset: yes
4 | timeCreated: 1506194700
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Shaders/RefractionWithCommandBuffer.shader:
--------------------------------------------------------------------------------
1 | // Made with Amplify Shader Editor
2 | // Available at the Unity Asset Store - http://u3d.as/y3X
3 | Shader "Custom/RefractionWithCommandBuffer"
4 | {
5 | Properties
6 | {
7 | [HideInInspector] __dirty( "", Int ) = 1
8 | _AlbedoRGBBlurA("Albedo (RGB) Blur (A)", 2D) = "white" {}
9 | _MetallicRSmoothnessGOcclusionBOpacityA("Metallic (R) Smoothness (G) Occlusion (B) Opacity (A)", 2D) = "white" {}
10 | _NormalMapRGB("Normal Map (RGB)", 2D) = "bump" {}
11 | _NormalScale("Normal Scale", Range( 0 , 1)) = 0
12 | _DistortionStrength("Distortion Strength", Range( 0 , 1)) = 0.292
13 | _EmissionContribution("Emission Contribution", Range( 0 , 1)) = 0.3
14 | _ReflectionStrength("Reflection Strength", Range( 0 , 1)) = 1
15 | [HideInInspector] _texcoord( "", 2D ) = "white" {}
16 | }
17 |
18 | SubShader
19 | {
20 | Tags{ "RenderType" = "Opaque" "Queue" = "Transparent+0" "IgnoreProjector" = "True" "IsEmissive" = "true" }
21 | Cull Back
22 | CGINCLUDE
23 | #include "UnityStandardUtils.cginc"
24 | #include "UnityPBSLighting.cginc"
25 | #include "Lighting.cginc"
26 | #pragma target 3.0
27 | struct Input
28 | {
29 | float2 uv_texcoord;
30 | float4 screenPos;
31 | };
32 |
33 | uniform half _NormalScale;
34 | uniform sampler2D _NormalMapRGB;
35 | uniform float4 _NormalMapRGB_ST;
36 | uniform sampler2D _AlbedoRGBBlurA;
37 | uniform float4 _AlbedoRGBBlurA_ST;
38 | uniform sampler2D _GrabNoBlurTexture;
39 | uniform half _DistortionStrength;
40 | uniform sampler2D _GrabBlurTexture;
41 | uniform half _ReflectionStrength;
42 | uniform half _EmissionContribution;
43 | uniform sampler2D _MetallicRSmoothnessGOcclusionBOpacityA;
44 | uniform float4 _MetallicRSmoothnessGOcclusionBOpacityA_ST;
45 |
46 | void surf( Input i , inout SurfaceOutputStandard o )
47 | {
48 | float2 uv_NormalMapRGB = i.uv_texcoord * _NormalMapRGB_ST.xy + _NormalMapRGB_ST.zw;
49 | float3 tex2DNode52 = UnpackScaleNormal( tex2D( _NormalMapRGB, uv_NormalMapRGB ) ,_NormalScale );
50 | o.Normal = tex2DNode52;
51 | float2 uv_AlbedoRGBBlurA = i.uv_texcoord * _AlbedoRGBBlurA_ST.xy + _AlbedoRGBBlurA_ST.zw;
52 | float4 tex2DNode53 = tex2D( _AlbedoRGBBlurA, uv_AlbedoRGBBlurA );
53 | float4 ase_screenPos = float4( i.screenPos.xyz , i.screenPos.w + 0.00000000001 );
54 | float4 ase_screenPos46 = ase_screenPos;
55 | #if UNITY_UV_STARTS_AT_TOP
56 | float scale46 = -1.0;
57 | #else
58 | float scale46 = 1.0;
59 | #endif
60 | float halfPosW46 = ase_screenPos46.w * 0.5;
61 | ase_screenPos46.y = ( ase_screenPos46.y - halfPosW46 ) * _ProjectionParams.x* scale46 + halfPosW46;
62 | #ifdef UNITY_SINGLE_PASS_STEREO
63 | ase_screenPos46.xy = TransformStereoScreenSpaceTex(ase_screenPos46.xy, ase_screenPos46.w);
64 | #endif
65 | ase_screenPos46.xyzw /= ase_screenPos46.w;
66 | float2 componentMask51 = ase_screenPos46.xy;
67 | float2 componentMask55 = ( tex2DNode52 * _DistortionStrength ).xy;
68 | float2 temp_output_54_0 = ( componentMask51 + componentMask55 );
69 | float4 lerpResult49 = lerp( tex2D( _GrabNoBlurTexture, temp_output_54_0 ) , tex2D( _GrabBlurTexture, temp_output_54_0 ) , tex2DNode53.a);
70 | float4 lerpResult91 = lerp( tex2DNode53 , lerpResult49 , _ReflectionStrength);
71 | o.Albedo = lerpResult91.xyz;
72 | o.Emission = ( _EmissionContribution * lerpResult91 ).xyz;
73 | float2 uv_MetallicRSmoothnessGOcclusionBOpacityA = i.uv_texcoord * _MetallicRSmoothnessGOcclusionBOpacityA_ST.xy + _MetallicRSmoothnessGOcclusionBOpacityA_ST.zw;
74 | float4 tex2DNode58 = tex2D( _MetallicRSmoothnessGOcclusionBOpacityA, uv_MetallicRSmoothnessGOcclusionBOpacityA );
75 | o.Metallic = tex2DNode58.r;
76 | o.Smoothness = tex2DNode58.g;
77 | o.Occlusion = tex2DNode58.b;
78 | o.Alpha = tex2DNode58.a;
79 | }
80 |
81 | ENDCG
82 | CGPROGRAM
83 | #pragma only_renderers d3d9 d3d11 glcore d3d11_9x
84 | #pragma surface surf Standard keepalpha fullforwardshadows exclude_path:deferred nofog
85 |
86 | ENDCG
87 | Pass
88 | {
89 | Name "ShadowCaster"
90 | Tags{ "LightMode" = "ShadowCaster" }
91 | ZWrite On
92 | CGPROGRAM
93 | #pragma vertex vert
94 | #pragma fragment frag
95 | #pragma target 3.0
96 | #pragma multi_compile_shadowcaster
97 | #pragma multi_compile UNITY_PASS_SHADOWCASTER
98 | #pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2
99 | # include "HLSLSupport.cginc"
100 | #if ( SHADER_API_D3D11 || SHADER_API_GLCORE || SHADER_API_GLES3 || SHADER_API_METAL || SHADER_API_VULKAN )
101 | #define CAN_SKIP_VPOS
102 | #endif
103 | #include "UnityCG.cginc"
104 | #include "Lighting.cginc"
105 | #include "UnityPBSLighting.cginc"
106 | sampler3D _DitherMaskLOD;
107 | struct v2f
108 | {
109 | V2F_SHADOW_CASTER;
110 | float3 worldPos : TEXCOORD6;
111 | float4 tSpace0 : TEXCOORD1;
112 | float4 tSpace1 : TEXCOORD2;
113 | float4 tSpace2 : TEXCOORD3;
114 | float4 texcoords01 : TEXCOORD4;
115 | UNITY_VERTEX_INPUT_INSTANCE_ID
116 | };
117 | v2f vert( appdata_full v )
118 | {
119 | v2f o;
120 | UNITY_SETUP_INSTANCE_ID( v );
121 | UNITY_INITIALIZE_OUTPUT( v2f, o );
122 | UNITY_TRANSFER_INSTANCE_ID( v, o );
123 | float3 worldPos = mul( unity_ObjectToWorld, v.vertex ).xyz;
124 | half3 worldNormal = UnityObjectToWorldNormal( v.normal );
125 | fixed3 worldTangent = UnityObjectToWorldDir( v.tangent.xyz );
126 | fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;
127 | fixed3 worldBinormal = cross( worldNormal, worldTangent ) * tangentSign;
128 | o.tSpace0 = float4( worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x );
129 | o.tSpace1 = float4( worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y );
130 | o.tSpace2 = float4( worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z );
131 | o.texcoords01 = float4( v.texcoord.xy, v.texcoord1.xy );
132 | o.worldPos = worldPos;
133 | TRANSFER_SHADOW_CASTER_NORMALOFFSET( o )
134 | return o;
135 | }
136 | fixed4 frag( v2f IN
137 | #if !defined( CAN_SKIP_VPOS )
138 | , UNITY_VPOS_TYPE vpos : VPOS
139 | #endif
140 | ) : SV_Target
141 | {
142 | UNITY_SETUP_INSTANCE_ID( IN );
143 | Input surfIN;
144 | UNITY_INITIALIZE_OUTPUT( Input, surfIN );
145 | surfIN.uv_texcoord.xy = IN.texcoords01.xy;
146 | float3 worldPos = IN.worldPos;
147 | fixed3 worldViewDir = normalize( UnityWorldSpaceViewDir( worldPos ) );
148 | SurfaceOutputStandard o;
149 | UNITY_INITIALIZE_OUTPUT( SurfaceOutputStandard, o )
150 | surf( surfIN, o );
151 | #if defined( CAN_SKIP_VPOS )
152 | float2 vpos = IN.pos;
153 | #endif
154 | half alphaRef = tex3D( _DitherMaskLOD, float3( vpos.xy * 0.25, o.Alpha * 0.9375 ) ).a;
155 | clip( alphaRef - 0.01 );
156 | SHADOW_CASTER_FRAGMENT( IN )
157 | }
158 | ENDCG
159 | }
160 | }
161 | Fallback "Diffuse"
162 | CustomEditor "ASEMaterialInspector"
163 | }
164 | /*ASEBEGIN
165 | Version=13101
166 | 116;50;1906;1004;2407.126;1073.52;1.847712;True;True
167 | Node;AmplifyShaderEditor.RangedFloatNode;63;-1710.117,-117.7083;Half;False;Property;_NormalScale;Normal Scale;5;0;0;0;1;0;1;FLOAT
168 | Node;AmplifyShaderEditor.RangedFloatNode;57;-1393.535,52.59332;Half;False;Property;_DistortionStrength;Distortion Strength;6;0;0.292;0;1;0;1;FLOAT
169 | Node;AmplifyShaderEditor.SamplerNode;52;-1405.301,-167.8068;Float;True;Property;_NormalMapRGB;Normal Map (RGB);4;0;None;True;0;True;bump;Auto;True;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT3;FLOAT;FLOAT;FLOAT;FLOAT
170 | Node;AmplifyShaderEditor.GrabScreenPosition;46;-1336.204,-382.0296;Float;False;0;0;5;FLOAT4;FLOAT;FLOAT;FLOAT;FLOAT
171 | Node;AmplifyShaderEditor.SimpleMultiplyOpNode;56;-1076.132,-95.07028;Float;False;2;2;0;FLOAT3;0.0;False;1;FLOAT;0.0,0,0;False;1;FLOAT3
172 | Node;AmplifyShaderEditor.ComponentMaskNode;51;-1009.087,-248.1262;Float;False;True;True;False;False;1;0;FLOAT4;0,0,0,0;False;1;FLOAT2
173 | Node;AmplifyShaderEditor.ComponentMaskNode;55;-857.3359,-90.57038;Float;False;True;True;False;True;1;0;FLOAT3;0,0,0;False;1;FLOAT2
174 | Node;AmplifyShaderEditor.SimpleAddOpNode;54;-626.9285,-216.5684;Float;True;2;2;0;FLOAT2;0.0,0;False;1;FLOAT2;0.0,0,0,0;False;1;FLOAT2
175 | Node;AmplifyShaderEditor.SamplerNode;47;-403.7443,-359.0478;Float;True;Global;_GrabNoBlurTexture;_GrabNoBlurTexture;0;0;None;True;0;False;black;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;COLOR;FLOAT;FLOAT;FLOAT;FLOAT
176 | Node;AmplifyShaderEditor.SamplerNode;18;-392.608,-117.0344;Float;True;Global;_GrabBlurTexture;_GrabBlurTexture;1;0;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT4;FLOAT;FLOAT;FLOAT;FLOAT
177 | Node;AmplifyShaderEditor.SamplerNode;53;-400.3706,-590.7485;Float;True;Property;_AlbedoRGBBlurA;Albedo (RGB) Blur (A);2;0;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT4;FLOAT;FLOAT;FLOAT;FLOAT
178 | Node;AmplifyShaderEditor.RangedFloatNode;87;-375.1392,-798.0683;Half;False;Property;_ReflectionStrength;Reflection Strength;8;0;1;0;1;0;1;FLOAT
179 | Node;AmplifyShaderEditor.LerpOp;49;33.14941,-333.6691;Float;True;3;0;COLOR;0.0;False;1;FLOAT4;0,0,0,0;False;2;FLOAT;0.0;False;1;FLOAT4
180 | Node;AmplifyShaderEditor.RangedFloatNode;66;335.0458,-806.5895;Half;False;Property;_EmissionContribution;Emission Contribution;7;0;0.3;0;1;0;1;FLOAT
181 | Node;AmplifyShaderEditor.LerpOp;91;49.56155,-725.2689;Float;True;3;0;FLOAT4;0,0,0,0;False;1;FLOAT4;0.0;False;2;FLOAT;0.0;False;1;FLOAT4
182 | Node;AmplifyShaderEditor.SimpleMultiplyOpNode;65;647.2706,-722.5212;Float;True;2;2;0;FLOAT;0,0,0,0;False;1;FLOAT4;0.0;False;1;FLOAT4
183 | Node;AmplifyShaderEditor.SamplerNode;58;27.5927,-71.0429;Float;True;Property;_MetallicRSmoothnessGOcclusionBOpacityA;Metallic (R) Smoothness (G) Occlusion (B) Opacity (A);3;0;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT4;FLOAT;FLOAT;FLOAT;FLOAT
184 | Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;1094.398,-366.9636;Float;False;True;2;Float;ASEMaterialInspector;0;0;Standard;Custom/RefractionWithCommandBuffer;False;False;False;False;False;False;False;False;False;True;False;False;False;False;True;False;False;Back;0;0;False;0;0;Translucent;0.5;True;True;0;False;Opaque;Transparent;ForwardOnly;True;True;True;False;False;False;True;False;False;False;False;False;False;True;True;True;True;False;0;255;255;0;0;0;0;False;0;4;10;25;False;0.5;True;0;Zero;Zero;0;Zero;Zero;Add;Add;0;False;0;0,0,0,0;VertexOffset;False;Cylindrical;False;Relative;0;;-1;-1;-1;-1;0;0;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT;0.0;False;4;FLOAT;0.0;False;5;FLOAT;0.0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0.0;False;9;FLOAT;0.0;False;10;OBJECT;0.0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
185 | WireConnection;52;5;63;0
186 | WireConnection;56;0;52;0
187 | WireConnection;56;1;57;0
188 | WireConnection;51;0;46;0
189 | WireConnection;55;0;56;0
190 | WireConnection;54;0;51;0
191 | WireConnection;54;1;55;0
192 | WireConnection;47;1;54;0
193 | WireConnection;18;1;54;0
194 | WireConnection;49;0;47;0
195 | WireConnection;49;1;18;0
196 | WireConnection;49;2;53;4
197 | WireConnection;91;0;53;0
198 | WireConnection;91;1;49;0
199 | WireConnection;91;2;87;0
200 | WireConnection;65;0;66;0
201 | WireConnection;65;1;91;0
202 | WireConnection;0;0;91;0
203 | WireConnection;0;1;52;0
204 | WireConnection;0;2;65;0
205 | WireConnection;0;3;58;1
206 | WireConnection;0;4;58;2
207 | WireConnection;0;5;58;3
208 | WireConnection;0;9;58;4
209 | ASEEND*/
210 | //CHKSM=F7D175F5720514B358D75E6C1A645E32F5C8F03D
--------------------------------------------------------------------------------
/Shaders/RefractionWithCommandBuffer.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7a7b0e7bd71b2ab4993293afe6edb68b
3 | timeCreated: 1506191967
4 | licenseType: Pro
5 | ShaderImporter:
6 | defaultTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Shaders/RefractionWithCommandBufferCheaper.shader:
--------------------------------------------------------------------------------
1 | // Made with Amplify Shader Editor
2 | // Available at the Unity Asset Store - http://u3d.as/y3X
3 | Shader "Custom/RefractionWithCommandBufferCheaper"
4 | {
5 | Properties
6 | {
7 | [HideInInspector] __dirty( "", Int ) = 1
8 | _AlbedoRGBOpacityA("Albedo (RGB) Opacity (A)", Color) = (0,0,0,0)
9 | _Metallic("Metallic", Range( 0 , 1)) = 0
10 | _Smoothness("Smoothness", Range( 0 , 1)) = 0
11 | _NormalMapRGB("Normal Map (RGB)", 2D) = "bump" {}
12 | _NormalScale("Normal Scale", Range( 0 , 1)) = 0
13 | _BlurAmount("Blur Amount", Range( 0 , 1)) = 0
14 | _DistortionStrength("Distortion Strength", Range( 0 , 1)) = 0.292
15 | _EmissionContribution("Emission Contribution", Range( 0 , 1)) = 0.3
16 | _ReflectionStrength("Reflection Strength", Range( 0 , 1)) = 1
17 | [HideInInspector] _texcoord( "", 2D ) = "white" {}
18 | }
19 |
20 | SubShader
21 | {
22 | Tags{ "RenderType" = "Opaque" "Queue" = "Transparent+0" "IgnoreProjector" = "True" "IsEmissive" = "true" }
23 | Cull Back
24 | CGINCLUDE
25 | #include "UnityStandardUtils.cginc"
26 | #include "UnityPBSLighting.cginc"
27 | #include "Lighting.cginc"
28 | #pragma target 3.0
29 | struct Input
30 | {
31 | float2 uv_texcoord;
32 | float4 screenPos;
33 | };
34 |
35 | uniform half _NormalScale;
36 | uniform sampler2D _NormalMapRGB;
37 | uniform float4 _NormalMapRGB_ST;
38 | uniform half4 _AlbedoRGBOpacityA;
39 | uniform sampler2D _GrabNoBlurTexture;
40 | uniform half _DistortionStrength;
41 | uniform sampler2D _GrabBlurTexture;
42 | uniform half _BlurAmount;
43 | uniform half _ReflectionStrength;
44 | uniform half _EmissionContribution;
45 | uniform half _Metallic;
46 | uniform half _Smoothness;
47 |
48 | void surf( Input i , inout SurfaceOutputStandard o )
49 | {
50 | float2 uv_NormalMapRGB = i.uv_texcoord * _NormalMapRGB_ST.xy + _NormalMapRGB_ST.zw;
51 | float3 tex2DNode52 = UnpackScaleNormal( tex2D( _NormalMapRGB, uv_NormalMapRGB ) ,_NormalScale );
52 | o.Normal = tex2DNode52;
53 | float4 ase_screenPos = float4( i.screenPos.xyz , i.screenPos.w + 0.00000000001 );
54 | float4 ase_screenPos46 = ase_screenPos;
55 | #if UNITY_UV_STARTS_AT_TOP
56 | float scale46 = -1.0;
57 | #else
58 | float scale46 = 1.0;
59 | #endif
60 | float halfPosW46 = ase_screenPos46.w * 0.5;
61 | ase_screenPos46.y = ( ase_screenPos46.y - halfPosW46 ) * _ProjectionParams.x* scale46 + halfPosW46;
62 | #ifdef UNITY_SINGLE_PASS_STEREO
63 | ase_screenPos46.xy = TransformStereoScreenSpaceTex(ase_screenPos46.xy, ase_screenPos46.w);
64 | #endif
65 | ase_screenPos46.xyzw /= ase_screenPos46.w;
66 | float2 componentMask51 = ase_screenPos46.xy;
67 | float2 componentMask55 = ( tex2DNode52 * _DistortionStrength ).xy;
68 | float2 temp_output_54_0 = ( componentMask51 + componentMask55 );
69 | float4 lerpResult49 = lerp( tex2D( _GrabNoBlurTexture, temp_output_54_0 ) , tex2D( _GrabBlurTexture, temp_output_54_0 ) , _BlurAmount);
70 | float4 lerpResult91 = lerp( _AlbedoRGBOpacityA , lerpResult49 , _ReflectionStrength);
71 | o.Albedo = lerpResult91.xyz;
72 | o.Emission = ( _EmissionContribution * lerpResult91 ).xyz;
73 | o.Metallic = _Metallic;
74 | o.Smoothness = _Smoothness;
75 | o.Alpha = _AlbedoRGBOpacityA.a;
76 | }
77 |
78 | ENDCG
79 | CGPROGRAM
80 | #pragma only_renderers d3d9 d3d11 glcore d3d11_9x
81 | #pragma surface surf Standard keepalpha fullforwardshadows exclude_path:deferred nofog
82 |
83 | ENDCG
84 | Pass
85 | {
86 | Name "ShadowCaster"
87 | Tags{ "LightMode" = "ShadowCaster" }
88 | ZWrite On
89 | CGPROGRAM
90 | #pragma vertex vert
91 | #pragma fragment frag
92 | #pragma target 3.0
93 | #pragma multi_compile_shadowcaster
94 | #pragma multi_compile UNITY_PASS_SHADOWCASTER
95 | #pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2
96 | # include "HLSLSupport.cginc"
97 | #if ( SHADER_API_D3D11 || SHADER_API_GLCORE || SHADER_API_GLES3 || SHADER_API_METAL || SHADER_API_VULKAN )
98 | #define CAN_SKIP_VPOS
99 | #endif
100 | #include "UnityCG.cginc"
101 | #include "Lighting.cginc"
102 | #include "UnityPBSLighting.cginc"
103 | sampler3D _DitherMaskLOD;
104 | struct v2f
105 | {
106 | V2F_SHADOW_CASTER;
107 | float3 worldPos : TEXCOORD6;
108 | float4 tSpace0 : TEXCOORD1;
109 | float4 tSpace1 : TEXCOORD2;
110 | float4 tSpace2 : TEXCOORD3;
111 | float4 texcoords01 : TEXCOORD4;
112 | UNITY_VERTEX_INPUT_INSTANCE_ID
113 | };
114 | v2f vert( appdata_full v )
115 | {
116 | v2f o;
117 | UNITY_SETUP_INSTANCE_ID( v );
118 | UNITY_INITIALIZE_OUTPUT( v2f, o );
119 | UNITY_TRANSFER_INSTANCE_ID( v, o );
120 | float3 worldPos = mul( unity_ObjectToWorld, v.vertex ).xyz;
121 | half3 worldNormal = UnityObjectToWorldNormal( v.normal );
122 | fixed3 worldTangent = UnityObjectToWorldDir( v.tangent.xyz );
123 | fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;
124 | fixed3 worldBinormal = cross( worldNormal, worldTangent ) * tangentSign;
125 | o.tSpace0 = float4( worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x );
126 | o.tSpace1 = float4( worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y );
127 | o.tSpace2 = float4( worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z );
128 | o.texcoords01 = float4( v.texcoord.xy, v.texcoord1.xy );
129 | o.worldPos = worldPos;
130 | TRANSFER_SHADOW_CASTER_NORMALOFFSET( o )
131 | return o;
132 | }
133 | fixed4 frag( v2f IN
134 | #if !defined( CAN_SKIP_VPOS )
135 | , UNITY_VPOS_TYPE vpos : VPOS
136 | #endif
137 | ) : SV_Target
138 | {
139 | UNITY_SETUP_INSTANCE_ID( IN );
140 | Input surfIN;
141 | UNITY_INITIALIZE_OUTPUT( Input, surfIN );
142 | surfIN.uv_texcoord.xy = IN.texcoords01.xy;
143 | float3 worldPos = IN.worldPos;
144 | fixed3 worldViewDir = normalize( UnityWorldSpaceViewDir( worldPos ) );
145 | SurfaceOutputStandard o;
146 | UNITY_INITIALIZE_OUTPUT( SurfaceOutputStandard, o )
147 | surf( surfIN, o );
148 | #if defined( CAN_SKIP_VPOS )
149 | float2 vpos = IN.pos;
150 | #endif
151 | half alphaRef = tex3D( _DitherMaskLOD, float3( vpos.xy * 0.25, o.Alpha * 0.9375 ) ).a;
152 | clip( alphaRef - 0.01 );
153 | SHADOW_CASTER_FRAGMENT( IN )
154 | }
155 | ENDCG
156 | }
157 | }
158 | Fallback "Diffuse"
159 | CustomEditor "ASEMaterialInspector"
160 | }
161 | /*ASEBEGIN
162 | Version=13101
163 | 88;69;1906;1004;1367.737;995.9941;1.660312;True;True
164 | Node;AmplifyShaderEditor.RangedFloatNode;63;-1710.117,-117.7083;Half;False;Property;_NormalScale;Normal Scale;6;0;0;0;1;0;1;FLOAT
165 | Node;AmplifyShaderEditor.SamplerNode;52;-1405.301,-167.8068;Float;True;Property;_NormalMapRGB;Normal Map (RGB);5;0;None;True;0;True;bump;Auto;True;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT3;FLOAT;FLOAT;FLOAT;FLOAT
166 | Node;AmplifyShaderEditor.RangedFloatNode;57;-1393.535,52.59332;Half;False;Property;_DistortionStrength;Distortion Strength;8;0;0.292;0;1;0;1;FLOAT
167 | Node;AmplifyShaderEditor.SimpleMultiplyOpNode;56;-1076.132,-95.07028;Float;False;2;2;0;FLOAT3;0.0;False;1;FLOAT;0.0,0,0;False;1;FLOAT3
168 | Node;AmplifyShaderEditor.GrabScreenPosition;46;-1336.204,-382.0296;Float;False;0;0;5;FLOAT4;FLOAT;FLOAT;FLOAT;FLOAT
169 | Node;AmplifyShaderEditor.ComponentMaskNode;55;-857.3359,-90.57038;Float;False;True;True;False;True;1;0;FLOAT3;0,0,0;False;1;FLOAT2
170 | Node;AmplifyShaderEditor.ComponentMaskNode;51;-1009.087,-248.1262;Float;False;True;True;False;False;1;0;FLOAT4;0,0,0,0;False;1;FLOAT2
171 | Node;AmplifyShaderEditor.SimpleAddOpNode;54;-626.9285,-216.5684;Float;True;2;2;0;FLOAT2;0.0,0;False;1;FLOAT2;0.0,0,0,0;False;1;FLOAT2
172 | Node;AmplifyShaderEditor.RangedFloatNode;93;-381.7226,-488.7032;Half;False;Property;_BlurAmount;Blur Amount;7;0;0;0;1;0;1;FLOAT
173 | Node;AmplifyShaderEditor.SamplerNode;18;-392.608,-117.0344;Float;True;Global;_GrabBlurTexture;_GrabBlurTexture;1;0;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT4;FLOAT;FLOAT;FLOAT;FLOAT
174 | Node;AmplifyShaderEditor.SamplerNode;47;-403.7443,-359.0478;Float;True;Global;_GrabNoBlurTexture;_GrabNoBlurTexture;0;0;None;True;0;False;black;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;COLOR;FLOAT;FLOAT;FLOAT;FLOAT
175 | Node;AmplifyShaderEditor.RangedFloatNode;87;-375.1392,-798.0683;Half;False;Property;_ReflectionStrength;Reflection Strength;10;0;1;0;1;0;1;FLOAT
176 | Node;AmplifyShaderEditor.LerpOp;49;65.65135,-383.1956;Float;True;3;0;COLOR;0.0;False;1;FLOAT4;0,0,0,0;False;2;FLOAT;0.0;False;1;FLOAT4
177 | Node;AmplifyShaderEditor.ColorNode;92;-371.2106,-689.1077;Half;False;Property;_AlbedoRGBOpacityA;Albedo (RGB) Opacity (A);2;0;0,0,0,0;0;5;COLOR;FLOAT;FLOAT;FLOAT;FLOAT
178 | Node;AmplifyShaderEditor.RangedFloatNode;66;335.0458,-806.5895;Half;False;Property;_EmissionContribution;Emission Contribution;9;0;0.3;0;1;0;1;FLOAT
179 | Node;AmplifyShaderEditor.LerpOp;91;82.06134,-675.8694;Float;True;3;0;COLOR;0,0,0,0;False;1;FLOAT4;0.0,0,0,0;False;2;FLOAT;0.0;False;1;FLOAT4
180 | Node;AmplifyShaderEditor.RangedFloatNode;98;544.6698,-180.3369;Half;False;Property;_Metallic;Metallic;3;0;0;0;1;0;1;FLOAT
181 | Node;AmplifyShaderEditor.RangedFloatNode;99;546.1342,-95.39407;Half;False;Property;_Smoothness;Smoothness;4;0;0;0;1;0;1;FLOAT
182 | Node;AmplifyShaderEditor.SimpleMultiplyOpNode;65;647.2706,-722.5212;Float;True;2;2;0;FLOAT;0,0,0,0;False;1;FLOAT4;0.0;False;1;FLOAT4
183 | Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;1094.398,-366.9636;Float;False;True;2;Float;ASEMaterialInspector;0;0;Standard;Custom/RefractionWithCommandBufferCheaper;False;False;False;False;False;False;False;False;False;True;False;False;False;False;True;False;False;Back;0;0;False;0;0;Translucent;0.5;True;True;0;False;Opaque;Transparent;ForwardOnly;True;True;True;False;False;False;True;False;False;False;False;False;False;True;True;True;True;False;0;255;255;0;0;0;0;False;0;4;10;25;False;0.5;True;0;Zero;Zero;0;Zero;Zero;Add;Add;0;False;0;0,0,0,0;VertexOffset;False;Cylindrical;False;Relative;0;;-1;-1;-1;-1;0;0;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT;0.0;False;4;FLOAT;0.0;False;5;FLOAT;0.0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0.0;False;9;FLOAT;0.0;False;10;OBJECT;0.0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
184 | WireConnection;52;5;63;0
185 | WireConnection;56;0;52;0
186 | WireConnection;56;1;57;0
187 | WireConnection;55;0;56;0
188 | WireConnection;51;0;46;0
189 | WireConnection;54;0;51;0
190 | WireConnection;54;1;55;0
191 | WireConnection;18;1;54;0
192 | WireConnection;47;1;54;0
193 | WireConnection;49;0;47;0
194 | WireConnection;49;1;18;0
195 | WireConnection;49;2;93;0
196 | WireConnection;91;0;92;0
197 | WireConnection;91;1;49;0
198 | WireConnection;91;2;87;0
199 | WireConnection;65;0;66;0
200 | WireConnection;65;1;91;0
201 | WireConnection;0;0;91;0
202 | WireConnection;0;1;52;0
203 | WireConnection;0;2;65;0
204 | WireConnection;0;3;98;0
205 | WireConnection;0;4;99;0
206 | WireConnection;0;9;92;4
207 | ASEEND*/
208 | //CHKSM=18A97B9C6C468CBA7A2CA2A34BC10DF417BDCE1B
--------------------------------------------------------------------------------
/Shaders/RefractionWithCommandBufferCheaper.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c930ae72e69763541892469e86754a86
3 | timeCreated: 1506193275
4 | licenseType: Pro
5 | ShaderImporter:
6 | defaultTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Shaders/SeparableBlur.shader:
--------------------------------------------------------------------------------
1 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
2 |
3 | Shader "Hidden/SeparableBlur" {
4 | Properties {
5 | _MainTex ("Base (RGB)", 2D) = "" {}
6 | }
7 |
8 | CGINCLUDE
9 |
10 | #include "UnityCG.cginc"
11 |
12 | struct v2f {
13 | float4 pos : POSITION;
14 | float2 uv : TEXCOORD0;
15 |
16 | float4 uv01 : TEXCOORD1;
17 | float4 uv23 : TEXCOORD2;
18 | float4 uv45 : TEXCOORD3;
19 | };
20 |
21 | float4 offsets;
22 |
23 | sampler2D _MainTex;
24 |
25 | v2f vert (appdata_img v) {
26 | v2f o;
27 | o.pos = UnityObjectToClipPos(v.vertex);
28 |
29 | o.uv.xy = v.texcoord.xy;
30 |
31 | o.uv01 = v.texcoord.xyxy + offsets.xyxy * float4(1,1, -1,-1);
32 | o.uv23 = v.texcoord.xyxy + offsets.xyxy * float4(1,1, -1,-1) * 2.0;
33 | o.uv45 = v.texcoord.xyxy + offsets.xyxy * float4(1,1, -1,-1) * 3.0;
34 |
35 | return o;
36 | }
37 |
38 | half4 frag (v2f i) : COLOR {
39 | half4 color = float4 (0,0,0,0);
40 |
41 | color += 0.40 * tex2D (_MainTex, i.uv);
42 | color += 0.15 * tex2D (_MainTex, i.uv01.xy);
43 | color += 0.15 * tex2D (_MainTex, i.uv01.zw);
44 | color += 0.10 * tex2D (_MainTex, i.uv23.xy);
45 | color += 0.10 * tex2D (_MainTex, i.uv23.zw);
46 | color += 0.05 * tex2D (_MainTex, i.uv45.xy);
47 | color += 0.05 * tex2D (_MainTex, i.uv45.zw);
48 |
49 | return color;
50 | }
51 |
52 | ENDCG
53 |
54 | Subshader {
55 | Pass {
56 | ZTest Always Cull Off ZWrite Off
57 | Fog { Mode off }
58 |
59 | CGPROGRAM
60 | #pragma fragmentoption ARB_precision_hint_fastest
61 | #pragma vertex vert
62 | #pragma fragment frag
63 | ENDCG
64 | }
65 | }
66 |
67 | Fallback off
68 |
69 |
70 | } // shader
71 |
--------------------------------------------------------------------------------
/Shaders/SeparableBlur.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e0aaa946d1793b44eb66b5594bdca958
3 | timeCreated: 1506187251
4 | licenseType: Pro
5 | ShaderImporter:
6 | defaultTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Shaders/ShaderGUI.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 60c8037e15f728e47ab1341ef24ae5df
3 | folderAsset: yes
4 | timeCreated: 1506194713
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Shaders/ShaderGUI/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f2924ee57fdc61944a7be75272d98fad
3 | folderAsset: yes
4 | timeCreated: 1506194842
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Shaders/ShaderGUI/Editor/CustomMaterialInspector.cs:
--------------------------------------------------------------------------------
1 | ///
2 | /// ---------
3 | /// Shader GUI stub for Amplify Shader Editor shaders so we don't get a warning when copy & pasting shaders.
4 | /// This is just laziness, so we don't have to remove the default shader GUI reference to "ASEMaterialInspector" made by Amplify.
5 | /// ---------
6 | ///
7 |
8 | // Make sure to activate this class only if the AMPLIFY SHADER EDITOR isn't part of the project.
9 | #if !AMPLIFY_SHADER_EDITOR
10 | using UnityEngine;
11 | using UnityEditor;
12 |
13 | internal class ASEMaterialInspector : ShaderGUI{
14 |
15 | private static MaterialEditor m_instance = null;
16 | public override void OnGUI( MaterialEditor materialEditor, MaterialProperty[] properties ){
17 | Material mat = materialEditor.target as Material;
18 |
19 | if ( mat == null )
20 | return;
21 |
22 | m_instance = materialEditor;
23 |
24 | EditorGUI.BeginChangeCheck();
25 | base.OnGUI( materialEditor, properties );
26 | materialEditor.LightmapEmissionProperty();
27 | if ( EditorGUI.EndChangeCheck() )
28 | {
29 | string isEmissive = mat.GetTag( "IsEmissive", false, "false" );
30 | if ( isEmissive.Equals("true") )
31 | {
32 | mat.globalIlluminationFlags &= ( MaterialGlobalIlluminationFlags )3;
33 | }
34 | else
35 | {
36 | mat.globalIlluminationFlags |= MaterialGlobalIlluminationFlags.EmissiveIsBlack;
37 | }
38 | }
39 | }
40 |
41 | public static MaterialEditor Instance { get { return m_instance; } set { m_instance = value; } }
42 | }
43 | #endif
44 |
--------------------------------------------------------------------------------
/Shaders/ShaderGUI/Editor/CustomMaterialInspector.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fe3df74dc778476448fde57943195863
3 | timeCreated: 1505999106
4 | licenseType: Pro
5 | MonoImporter:
6 | serializedVersion: 2
7 | defaultReferences: []
8 | executionOrder: 0
9 | icon: {instanceID: 0}
10 | userData:
11 | assetBundleName:
12 | assetBundleVariant:
13 |
--------------------------------------------------------------------------------
/Textures.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 20053be547bfb834e911019cb8e610ad
3 | folderAsset: yes
4 | timeCreated: 1506189700
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Textures/Portal_AlbedoBlur.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Doppelkeks/Unity-CommandBufferRefraction/1bc300fef2a3c443ecc3727625acf9323fc57144/Textures/Portal_AlbedoBlur.psd
--------------------------------------------------------------------------------
/Textures/Portal_AlbedoBlur.psd.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e122d594fa5ecb344af7837481889edf
3 | timeCreated: 1506190451
4 | licenseType: Pro
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 4
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | sRGBTexture: 1
12 | linearTexture: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapsPreserveCoverage: 0
16 | alphaTestReferenceValue: 0.5
17 | mipMapFadeDistanceStart: 1
18 | mipMapFadeDistanceEnd: 3
19 | bumpmap:
20 | convertToNormalMap: 0
21 | externalNormalMap: 0
22 | heightScale: 0.25
23 | normalMapFilter: 0
24 | isReadable: 0
25 | grayScaleToAlpha: 0
26 | generateCubemap: 6
27 | cubemapConvolution: 0
28 | seamlessCubemap: 0
29 | textureFormat: 1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | serializedVersion: 2
33 | filterMode: -1
34 | aniso: -1
35 | mipBias: -1
36 | wrapU: -1
37 | wrapV: -1
38 | wrapW: -1
39 | nPOTScale: 1
40 | lightmap: 0
41 | compressionQuality: 50
42 | spriteMode: 0
43 | spriteExtrude: 1
44 | spriteMeshType: 1
45 | alignment: 0
46 | spritePivot: {x: 0.5, y: 0.5}
47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
48 | spritePixelsToUnits: 100
49 | alphaUsage: 1
50 | alphaIsTransparency: 0
51 | spriteTessellationDetail: -1
52 | textureType: 0
53 | textureShape: 1
54 | maxTextureSizeSet: 0
55 | compressionQualitySet: 0
56 | textureFormatSet: 0
57 | platformSettings:
58 | - buildTarget: DefaultTexturePlatform
59 | maxTextureSize: 2048
60 | textureFormat: -1
61 | textureCompression: 1
62 | compressionQuality: 50
63 | crunchedCompression: 0
64 | allowsAlphaSplitting: 0
65 | overridden: 0
66 | spriteSheet:
67 | serializedVersion: 2
68 | sprites: []
69 | outline: []
70 | physicsShape: []
71 | spritePackingTag:
72 | userData:
73 | assetBundleName:
74 | assetBundleVariant:
75 |
--------------------------------------------------------------------------------
/Textures/Portal_MetallicSmoothnessOcclusionOpacity.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Doppelkeks/Unity-CommandBufferRefraction/1bc300fef2a3c443ecc3727625acf9323fc57144/Textures/Portal_MetallicSmoothnessOcclusionOpacity.psd
--------------------------------------------------------------------------------
/Textures/Portal_MetallicSmoothnessOcclusionOpacity.psd.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a0f30737eb30d264fb5e9c2550105bf2
3 | timeCreated: 1506190451
4 | licenseType: Pro
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 4
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | sRGBTexture: 1
12 | linearTexture: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapsPreserveCoverage: 0
16 | alphaTestReferenceValue: 0.5
17 | mipMapFadeDistanceStart: 1
18 | mipMapFadeDistanceEnd: 3
19 | bumpmap:
20 | convertToNormalMap: 0
21 | externalNormalMap: 0
22 | heightScale: 0.25
23 | normalMapFilter: 0
24 | isReadable: 0
25 | grayScaleToAlpha: 0
26 | generateCubemap: 6
27 | cubemapConvolution: 0
28 | seamlessCubemap: 0
29 | textureFormat: 1
30 | maxTextureSize: 2048
31 | textureSettings:
32 | serializedVersion: 2
33 | filterMode: -1
34 | aniso: -1
35 | mipBias: -1
36 | wrapU: -1
37 | wrapV: -1
38 | wrapW: -1
39 | nPOTScale: 1
40 | lightmap: 0
41 | compressionQuality: 50
42 | spriteMode: 0
43 | spriteExtrude: 1
44 | spriteMeshType: 1
45 | alignment: 0
46 | spritePivot: {x: 0.5, y: 0.5}
47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
48 | spritePixelsToUnits: 100
49 | alphaUsage: 1
50 | alphaIsTransparency: 0
51 | spriteTessellationDetail: -1
52 | textureType: 0
53 | textureShape: 1
54 | maxTextureSizeSet: 0
55 | compressionQualitySet: 0
56 | textureFormatSet: 0
57 | platformSettings:
58 | - buildTarget: DefaultTexturePlatform
59 | maxTextureSize: 2048
60 | textureFormat: -1
61 | textureCompression: 1
62 | compressionQuality: 50
63 | crunchedCompression: 0
64 | allowsAlphaSplitting: 0
65 | overridden: 0
66 | spriteSheet:
67 | serializedVersion: 2
68 | sprites: []
69 | outline: []
70 | physicsShape: []
71 | spritePackingTag:
72 | userData:
73 | assetBundleName:
74 | assetBundleVariant:
75 |
--------------------------------------------------------------------------------
/Textures/Portal_Normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Doppelkeks/Unity-CommandBufferRefraction/1bc300fef2a3c443ecc3727625acf9323fc57144/Textures/Portal_Normal.png
--------------------------------------------------------------------------------
/Textures/Portal_Normal.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d661edcb637ee16479a68c225ba641ce
3 | timeCreated: 1481126984
4 | licenseType: Store
5 | TextureImporter:
6 | fileIDToRecycleName: {}
7 | serializedVersion: 2
8 | mipmaps:
9 | mipMapMode: 0
10 | enableMipMap: 1
11 | linearTexture: 1
12 | correctGamma: 0
13 | fadeOut: 0
14 | borderMipMap: 0
15 | mipMapFadeDistanceStart: 1
16 | mipMapFadeDistanceEnd: 3
17 | bumpmap:
18 | convertToNormalMap: 0
19 | externalNormalMap: 1
20 | heightScale: 0.25
21 | normalMapFilter: 0
22 | isReadable: 0
23 | grayScaleToAlpha: 0
24 | generateCubemap: 0
25 | cubemapConvolution: 0
26 | cubemapConvolutionSteps: 7
27 | cubemapConvolutionExponent: 1.5
28 | seamlessCubemap: 0
29 | textureFormat: -3
30 | maxTextureSize: 2048
31 | textureSettings:
32 | filterMode: -1
33 | aniso: -1
34 | mipBias: -1
35 | wrapMode: -1
36 | nPOTScale: 1
37 | lightmap: 0
38 | rGBM: 0
39 | compressionQuality: 50
40 | allowsAlphaSplitting: 0
41 | spriteMode: 0
42 | spriteExtrude: 1
43 | spriteMeshType: 1
44 | alignment: 0
45 | spritePivot: {x: 0.5, y: 0.5}
46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
47 | spritePixelsToUnits: 100
48 | alphaIsTransparency: 0
49 | spriteTessellationDetail: -1
50 | textureType: 1
51 | buildTargetSettings: []
52 | spriteSheet:
53 | serializedVersion: 2
54 | sprites: []
55 | outline: []
56 | spritePackingTag:
57 | userData:
58 | assetBundleName:
59 | assetBundleVariant:
60 |
--------------------------------------------------------------------------------
/_CommandBufferRefraction.unity:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!29 &1
4 | OcclusionCullingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_OcclusionBakeSettings:
8 | smallestOccluder: 5
9 | smallestHole: 0.25
10 | backfaceThreshold: 100
11 | m_SceneGUID: 00000000000000000000000000000000
12 | m_OcclusionCullingData: {fileID: 0}
13 | --- !u!104 &2
14 | RenderSettings:
15 | m_ObjectHideFlags: 0
16 | serializedVersion: 8
17 | m_Fog: 0
18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19 | m_FogMode: 3
20 | m_FogDensity: 0.01
21 | m_LinearFogStart: 0
22 | m_LinearFogEnd: 300
23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26 | m_AmbientIntensity: 1
27 | m_AmbientMode: 0
28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
30 | m_HaloStrength: 0.5
31 | m_FlareStrength: 1
32 | m_FlareFadeSpeed: 3
33 | m_HaloTexture: {fileID: 0}
34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
35 | m_DefaultReflectionMode: 0
36 | m_DefaultReflectionResolution: 128
37 | m_ReflectionBounces: 1
38 | m_ReflectionIntensity: 1
39 | m_CustomReflection: {fileID: 0}
40 | m_Sun: {fileID: 0}
41 | m_IndirectSpecularColor: {r: 0.44960117, g: 0.49967366, b: 0.5756628, a: 1}
42 | --- !u!157 &3
43 | LightmapSettings:
44 | m_ObjectHideFlags: 0
45 | serializedVersion: 11
46 | m_GIWorkflowMode: 0
47 | m_GISettings:
48 | serializedVersion: 2
49 | m_BounceScale: 1
50 | m_IndirectOutputScale: 1
51 | m_AlbedoBoost: 1
52 | m_TemporalCoherenceThreshold: 1
53 | m_EnvironmentLightingMode: 0
54 | m_EnableBakedLightmaps: 0
55 | m_EnableRealtimeLightmaps: 1
56 | m_LightmapEditorSettings:
57 | serializedVersion: 9
58 | m_Resolution: 0.2
59 | m_BakeResolution: 40
60 | m_TextureWidth: 1024
61 | m_TextureHeight: 1024
62 | m_AO: 0
63 | m_AOMaxDistance: 1
64 | m_CompAOExponent: 1
65 | m_CompAOExponentDirect: 0
66 | m_Padding: 2
67 | m_LightmapParameters: {fileID: 0}
68 | m_LightmapsBakeMode: 1
69 | m_TextureCompression: 1
70 | m_FinalGather: 0
71 | m_FinalGatherFiltering: 1
72 | m_FinalGatherRayCount: 256
73 | m_ReflectionCompression: 2
74 | m_MixedBakeMode: 1
75 | m_BakeBackend: 0
76 | m_PVRSampling: 1
77 | m_PVRDirectSampleCount: 32
78 | m_PVRSampleCount: 500
79 | m_PVRBounces: 2
80 | m_PVRFiltering: 0
81 | m_PVRFilteringMode: 1
82 | m_PVRCulling: 1
83 | m_PVRFilteringGaussRadiusDirect: 1
84 | m_PVRFilteringGaussRadiusIndirect: 5
85 | m_PVRFilteringGaussRadiusAO: 2
86 | m_PVRFilteringAtrousColorSigma: 1
87 | m_PVRFilteringAtrousNormalSigma: 1
88 | m_PVRFilteringAtrousPositionSigma: 1
89 | m_LightingDataAsset: {fileID: 0}
90 | m_UseShadowmask: 0
91 | --- !u!196 &4
92 | NavMeshSettings:
93 | serializedVersion: 2
94 | m_ObjectHideFlags: 0
95 | m_BuildSettings:
96 | serializedVersion: 2
97 | agentTypeID: 0
98 | agentRadius: 0.5
99 | agentHeight: 2
100 | agentSlope: 45
101 | agentClimb: 0.4
102 | ledgeDropHeight: 0
103 | maxJumpAcrossDistance: 0
104 | minRegionArea: 2
105 | manualCellSize: 0
106 | cellSize: 0.16666667
107 | manualTileSize: 0
108 | tileSize: 256
109 | accuratePlacement: 0
110 | m_NavMeshData: {fileID: 0}
111 | --- !u!1 &99834410
112 | GameObject:
113 | m_ObjectHideFlags: 0
114 | m_PrefabParentObject: {fileID: 100000, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
115 | m_PrefabInternal: {fileID: 914115668}
116 | serializedVersion: 5
117 | m_Component:
118 | - component: {fileID: 99834411}
119 | - component: {fileID: 99834414}
120 | - component: {fileID: 99834413}
121 | - component: {fileID: 99834412}
122 | m_Layer: 0
123 | m_Name: CalibrationWallFrontRight
124 | m_TagString: Untagged
125 | m_Icon: {fileID: 0}
126 | m_NavMeshLayer: 0
127 | m_StaticEditorFlags: 4294967295
128 | m_IsActive: 1
129 | --- !u!4 &99834411
130 | Transform:
131 | m_ObjectHideFlags: 0
132 | m_PrefabParentObject: {fileID: 400000, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
133 | m_PrefabInternal: {fileID: 914115668}
134 | m_GameObject: {fileID: 99834410}
135 | m_LocalRotation: {x: 0.70710695, y: 0.0000002682209, z: 0.00000021584746, w: -0.7071066}
136 | m_LocalPosition: {x: 0, y: 2.500002, z: 2.5000014}
137 | m_LocalScale: {x: 0.49999997, y: 1, z: 0.5}
138 | m_Children: []
139 | m_Father: {fileID: 142643310}
140 | m_RootOrder: 3
141 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
142 | --- !u!23 &99834412
143 | MeshRenderer:
144 | m_ObjectHideFlags: 0
145 | m_PrefabParentObject: {fileID: 2300000, guid: 82af4827fee368e4c83d72a25f533a4e,
146 | type: 2}
147 | m_PrefabInternal: {fileID: 914115668}
148 | m_GameObject: {fileID: 99834410}
149 | m_Enabled: 1
150 | m_CastShadows: 1
151 | m_ReceiveShadows: 1
152 | m_MotionVectors: 1
153 | m_LightProbeUsage: 1
154 | m_ReflectionProbeUsage: 0
155 | m_Materials:
156 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
157 | m_StaticBatchInfo:
158 | firstSubMesh: 0
159 | subMeshCount: 0
160 | m_StaticBatchRoot: {fileID: 0}
161 | m_ProbeAnchor: {fileID: 0}
162 | m_LightProbeVolumeOverride: {fileID: 0}
163 | m_ScaleInLightmap: 1
164 | m_PreserveUVs: 0
165 | m_IgnoreNormalsForChartDetection: 0
166 | m_ImportantGI: 0
167 | m_SelectedEditorRenderState: 3
168 | m_MinimumChartSize: 4
169 | m_AutoUVMaxDistance: 0.5
170 | m_AutoUVMaxAngle: 89
171 | m_LightmapParameters: {fileID: 0}
172 | m_SortingLayerID: 0
173 | m_SortingLayer: 0
174 | m_SortingOrder: 0
175 | --- !u!64 &99834413
176 | MeshCollider:
177 | m_ObjectHideFlags: 0
178 | m_PrefabParentObject: {fileID: 6400000, guid: 82af4827fee368e4c83d72a25f533a4e,
179 | type: 2}
180 | m_PrefabInternal: {fileID: 914115668}
181 | m_GameObject: {fileID: 99834410}
182 | m_Material: {fileID: 0}
183 | m_IsTrigger: 0
184 | m_Enabled: 1
185 | serializedVersion: 2
186 | m_Convex: 0
187 | m_InflateMesh: 0
188 | m_SkinWidth: 0.01
189 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
190 | --- !u!33 &99834414
191 | MeshFilter:
192 | m_ObjectHideFlags: 0
193 | m_PrefabParentObject: {fileID: 3300000, guid: 82af4827fee368e4c83d72a25f533a4e,
194 | type: 2}
195 | m_PrefabInternal: {fileID: 914115668}
196 | m_GameObject: {fileID: 99834410}
197 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
198 | --- !u!1 &142643309
199 | GameObject:
200 | m_ObjectHideFlags: 0
201 | m_PrefabParentObject: {fileID: 102722, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
202 | m_PrefabInternal: {fileID: 914115668}
203 | serializedVersion: 5
204 | m_Component:
205 | - component: {fileID: 142643310}
206 | m_Layer: 0
207 | m_Name: CalibrationWalls
208 | m_TagString: Untagged
209 | m_Icon: {fileID: 0}
210 | m_NavMeshLayer: 0
211 | m_StaticEditorFlags: 4294967295
212 | m_IsActive: 1
213 | --- !u!4 &142643310
214 | Transform:
215 | m_ObjectHideFlags: 0
216 | m_PrefabParentObject: {fileID: 431536, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
217 | m_PrefabInternal: {fileID: 914115668}
218 | m_GameObject: {fileID: 142643309}
219 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
220 | m_LocalPosition: {x: 0, y: 0, z: 0}
221 | m_LocalScale: {x: 2.475785, y: 2.4757829, z: 2.4757829}
222 | m_Children:
223 | - {fileID: 389921451}
224 | - {fileID: 1166626485}
225 | - {fileID: 1542817992}
226 | - {fileID: 99834411}
227 | m_Father: {fileID: 1730097075}
228 | m_RootOrder: 1
229 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
230 | --- !u!1 &147505753
231 | GameObject:
232 | m_ObjectHideFlags: 0
233 | m_PrefabParentObject: {fileID: 1000012017197192, guid: 5fb901ed376616a4d800b32547cef664,
234 | type: 2}
235 | m_PrefabInternal: {fileID: 469346548}
236 | serializedVersion: 5
237 | m_Component:
238 | - component: {fileID: 147505756}
239 | - component: {fileID: 147505755}
240 | - component: {fileID: 147505754}
241 | m_Layer: 0
242 | m_Name: ShaderBall
243 | m_TagString: Untagged
244 | m_Icon: {fileID: 0}
245 | m_NavMeshLayer: 0
246 | m_StaticEditorFlags: 0
247 | m_IsActive: 1
248 | --- !u!23 &147505754
249 | MeshRenderer:
250 | m_ObjectHideFlags: 0
251 | m_PrefabParentObject: {fileID: 23000010075245314, guid: 5fb901ed376616a4d800b32547cef664,
252 | type: 2}
253 | m_PrefabInternal: {fileID: 469346548}
254 | m_GameObject: {fileID: 147505753}
255 | m_Enabled: 1
256 | m_CastShadows: 1
257 | m_ReceiveShadows: 1
258 | m_MotionVectors: 1
259 | m_LightProbeUsage: 1
260 | m_ReflectionProbeUsage: 1
261 | m_Materials:
262 | - {fileID: 2100000, guid: 14dcb84324e8609489297d6f8ff87c8d, type: 2}
263 | - {fileID: 2100000, guid: 1af9fbef8b63fc249a7f5a9834cfd2d7, type: 2}
264 | - {fileID: 2100000, guid: e6fb7eca82ae15848ac7abe815d2dc0c, type: 2}
265 | m_StaticBatchInfo:
266 | firstSubMesh: 0
267 | subMeshCount: 0
268 | m_StaticBatchRoot: {fileID: 0}
269 | m_ProbeAnchor: {fileID: 0}
270 | m_LightProbeVolumeOverride: {fileID: 0}
271 | m_ScaleInLightmap: 1
272 | m_PreserveUVs: 0
273 | m_IgnoreNormalsForChartDetection: 0
274 | m_ImportantGI: 0
275 | m_SelectedEditorRenderState: 3
276 | m_MinimumChartSize: 4
277 | m_AutoUVMaxDistance: 0.5
278 | m_AutoUVMaxAngle: 89
279 | m_LightmapParameters: {fileID: 0}
280 | m_SortingLayerID: 0
281 | m_SortingLayer: 0
282 | m_SortingOrder: 0
283 | --- !u!33 &147505755
284 | MeshFilter:
285 | m_ObjectHideFlags: 0
286 | m_PrefabParentObject: {fileID: 33000010213971312, guid: 5fb901ed376616a4d800b32547cef664,
287 | type: 2}
288 | m_PrefabInternal: {fileID: 469346548}
289 | m_GameObject: {fileID: 147505753}
290 | m_Mesh: {fileID: 4300000, guid: 2d99c4ba773b74442b65d2e9cb72bfcd, type: 3}
291 | --- !u!4 &147505756
292 | Transform:
293 | m_ObjectHideFlags: 0
294 | m_PrefabParentObject: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664,
295 | type: 2}
296 | m_PrefabInternal: {fileID: 469346548}
297 | m_GameObject: {fileID: 147505753}
298 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1}
299 | m_LocalPosition: {x: -0, y: 0, z: 0}
300 | m_LocalScale: {x: 1, y: 1, z: 1}
301 | m_Children: []
302 | m_Father: {fileID: 0}
303 | m_RootOrder: 1
304 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
305 | --- !u!1 &389921450
306 | GameObject:
307 | m_ObjectHideFlags: 0
308 | m_PrefabParentObject: {fileID: 182018, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
309 | m_PrefabInternal: {fileID: 914115668}
310 | serializedVersion: 5
311 | m_Component:
312 | - component: {fileID: 389921451}
313 | - component: {fileID: 389921454}
314 | - component: {fileID: 389921453}
315 | - component: {fileID: 389921452}
316 | m_Layer: 0
317 | m_Name: CalibrationWallRearLeft
318 | m_TagString: Untagged
319 | m_Icon: {fileID: 0}
320 | m_NavMeshLayer: 0
321 | m_StaticEditorFlags: 4294967295
322 | m_IsActive: 1
323 | --- !u!4 &389921451
324 | Transform:
325 | m_ObjectHideFlags: 0
326 | m_PrefabParentObject: {fileID: 464034, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
327 | m_PrefabInternal: {fileID: 914115668}
328 | m_GameObject: {fileID: 389921450}
329 | m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067}
330 | m_LocalPosition: {x: 0, y: 2.5, z: -2.5}
331 | m_LocalScale: {x: 0.5, y: 1, z: 0.5}
332 | m_Children: []
333 | m_Father: {fileID: 142643310}
334 | m_RootOrder: 0
335 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
336 | --- !u!23 &389921452
337 | MeshRenderer:
338 | m_ObjectHideFlags: 0
339 | m_PrefabParentObject: {fileID: 2391912, guid: 82af4827fee368e4c83d72a25f533a4e,
340 | type: 2}
341 | m_PrefabInternal: {fileID: 914115668}
342 | m_GameObject: {fileID: 389921450}
343 | m_Enabled: 1
344 | m_CastShadows: 1
345 | m_ReceiveShadows: 1
346 | m_MotionVectors: 1
347 | m_LightProbeUsage: 1
348 | m_ReflectionProbeUsage: 0
349 | m_Materials:
350 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
351 | m_StaticBatchInfo:
352 | firstSubMesh: 0
353 | subMeshCount: 0
354 | m_StaticBatchRoot: {fileID: 0}
355 | m_ProbeAnchor: {fileID: 0}
356 | m_LightProbeVolumeOverride: {fileID: 0}
357 | m_ScaleInLightmap: 1
358 | m_PreserveUVs: 0
359 | m_IgnoreNormalsForChartDetection: 0
360 | m_ImportantGI: 0
361 | m_SelectedEditorRenderState: 3
362 | m_MinimumChartSize: 4
363 | m_AutoUVMaxDistance: 0.5
364 | m_AutoUVMaxAngle: 89
365 | m_LightmapParameters: {fileID: 0}
366 | m_SortingLayerID: 0
367 | m_SortingLayer: 0
368 | m_SortingOrder: 0
369 | --- !u!64 &389921453
370 | MeshCollider:
371 | m_ObjectHideFlags: 0
372 | m_PrefabParentObject: {fileID: 6494426, guid: 82af4827fee368e4c83d72a25f533a4e,
373 | type: 2}
374 | m_PrefabInternal: {fileID: 914115668}
375 | m_GameObject: {fileID: 389921450}
376 | m_Material: {fileID: 0}
377 | m_IsTrigger: 0
378 | m_Enabled: 1
379 | serializedVersion: 2
380 | m_Convex: 0
381 | m_InflateMesh: 0
382 | m_SkinWidth: 0.01
383 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
384 | --- !u!33 &389921454
385 | MeshFilter:
386 | m_ObjectHideFlags: 0
387 | m_PrefabParentObject: {fileID: 3305810, guid: 82af4827fee368e4c83d72a25f533a4e,
388 | type: 2}
389 | m_PrefabInternal: {fileID: 914115668}
390 | m_GameObject: {fileID: 389921450}
391 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
392 | --- !u!1001 &469346548
393 | Prefab:
394 | m_ObjectHideFlags: 0
395 | serializedVersion: 2
396 | m_Modification:
397 | m_TransformParent: {fileID: 0}
398 | m_Modifications:
399 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
400 | propertyPath: m_LocalPosition.x
401 | value: -0
402 | objectReference: {fileID: 0}
403 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
404 | propertyPath: m_LocalPosition.y
405 | value: 0
406 | objectReference: {fileID: 0}
407 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
408 | propertyPath: m_LocalPosition.z
409 | value: 0
410 | objectReference: {fileID: 0}
411 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
412 | propertyPath: m_LocalRotation.x
413 | value: 0.000000021855694
414 | objectReference: {fileID: 0}
415 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
416 | propertyPath: m_LocalRotation.y
417 | value: 0
418 | objectReference: {fileID: 0}
419 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
420 | propertyPath: m_LocalRotation.z
421 | value: -0
422 | objectReference: {fileID: 0}
423 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
424 | propertyPath: m_LocalRotation.w
425 | value: 1
426 | objectReference: {fileID: 0}
427 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
428 | propertyPath: m_RootOrder
429 | value: 1
430 | objectReference: {fileID: 0}
431 | - target: {fileID: 23000010075245314, guid: 5fb901ed376616a4d800b32547cef664,
432 | type: 2}
433 | propertyPath: m_Materials.Array.data[0]
434 | value:
435 | objectReference: {fileID: 2100000, guid: 14dcb84324e8609489297d6f8ff87c8d, type: 2}
436 | - target: {fileID: 1000012017197192, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
437 | propertyPath: m_IsActive
438 | value: 1
439 | objectReference: {fileID: 0}
440 | m_RemovedComponents: []
441 | m_ParentPrefab: {fileID: 100100000, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
442 | m_RootGameObject: {fileID: 147505753}
443 | m_IsPrefabParent: 0
444 | --- !u!1001 &914115668
445 | Prefab:
446 | m_ObjectHideFlags: 0
447 | serializedVersion: 2
448 | m_Modification:
449 | m_TransformParent: {fileID: 0}
450 | m_Modifications:
451 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
452 | propertyPath: m_LocalPosition.x
453 | value: 0
454 | objectReference: {fileID: 0}
455 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
456 | propertyPath: m_LocalPosition.y
457 | value: 0
458 | objectReference: {fileID: 0}
459 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
460 | propertyPath: m_LocalPosition.z
461 | value: 0
462 | objectReference: {fileID: 0}
463 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
464 | propertyPath: m_LocalRotation.x
465 | value: 0
466 | objectReference: {fileID: 0}
467 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
468 | propertyPath: m_LocalRotation.y
469 | value: 0
470 | objectReference: {fileID: 0}
471 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
472 | propertyPath: m_LocalRotation.z
473 | value: 0
474 | objectReference: {fileID: 0}
475 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
476 | propertyPath: m_LocalRotation.w
477 | value: 1
478 | objectReference: {fileID: 0}
479 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
480 | propertyPath: m_RootOrder
481 | value: 0
482 | objectReference: {fileID: 0}
483 | - target: {fileID: 1000012052562494, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
484 | propertyPath: m_IsActive
485 | value: 1
486 | objectReference: {fileID: 0}
487 | - target: {fileID: 20000011723007962, guid: 82af4827fee368e4c83d72a25f533a4e,
488 | type: 2}
489 | propertyPath: m_RenderingPath
490 | value: 3
491 | objectReference: {fileID: 0}
492 | - target: {fileID: 108000010494217588, guid: 82af4827fee368e4c83d72a25f533a4e,
493 | type: 2}
494 | propertyPath: m_Intensity
495 | value: 1
496 | objectReference: {fileID: 0}
497 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
498 | propertyPath: m_LocalRotation.x
499 | value: 0.5657461
500 | objectReference: {fileID: 0}
501 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
502 | propertyPath: m_LocalRotation.y
503 | value: -0.6497076
504 | objectReference: {fileID: 0}
505 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
506 | propertyPath: m_LocalRotation.z
507 | value: 0.50764865
508 | objectReference: {fileID: 0}
509 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
510 | propertyPath: m_LocalRotation.w
511 | value: -0.010207292
512 | objectReference: {fileID: 0}
513 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
514 | propertyPath: m_LocalEulerAnglesHint.x
515 | value: 40.398003
516 | objectReference: {fileID: 0}
517 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
518 | propertyPath: m_LocalEulerAnglesHint.y
519 | value: -230.50299
520 | objectReference: {fileID: 0}
521 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
522 | propertyPath: m_LocalEulerAnglesHint.z
523 | value: -101.786
524 | objectReference: {fileID: 0}
525 | m_RemovedComponents: []
526 | m_ParentPrefab: {fileID: 100100000, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
527 | m_RootGameObject: {fileID: 1730097074}
528 | m_IsPrefabParent: 0
529 | --- !u!1 &1166626484
530 | GameObject:
531 | m_ObjectHideFlags: 0
532 | m_PrefabParentObject: {fileID: 125776, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
533 | m_PrefabInternal: {fileID: 914115668}
534 | serializedVersion: 5
535 | m_Component:
536 | - component: {fileID: 1166626485}
537 | - component: {fileID: 1166626488}
538 | - component: {fileID: 1166626487}
539 | - component: {fileID: 1166626486}
540 | m_Layer: 0
541 | m_Name: CalibrationWallRearRight
542 | m_TagString: Untagged
543 | m_Icon: {fileID: 0}
544 | m_NavMeshLayer: 0
545 | m_StaticEditorFlags: 4294967295
546 | m_IsActive: 1
547 | --- !u!4 &1166626485
548 | Transform:
549 | m_ObjectHideFlags: 0
550 | m_PrefabParentObject: {fileID: 494730, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
551 | m_PrefabInternal: {fileID: 914115668}
552 | m_GameObject: {fileID: 1166626484}
553 | m_LocalRotation: {x: 0.5, y: 0.5, z: -0.5000001, w: 0.49999994}
554 | m_LocalPosition: {x: -2.5, y: 2.5, z: 0}
555 | m_LocalScale: {x: 0.5, y: 1, z: 0.49999997}
556 | m_Children: []
557 | m_Father: {fileID: 142643310}
558 | m_RootOrder: 1
559 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
560 | --- !u!23 &1166626486
561 | MeshRenderer:
562 | m_ObjectHideFlags: 0
563 | m_PrefabParentObject: {fileID: 2304408, guid: 82af4827fee368e4c83d72a25f533a4e,
564 | type: 2}
565 | m_PrefabInternal: {fileID: 914115668}
566 | m_GameObject: {fileID: 1166626484}
567 | m_Enabled: 1
568 | m_CastShadows: 1
569 | m_ReceiveShadows: 1
570 | m_MotionVectors: 1
571 | m_LightProbeUsage: 1
572 | m_ReflectionProbeUsage: 0
573 | m_Materials:
574 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
575 | m_StaticBatchInfo:
576 | firstSubMesh: 0
577 | subMeshCount: 0
578 | m_StaticBatchRoot: {fileID: 0}
579 | m_ProbeAnchor: {fileID: 0}
580 | m_LightProbeVolumeOverride: {fileID: 0}
581 | m_ScaleInLightmap: 1
582 | m_PreserveUVs: 0
583 | m_IgnoreNormalsForChartDetection: 0
584 | m_ImportantGI: 0
585 | m_SelectedEditorRenderState: 3
586 | m_MinimumChartSize: 4
587 | m_AutoUVMaxDistance: 0.5
588 | m_AutoUVMaxAngle: 89
589 | m_LightmapParameters: {fileID: 0}
590 | m_SortingLayerID: 0
591 | m_SortingLayer: 0
592 | m_SortingOrder: 0
593 | --- !u!64 &1166626487
594 | MeshCollider:
595 | m_ObjectHideFlags: 0
596 | m_PrefabParentObject: {fileID: 6442406, guid: 82af4827fee368e4c83d72a25f533a4e,
597 | type: 2}
598 | m_PrefabInternal: {fileID: 914115668}
599 | m_GameObject: {fileID: 1166626484}
600 | m_Material: {fileID: 0}
601 | m_IsTrigger: 0
602 | m_Enabled: 1
603 | serializedVersion: 2
604 | m_Convex: 0
605 | m_InflateMesh: 0
606 | m_SkinWidth: 0.01
607 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
608 | --- !u!33 &1166626488
609 | MeshFilter:
610 | m_ObjectHideFlags: 0
611 | m_PrefabParentObject: {fileID: 3378452, guid: 82af4827fee368e4c83d72a25f533a4e,
612 | type: 2}
613 | m_PrefabInternal: {fileID: 914115668}
614 | m_GameObject: {fileID: 1166626484}
615 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
616 | --- !u!1 &1527571117
617 | GameObject:
618 | m_ObjectHideFlags: 0
619 | m_PrefabParentObject: {fileID: 1000011652330946, guid: 82af4827fee368e4c83d72a25f533a4e,
620 | type: 2}
621 | m_PrefabInternal: {fileID: 914115668}
622 | serializedVersion: 5
623 | m_Component:
624 | - component: {fileID: 1527571118}
625 | - component: {fileID: 1527571123}
626 | - component: {fileID: 1527571122}
627 | - component: {fileID: 1527571121}
628 | - component: {fileID: 1527571120}
629 | - component: {fileID: 1527571119}
630 | m_Layer: 0
631 | m_Name: Main Camera
632 | m_TagString: MainCamera
633 | m_Icon: {fileID: 0}
634 | m_NavMeshLayer: 0
635 | m_StaticEditorFlags: 0
636 | m_IsActive: 1
637 | --- !u!4 &1527571118
638 | Transform:
639 | m_ObjectHideFlags: 0
640 | m_PrefabParentObject: {fileID: 4000011252882896, guid: 82af4827fee368e4c83d72a25f533a4e,
641 | type: 2}
642 | m_PrefabInternal: {fileID: 914115668}
643 | m_GameObject: {fileID: 1527571117}
644 | m_LocalRotation: {x: -0.0964301, y: 0.90356946, z: -0.29473457, w: -0.29562664}
645 | m_LocalPosition: {x: 2.93, y: 3.9299998, z: 3.9800003}
646 | m_LocalScale: {x: 1, y: 1, z: 1}
647 | m_Children: []
648 | m_Father: {fileID: 1730097075}
649 | m_RootOrder: 3
650 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
651 | --- !u!114 &1527571119
652 | MonoBehaviour:
653 | m_ObjectHideFlags: 0
654 | m_PrefabParentObject: {fileID: 0}
655 | m_PrefabInternal: {fileID: 0}
656 | m_GameObject: {fileID: 1527571117}
657 | m_Enabled: 1
658 | m_EditorHideFlags: 0
659 | m_Script: {fileID: 11500000, guid: 609a343303ee93443b246291d3a836db, type: 3}
660 | m_Name:
661 | m_EditorClassIdentifier:
662 | blurShader: {fileID: 4800000, guid: e0aaa946d1793b44eb66b5594bdca958, type: 3}
663 | --- !u!81 &1527571120
664 | AudioListener:
665 | m_ObjectHideFlags: 0
666 | m_PrefabParentObject: {fileID: 81000011721023192, guid: 82af4827fee368e4c83d72a25f533a4e,
667 | type: 2}
668 | m_PrefabInternal: {fileID: 914115668}
669 | m_GameObject: {fileID: 1527571117}
670 | m_Enabled: 1
671 | --- !u!124 &1527571121
672 | Behaviour:
673 | m_ObjectHideFlags: 0
674 | m_PrefabParentObject: {fileID: 124000011119698828, guid: 82af4827fee368e4c83d72a25f533a4e,
675 | type: 2}
676 | m_PrefabInternal: {fileID: 914115668}
677 | m_GameObject: {fileID: 1527571117}
678 | m_Enabled: 1
679 | --- !u!92 &1527571122
680 | Behaviour:
681 | m_ObjectHideFlags: 0
682 | m_PrefabParentObject: {fileID: 92000012839854994, guid: 82af4827fee368e4c83d72a25f533a4e,
683 | type: 2}
684 | m_PrefabInternal: {fileID: 914115668}
685 | m_GameObject: {fileID: 1527571117}
686 | m_Enabled: 1
687 | --- !u!20 &1527571123
688 | Camera:
689 | m_ObjectHideFlags: 0
690 | m_PrefabParentObject: {fileID: 20000011723007962, guid: 82af4827fee368e4c83d72a25f533a4e,
691 | type: 2}
692 | m_PrefabInternal: {fileID: 914115668}
693 | m_GameObject: {fileID: 1527571117}
694 | m_Enabled: 1
695 | serializedVersion: 2
696 | m_ClearFlags: 1
697 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
698 | m_NormalizedViewPortRect:
699 | serializedVersion: 2
700 | x: 0
701 | y: 0
702 | width: 1
703 | height: 1
704 | near clip plane: 0.3
705 | far clip plane: 1000
706 | field of view: 60
707 | orthographic: 0
708 | orthographic size: 5
709 | m_Depth: -1
710 | m_CullingMask:
711 | serializedVersion: 2
712 | m_Bits: 4294967295
713 | m_RenderingPath: 3
714 | m_TargetTexture: {fileID: 0}
715 | m_TargetDisplay: 0
716 | m_TargetEye: 3
717 | m_HDR: 0
718 | m_AllowMSAA: 1
719 | m_ForceIntoRT: 0
720 | m_OcclusionCulling: 1
721 | m_StereoConvergence: 10
722 | m_StereoSeparation: 0.022
723 | m_StereoMirrorMode: 0
724 | --- !u!1 &1542817991
725 | GameObject:
726 | m_ObjectHideFlags: 0
727 | m_PrefabParentObject: {fileID: 100002, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
728 | m_PrefabInternal: {fileID: 914115668}
729 | serializedVersion: 5
730 | m_Component:
731 | - component: {fileID: 1542817992}
732 | - component: {fileID: 1542817995}
733 | - component: {fileID: 1542817994}
734 | - component: {fileID: 1542817993}
735 | m_Layer: 0
736 | m_Name: CalibrationWallFrontLeft
737 | m_TagString: Untagged
738 | m_Icon: {fileID: 0}
739 | m_NavMeshLayer: 0
740 | m_StaticEditorFlags: 4294967295
741 | m_IsActive: 1
742 | --- !u!4 &1542817992
743 | Transform:
744 | m_ObjectHideFlags: 0
745 | m_PrefabParentObject: {fileID: 400002, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
746 | m_PrefabInternal: {fileID: 914115668}
747 | m_GameObject: {fileID: 1542817991}
748 | m_LocalRotation: {x: 0.5000003, y: -0.5000001, z: -0.49999964, w: -0.50000006}
749 | m_LocalPosition: {x: 2.4999998, y: 2.5, z: 0}
750 | m_LocalScale: {x: 0.4999999, y: 1, z: 0.4999999}
751 | m_Children: []
752 | m_Father: {fileID: 142643310}
753 | m_RootOrder: 2
754 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
755 | --- !u!23 &1542817993
756 | MeshRenderer:
757 | m_ObjectHideFlags: 0
758 | m_PrefabParentObject: {fileID: 2300002, guid: 82af4827fee368e4c83d72a25f533a4e,
759 | type: 2}
760 | m_PrefabInternal: {fileID: 914115668}
761 | m_GameObject: {fileID: 1542817991}
762 | m_Enabled: 1
763 | m_CastShadows: 1
764 | m_ReceiveShadows: 1
765 | m_MotionVectors: 1
766 | m_LightProbeUsage: 1
767 | m_ReflectionProbeUsage: 0
768 | m_Materials:
769 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
770 | m_StaticBatchInfo:
771 | firstSubMesh: 0
772 | subMeshCount: 0
773 | m_StaticBatchRoot: {fileID: 0}
774 | m_ProbeAnchor: {fileID: 0}
775 | m_LightProbeVolumeOverride: {fileID: 0}
776 | m_ScaleInLightmap: 1
777 | m_PreserveUVs: 0
778 | m_IgnoreNormalsForChartDetection: 0
779 | m_ImportantGI: 0
780 | m_SelectedEditorRenderState: 3
781 | m_MinimumChartSize: 4
782 | m_AutoUVMaxDistance: 0.5
783 | m_AutoUVMaxAngle: 89
784 | m_LightmapParameters: {fileID: 0}
785 | m_SortingLayerID: 0
786 | m_SortingLayer: 0
787 | m_SortingOrder: 0
788 | --- !u!64 &1542817994
789 | MeshCollider:
790 | m_ObjectHideFlags: 0
791 | m_PrefabParentObject: {fileID: 6400002, guid: 82af4827fee368e4c83d72a25f533a4e,
792 | type: 2}
793 | m_PrefabInternal: {fileID: 914115668}
794 | m_GameObject: {fileID: 1542817991}
795 | m_Material: {fileID: 0}
796 | m_IsTrigger: 0
797 | m_Enabled: 1
798 | serializedVersion: 2
799 | m_Convex: 0
800 | m_InflateMesh: 0
801 | m_SkinWidth: 0.01
802 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
803 | --- !u!33 &1542817995
804 | MeshFilter:
805 | m_ObjectHideFlags: 0
806 | m_PrefabParentObject: {fileID: 3300002, guid: 82af4827fee368e4c83d72a25f533a4e,
807 | type: 2}
808 | m_PrefabInternal: {fileID: 914115668}
809 | m_GameObject: {fileID: 1542817991}
810 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
811 | --- !u!1 &1730097074
812 | GameObject:
813 | m_ObjectHideFlags: 0
814 | m_PrefabParentObject: {fileID: 100004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
815 | m_PrefabInternal: {fileID: 914115668}
816 | serializedVersion: 5
817 | m_Component:
818 | - component: {fileID: 1730097075}
819 | m_Layer: 0
820 | m_Name: SceneElements
821 | m_TagString: Untagged
822 | m_Icon: {fileID: 0}
823 | m_NavMeshLayer: 0
824 | m_StaticEditorFlags: 4294967295
825 | m_IsActive: 1
826 | --- !u!4 &1730097075
827 | Transform:
828 | m_ObjectHideFlags: 0
829 | m_PrefabParentObject: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
830 | m_PrefabInternal: {fileID: 914115668}
831 | m_GameObject: {fileID: 1730097074}
832 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
833 | m_LocalPosition: {x: 0, y: 0, z: 0}
834 | m_LocalScale: {x: 1, y: 1, z: 1}
835 | m_Children:
836 | - {fileID: 2135196171}
837 | - {fileID: 142643310}
838 | - {fileID: 1870111270}
839 | - {fileID: 1527571118}
840 | m_Father: {fileID: 0}
841 | m_RootOrder: 0
842 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
843 | --- !u!1 &1870111269
844 | GameObject:
845 | m_ObjectHideFlags: 0
846 | m_PrefabParentObject: {fileID: 1000012052562494, guid: 82af4827fee368e4c83d72a25f533a4e,
847 | type: 2}
848 | m_PrefabInternal: {fileID: 914115668}
849 | serializedVersion: 5
850 | m_Component:
851 | - component: {fileID: 1870111270}
852 | - component: {fileID: 1870111271}
853 | m_Layer: 0
854 | m_Name: Directional Light
855 | m_TagString: Untagged
856 | m_Icon: {fileID: 0}
857 | m_NavMeshLayer: 0
858 | m_StaticEditorFlags: 4294967295
859 | m_IsActive: 1
860 | --- !u!4 &1870111270
861 | Transform:
862 | m_ObjectHideFlags: 0
863 | m_PrefabParentObject: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e,
864 | type: 2}
865 | m_PrefabInternal: {fileID: 914115668}
866 | m_GameObject: {fileID: 1870111269}
867 | m_LocalRotation: {x: 0.5657461, y: -0.6497076, z: 0.50764865, w: -0.010207292}
868 | m_LocalPosition: {x: 0, y: 11.01, z: 0}
869 | m_LocalScale: {x: 1, y: 1, z: 1}
870 | m_Children: []
871 | m_Father: {fileID: 1730097075}
872 | m_RootOrder: 2
873 | m_LocalEulerAnglesHint: {x: 40.398003, y: -230.50299, z: -101.786}
874 | --- !u!108 &1870111271
875 | Light:
876 | m_ObjectHideFlags: 0
877 | m_PrefabParentObject: {fileID: 108000010494217588, guid: 82af4827fee368e4c83d72a25f533a4e,
878 | type: 2}
879 | m_PrefabInternal: {fileID: 914115668}
880 | m_GameObject: {fileID: 1870111269}
881 | m_Enabled: 1
882 | serializedVersion: 8
883 | m_Type: 1
884 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
885 | m_Intensity: 1
886 | m_Range: 10
887 | m_SpotAngle: 30
888 | m_CookieSize: 10
889 | m_Shadows:
890 | m_Type: 2
891 | m_Resolution: -1
892 | m_CustomResolution: -1
893 | m_Strength: 1
894 | m_Bias: 0.05
895 | m_NormalBias: 0.4
896 | m_NearPlane: 0.2
897 | m_Cookie: {fileID: 0}
898 | m_DrawHalo: 0
899 | m_Flare: {fileID: 0}
900 | m_RenderMode: 0
901 | m_CullingMask:
902 | serializedVersion: 2
903 | m_Bits: 4294967295
904 | m_Lightmapping: 4
905 | m_AreaSize: {x: 1, y: 1}
906 | m_BounceIntensity: 1
907 | m_ColorTemperature: 6570
908 | m_UseColorTemperature: 0
909 | m_ShadowRadius: 0
910 | m_ShadowAngle: 0
911 | --- !u!1 &2135196170
912 | GameObject:
913 | m_ObjectHideFlags: 0
914 | m_PrefabParentObject: {fileID: 100006, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
915 | m_PrefabInternal: {fileID: 914115668}
916 | serializedVersion: 5
917 | m_Component:
918 | - component: {fileID: 2135196171}
919 | - component: {fileID: 2135196174}
920 | - component: {fileID: 2135196173}
921 | - component: {fileID: 2135196172}
922 | m_Layer: 0
923 | m_Name: CalibrationFloor
924 | m_TagString: Untagged
925 | m_Icon: {fileID: 0}
926 | m_NavMeshLayer: 0
927 | m_StaticEditorFlags: 4294967295
928 | m_IsActive: 1
929 | --- !u!4 &2135196171
930 | Transform:
931 | m_ObjectHideFlags: 0
932 | m_PrefabParentObject: {fileID: 400006, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
933 | m_PrefabInternal: {fileID: 914115668}
934 | m_GameObject: {fileID: 2135196170}
935 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
936 | m_LocalPosition: {x: 0, y: 0, z: 0}
937 | m_LocalScale: {x: 1.2378925, y: 2.4757829, z: 1.2378914}
938 | m_Children: []
939 | m_Father: {fileID: 1730097075}
940 | m_RootOrder: 0
941 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
942 | --- !u!23 &2135196172
943 | MeshRenderer:
944 | m_ObjectHideFlags: 0
945 | m_PrefabParentObject: {fileID: 2300004, guid: 82af4827fee368e4c83d72a25f533a4e,
946 | type: 2}
947 | m_PrefabInternal: {fileID: 914115668}
948 | m_GameObject: {fileID: 2135196170}
949 | m_Enabled: 1
950 | m_CastShadows: 1
951 | m_ReceiveShadows: 1
952 | m_MotionVectors: 1
953 | m_LightProbeUsage: 1
954 | m_ReflectionProbeUsage: 0
955 | m_Materials:
956 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
957 | m_StaticBatchInfo:
958 | firstSubMesh: 0
959 | subMeshCount: 0
960 | m_StaticBatchRoot: {fileID: 0}
961 | m_ProbeAnchor: {fileID: 0}
962 | m_LightProbeVolumeOverride: {fileID: 0}
963 | m_ScaleInLightmap: 1
964 | m_PreserveUVs: 0
965 | m_IgnoreNormalsForChartDetection: 0
966 | m_ImportantGI: 0
967 | m_SelectedEditorRenderState: 3
968 | m_MinimumChartSize: 4
969 | m_AutoUVMaxDistance: 0.5
970 | m_AutoUVMaxAngle: 89
971 | m_LightmapParameters: {fileID: 0}
972 | m_SortingLayerID: 0
973 | m_SortingLayer: 0
974 | m_SortingOrder: 0
975 | --- !u!64 &2135196173
976 | MeshCollider:
977 | m_ObjectHideFlags: 0
978 | m_PrefabParentObject: {fileID: 6400004, guid: 82af4827fee368e4c83d72a25f533a4e,
979 | type: 2}
980 | m_PrefabInternal: {fileID: 914115668}
981 | m_GameObject: {fileID: 2135196170}
982 | m_Material: {fileID: 0}
983 | m_IsTrigger: 0
984 | m_Enabled: 1
985 | serializedVersion: 2
986 | m_Convex: 0
987 | m_InflateMesh: 0
988 | m_SkinWidth: 0.01
989 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
990 | --- !u!33 &2135196174
991 | MeshFilter:
992 | m_ObjectHideFlags: 0
993 | m_PrefabParentObject: {fileID: 3300004, guid: 82af4827fee368e4c83d72a25f533a4e,
994 | type: 2}
995 | m_PrefabInternal: {fileID: 914115668}
996 | m_GameObject: {fileID: 2135196170}
997 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
998 |
--------------------------------------------------------------------------------
/_CommandBufferRefraction.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a9b82faa06824e746be3c51143c36b63
3 | timeCreated: 1506186320
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/_CommandBufferRefractionCheaper.unity:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!29 &1
4 | OcclusionCullingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_OcclusionBakeSettings:
8 | smallestOccluder: 5
9 | smallestHole: 0.25
10 | backfaceThreshold: 100
11 | m_SceneGUID: 00000000000000000000000000000000
12 | m_OcclusionCullingData: {fileID: 0}
13 | --- !u!104 &2
14 | RenderSettings:
15 | m_ObjectHideFlags: 0
16 | serializedVersion: 8
17 | m_Fog: 0
18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19 | m_FogMode: 3
20 | m_FogDensity: 0.01
21 | m_LinearFogStart: 0
22 | m_LinearFogEnd: 300
23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26 | m_AmbientIntensity: 1
27 | m_AmbientMode: 0
28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
30 | m_HaloStrength: 0.5
31 | m_FlareStrength: 1
32 | m_FlareFadeSpeed: 3
33 | m_HaloTexture: {fileID: 0}
34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
35 | m_DefaultReflectionMode: 0
36 | m_DefaultReflectionResolution: 128
37 | m_ReflectionBounces: 1
38 | m_ReflectionIntensity: 1
39 | m_CustomReflection: {fileID: 0}
40 | m_Sun: {fileID: 0}
41 | m_IndirectSpecularColor: {r: 0.44960117, g: 0.49967366, b: 0.5756628, a: 1}
42 | --- !u!157 &3
43 | LightmapSettings:
44 | m_ObjectHideFlags: 0
45 | serializedVersion: 11
46 | m_GIWorkflowMode: 0
47 | m_GISettings:
48 | serializedVersion: 2
49 | m_BounceScale: 1
50 | m_IndirectOutputScale: 1
51 | m_AlbedoBoost: 1
52 | m_TemporalCoherenceThreshold: 1
53 | m_EnvironmentLightingMode: 0
54 | m_EnableBakedLightmaps: 0
55 | m_EnableRealtimeLightmaps: 1
56 | m_LightmapEditorSettings:
57 | serializedVersion: 9
58 | m_Resolution: 0.2
59 | m_BakeResolution: 40
60 | m_TextureWidth: 1024
61 | m_TextureHeight: 1024
62 | m_AO: 0
63 | m_AOMaxDistance: 1
64 | m_CompAOExponent: 1
65 | m_CompAOExponentDirect: 0
66 | m_Padding: 2
67 | m_LightmapParameters: {fileID: 0}
68 | m_LightmapsBakeMode: 1
69 | m_TextureCompression: 1
70 | m_FinalGather: 0
71 | m_FinalGatherFiltering: 1
72 | m_FinalGatherRayCount: 256
73 | m_ReflectionCompression: 2
74 | m_MixedBakeMode: 1
75 | m_BakeBackend: 0
76 | m_PVRSampling: 1
77 | m_PVRDirectSampleCount: 32
78 | m_PVRSampleCount: 500
79 | m_PVRBounces: 2
80 | m_PVRFiltering: 0
81 | m_PVRFilteringMode: 1
82 | m_PVRCulling: 1
83 | m_PVRFilteringGaussRadiusDirect: 1
84 | m_PVRFilteringGaussRadiusIndirect: 5
85 | m_PVRFilteringGaussRadiusAO: 2
86 | m_PVRFilteringAtrousColorSigma: 1
87 | m_PVRFilteringAtrousNormalSigma: 1
88 | m_PVRFilteringAtrousPositionSigma: 1
89 | m_LightingDataAsset: {fileID: 0}
90 | m_UseShadowmask: 0
91 | --- !u!196 &4
92 | NavMeshSettings:
93 | serializedVersion: 2
94 | m_ObjectHideFlags: 0
95 | m_BuildSettings:
96 | serializedVersion: 2
97 | agentTypeID: 0
98 | agentRadius: 0.5
99 | agentHeight: 2
100 | agentSlope: 45
101 | agentClimb: 0.4
102 | ledgeDropHeight: 0
103 | maxJumpAcrossDistance: 0
104 | minRegionArea: 2
105 | manualCellSize: 0
106 | cellSize: 0.16666667
107 | manualTileSize: 0
108 | tileSize: 256
109 | accuratePlacement: 0
110 | m_NavMeshData: {fileID: 0}
111 | --- !u!1 &99834410
112 | GameObject:
113 | m_ObjectHideFlags: 0
114 | m_PrefabParentObject: {fileID: 100000, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
115 | m_PrefabInternal: {fileID: 914115668}
116 | serializedVersion: 5
117 | m_Component:
118 | - component: {fileID: 99834411}
119 | - component: {fileID: 99834414}
120 | - component: {fileID: 99834413}
121 | - component: {fileID: 99834412}
122 | m_Layer: 0
123 | m_Name: CalibrationWallFrontRight
124 | m_TagString: Untagged
125 | m_Icon: {fileID: 0}
126 | m_NavMeshLayer: 0
127 | m_StaticEditorFlags: 4294967295
128 | m_IsActive: 1
129 | --- !u!4 &99834411
130 | Transform:
131 | m_ObjectHideFlags: 0
132 | m_PrefabParentObject: {fileID: 400000, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
133 | m_PrefabInternal: {fileID: 914115668}
134 | m_GameObject: {fileID: 99834410}
135 | m_LocalRotation: {x: 0.70710695, y: 0.0000002682209, z: 0.00000021584746, w: -0.7071066}
136 | m_LocalPosition: {x: 0, y: 2.500002, z: 2.5000014}
137 | m_LocalScale: {x: 0.49999997, y: 1, z: 0.5}
138 | m_Children: []
139 | m_Father: {fileID: 142643310}
140 | m_RootOrder: 3
141 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
142 | --- !u!23 &99834412
143 | MeshRenderer:
144 | m_ObjectHideFlags: 0
145 | m_PrefabParentObject: {fileID: 2300000, guid: 82af4827fee368e4c83d72a25f533a4e,
146 | type: 2}
147 | m_PrefabInternal: {fileID: 914115668}
148 | m_GameObject: {fileID: 99834410}
149 | m_Enabled: 1
150 | m_CastShadows: 1
151 | m_ReceiveShadows: 1
152 | m_MotionVectors: 1
153 | m_LightProbeUsage: 1
154 | m_ReflectionProbeUsage: 0
155 | m_Materials:
156 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
157 | m_StaticBatchInfo:
158 | firstSubMesh: 0
159 | subMeshCount: 0
160 | m_StaticBatchRoot: {fileID: 0}
161 | m_ProbeAnchor: {fileID: 0}
162 | m_LightProbeVolumeOverride: {fileID: 0}
163 | m_ScaleInLightmap: 1
164 | m_PreserveUVs: 0
165 | m_IgnoreNormalsForChartDetection: 0
166 | m_ImportantGI: 0
167 | m_SelectedEditorRenderState: 3
168 | m_MinimumChartSize: 4
169 | m_AutoUVMaxDistance: 0.5
170 | m_AutoUVMaxAngle: 89
171 | m_LightmapParameters: {fileID: 0}
172 | m_SortingLayerID: 0
173 | m_SortingLayer: 0
174 | m_SortingOrder: 0
175 | --- !u!64 &99834413
176 | MeshCollider:
177 | m_ObjectHideFlags: 0
178 | m_PrefabParentObject: {fileID: 6400000, guid: 82af4827fee368e4c83d72a25f533a4e,
179 | type: 2}
180 | m_PrefabInternal: {fileID: 914115668}
181 | m_GameObject: {fileID: 99834410}
182 | m_Material: {fileID: 0}
183 | m_IsTrigger: 0
184 | m_Enabled: 1
185 | serializedVersion: 2
186 | m_Convex: 0
187 | m_InflateMesh: 0
188 | m_SkinWidth: 0.01
189 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
190 | --- !u!33 &99834414
191 | MeshFilter:
192 | m_ObjectHideFlags: 0
193 | m_PrefabParentObject: {fileID: 3300000, guid: 82af4827fee368e4c83d72a25f533a4e,
194 | type: 2}
195 | m_PrefabInternal: {fileID: 914115668}
196 | m_GameObject: {fileID: 99834410}
197 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
198 | --- !u!1 &142643309
199 | GameObject:
200 | m_ObjectHideFlags: 0
201 | m_PrefabParentObject: {fileID: 102722, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
202 | m_PrefabInternal: {fileID: 914115668}
203 | serializedVersion: 5
204 | m_Component:
205 | - component: {fileID: 142643310}
206 | m_Layer: 0
207 | m_Name: CalibrationWalls
208 | m_TagString: Untagged
209 | m_Icon: {fileID: 0}
210 | m_NavMeshLayer: 0
211 | m_StaticEditorFlags: 4294967295
212 | m_IsActive: 1
213 | --- !u!4 &142643310
214 | Transform:
215 | m_ObjectHideFlags: 0
216 | m_PrefabParentObject: {fileID: 431536, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
217 | m_PrefabInternal: {fileID: 914115668}
218 | m_GameObject: {fileID: 142643309}
219 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
220 | m_LocalPosition: {x: 0, y: 0, z: 0}
221 | m_LocalScale: {x: 2.475785, y: 2.4757829, z: 2.4757829}
222 | m_Children:
223 | - {fileID: 389921451}
224 | - {fileID: 1166626485}
225 | - {fileID: 1542817992}
226 | - {fileID: 99834411}
227 | m_Father: {fileID: 1730097075}
228 | m_RootOrder: 1
229 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
230 | --- !u!1 &147505753
231 | GameObject:
232 | m_ObjectHideFlags: 0
233 | m_PrefabParentObject: {fileID: 1000012017197192, guid: 5fb901ed376616a4d800b32547cef664,
234 | type: 2}
235 | m_PrefabInternal: {fileID: 469346548}
236 | serializedVersion: 5
237 | m_Component:
238 | - component: {fileID: 147505756}
239 | - component: {fileID: 147505755}
240 | - component: {fileID: 147505754}
241 | m_Layer: 0
242 | m_Name: ShaderBall
243 | m_TagString: Untagged
244 | m_Icon: {fileID: 0}
245 | m_NavMeshLayer: 0
246 | m_StaticEditorFlags: 0
247 | m_IsActive: 1
248 | --- !u!23 &147505754
249 | MeshRenderer:
250 | m_ObjectHideFlags: 0
251 | m_PrefabParentObject: {fileID: 23000010075245314, guid: 5fb901ed376616a4d800b32547cef664,
252 | type: 2}
253 | m_PrefabInternal: {fileID: 469346548}
254 | m_GameObject: {fileID: 147505753}
255 | m_Enabled: 1
256 | m_CastShadows: 1
257 | m_ReceiveShadows: 1
258 | m_MotionVectors: 1
259 | m_LightProbeUsage: 1
260 | m_ReflectionProbeUsage: 1
261 | m_Materials:
262 | - {fileID: 2100000, guid: 9b869f7e1c6bbce428bce3f664432840, type: 2}
263 | - {fileID: 2100000, guid: 1af9fbef8b63fc249a7f5a9834cfd2d7, type: 2}
264 | - {fileID: 2100000, guid: e6fb7eca82ae15848ac7abe815d2dc0c, type: 2}
265 | m_StaticBatchInfo:
266 | firstSubMesh: 0
267 | subMeshCount: 0
268 | m_StaticBatchRoot: {fileID: 0}
269 | m_ProbeAnchor: {fileID: 0}
270 | m_LightProbeVolumeOverride: {fileID: 0}
271 | m_ScaleInLightmap: 1
272 | m_PreserveUVs: 0
273 | m_IgnoreNormalsForChartDetection: 0
274 | m_ImportantGI: 0
275 | m_SelectedEditorRenderState: 3
276 | m_MinimumChartSize: 4
277 | m_AutoUVMaxDistance: 0.5
278 | m_AutoUVMaxAngle: 89
279 | m_LightmapParameters: {fileID: 0}
280 | m_SortingLayerID: 0
281 | m_SortingLayer: 0
282 | m_SortingOrder: 0
283 | --- !u!33 &147505755
284 | MeshFilter:
285 | m_ObjectHideFlags: 0
286 | m_PrefabParentObject: {fileID: 33000010213971312, guid: 5fb901ed376616a4d800b32547cef664,
287 | type: 2}
288 | m_PrefabInternal: {fileID: 469346548}
289 | m_GameObject: {fileID: 147505753}
290 | m_Mesh: {fileID: 4300000, guid: 2d99c4ba773b74442b65d2e9cb72bfcd, type: 3}
291 | --- !u!4 &147505756
292 | Transform:
293 | m_ObjectHideFlags: 0
294 | m_PrefabParentObject: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664,
295 | type: 2}
296 | m_PrefabInternal: {fileID: 469346548}
297 | m_GameObject: {fileID: 147505753}
298 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1}
299 | m_LocalPosition: {x: -0, y: 0, z: 0}
300 | m_LocalScale: {x: 1, y: 1, z: 1}
301 | m_Children: []
302 | m_Father: {fileID: 0}
303 | m_RootOrder: 1
304 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
305 | --- !u!1 &389921450
306 | GameObject:
307 | m_ObjectHideFlags: 0
308 | m_PrefabParentObject: {fileID: 182018, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
309 | m_PrefabInternal: {fileID: 914115668}
310 | serializedVersion: 5
311 | m_Component:
312 | - component: {fileID: 389921451}
313 | - component: {fileID: 389921454}
314 | - component: {fileID: 389921453}
315 | - component: {fileID: 389921452}
316 | m_Layer: 0
317 | m_Name: CalibrationWallRearLeft
318 | m_TagString: Untagged
319 | m_Icon: {fileID: 0}
320 | m_NavMeshLayer: 0
321 | m_StaticEditorFlags: 4294967295
322 | m_IsActive: 1
323 | --- !u!4 &389921451
324 | Transform:
325 | m_ObjectHideFlags: 0
326 | m_PrefabParentObject: {fileID: 464034, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
327 | m_PrefabInternal: {fileID: 914115668}
328 | m_GameObject: {fileID: 389921450}
329 | m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067}
330 | m_LocalPosition: {x: 0, y: 2.5, z: -2.5}
331 | m_LocalScale: {x: 0.5, y: 1, z: 0.5}
332 | m_Children: []
333 | m_Father: {fileID: 142643310}
334 | m_RootOrder: 0
335 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
336 | --- !u!23 &389921452
337 | MeshRenderer:
338 | m_ObjectHideFlags: 0
339 | m_PrefabParentObject: {fileID: 2391912, guid: 82af4827fee368e4c83d72a25f533a4e,
340 | type: 2}
341 | m_PrefabInternal: {fileID: 914115668}
342 | m_GameObject: {fileID: 389921450}
343 | m_Enabled: 1
344 | m_CastShadows: 1
345 | m_ReceiveShadows: 1
346 | m_MotionVectors: 1
347 | m_LightProbeUsage: 1
348 | m_ReflectionProbeUsage: 0
349 | m_Materials:
350 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
351 | m_StaticBatchInfo:
352 | firstSubMesh: 0
353 | subMeshCount: 0
354 | m_StaticBatchRoot: {fileID: 0}
355 | m_ProbeAnchor: {fileID: 0}
356 | m_LightProbeVolumeOverride: {fileID: 0}
357 | m_ScaleInLightmap: 1
358 | m_PreserveUVs: 0
359 | m_IgnoreNormalsForChartDetection: 0
360 | m_ImportantGI: 0
361 | m_SelectedEditorRenderState: 3
362 | m_MinimumChartSize: 4
363 | m_AutoUVMaxDistance: 0.5
364 | m_AutoUVMaxAngle: 89
365 | m_LightmapParameters: {fileID: 0}
366 | m_SortingLayerID: 0
367 | m_SortingLayer: 0
368 | m_SortingOrder: 0
369 | --- !u!64 &389921453
370 | MeshCollider:
371 | m_ObjectHideFlags: 0
372 | m_PrefabParentObject: {fileID: 6494426, guid: 82af4827fee368e4c83d72a25f533a4e,
373 | type: 2}
374 | m_PrefabInternal: {fileID: 914115668}
375 | m_GameObject: {fileID: 389921450}
376 | m_Material: {fileID: 0}
377 | m_IsTrigger: 0
378 | m_Enabled: 1
379 | serializedVersion: 2
380 | m_Convex: 0
381 | m_InflateMesh: 0
382 | m_SkinWidth: 0.01
383 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
384 | --- !u!33 &389921454
385 | MeshFilter:
386 | m_ObjectHideFlags: 0
387 | m_PrefabParentObject: {fileID: 3305810, guid: 82af4827fee368e4c83d72a25f533a4e,
388 | type: 2}
389 | m_PrefabInternal: {fileID: 914115668}
390 | m_GameObject: {fileID: 389921450}
391 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
392 | --- !u!1001 &469346548
393 | Prefab:
394 | m_ObjectHideFlags: 0
395 | serializedVersion: 2
396 | m_Modification:
397 | m_TransformParent: {fileID: 0}
398 | m_Modifications:
399 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
400 | propertyPath: m_LocalPosition.x
401 | value: -0
402 | objectReference: {fileID: 0}
403 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
404 | propertyPath: m_LocalPosition.y
405 | value: 0
406 | objectReference: {fileID: 0}
407 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
408 | propertyPath: m_LocalPosition.z
409 | value: 0
410 | objectReference: {fileID: 0}
411 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
412 | propertyPath: m_LocalRotation.x
413 | value: 0.000000021855694
414 | objectReference: {fileID: 0}
415 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
416 | propertyPath: m_LocalRotation.y
417 | value: 0
418 | objectReference: {fileID: 0}
419 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
420 | propertyPath: m_LocalRotation.z
421 | value: -0
422 | objectReference: {fileID: 0}
423 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
424 | propertyPath: m_LocalRotation.w
425 | value: 1
426 | objectReference: {fileID: 0}
427 | - target: {fileID: 4000010319129062, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
428 | propertyPath: m_RootOrder
429 | value: 1
430 | objectReference: {fileID: 0}
431 | - target: {fileID: 23000010075245314, guid: 5fb901ed376616a4d800b32547cef664,
432 | type: 2}
433 | propertyPath: m_Materials.Array.data[0]
434 | value:
435 | objectReference: {fileID: 2100000, guid: 9b869f7e1c6bbce428bce3f664432840, type: 2}
436 | - target: {fileID: 1000012017197192, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
437 | propertyPath: m_IsActive
438 | value: 1
439 | objectReference: {fileID: 0}
440 | m_RemovedComponents: []
441 | m_ParentPrefab: {fileID: 100100000, guid: 5fb901ed376616a4d800b32547cef664, type: 2}
442 | m_RootGameObject: {fileID: 147505753}
443 | m_IsPrefabParent: 0
444 | --- !u!1001 &914115668
445 | Prefab:
446 | m_ObjectHideFlags: 0
447 | serializedVersion: 2
448 | m_Modification:
449 | m_TransformParent: {fileID: 0}
450 | m_Modifications:
451 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
452 | propertyPath: m_LocalPosition.x
453 | value: 0
454 | objectReference: {fileID: 0}
455 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
456 | propertyPath: m_LocalPosition.y
457 | value: 0
458 | objectReference: {fileID: 0}
459 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
460 | propertyPath: m_LocalPosition.z
461 | value: 0
462 | objectReference: {fileID: 0}
463 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
464 | propertyPath: m_LocalRotation.x
465 | value: 0
466 | objectReference: {fileID: 0}
467 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
468 | propertyPath: m_LocalRotation.y
469 | value: 0
470 | objectReference: {fileID: 0}
471 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
472 | propertyPath: m_LocalRotation.z
473 | value: 0
474 | objectReference: {fileID: 0}
475 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
476 | propertyPath: m_LocalRotation.w
477 | value: 1
478 | objectReference: {fileID: 0}
479 | - target: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
480 | propertyPath: m_RootOrder
481 | value: 0
482 | objectReference: {fileID: 0}
483 | - target: {fileID: 1000012052562494, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
484 | propertyPath: m_IsActive
485 | value: 1
486 | objectReference: {fileID: 0}
487 | - target: {fileID: 20000011723007962, guid: 82af4827fee368e4c83d72a25f533a4e,
488 | type: 2}
489 | propertyPath: m_RenderingPath
490 | value: 3
491 | objectReference: {fileID: 0}
492 | - target: {fileID: 108000010494217588, guid: 82af4827fee368e4c83d72a25f533a4e,
493 | type: 2}
494 | propertyPath: m_Intensity
495 | value: 1
496 | objectReference: {fileID: 0}
497 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
498 | propertyPath: m_LocalRotation.x
499 | value: 0.5657461
500 | objectReference: {fileID: 0}
501 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
502 | propertyPath: m_LocalRotation.y
503 | value: -0.6497076
504 | objectReference: {fileID: 0}
505 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
506 | propertyPath: m_LocalRotation.z
507 | value: 0.50764865
508 | objectReference: {fileID: 0}
509 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
510 | propertyPath: m_LocalRotation.w
511 | value: -0.010207292
512 | objectReference: {fileID: 0}
513 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
514 | propertyPath: m_LocalEulerAnglesHint.x
515 | value: 40.398003
516 | objectReference: {fileID: 0}
517 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
518 | propertyPath: m_LocalEulerAnglesHint.y
519 | value: -230.50299
520 | objectReference: {fileID: 0}
521 | - target: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
522 | propertyPath: m_LocalEulerAnglesHint.z
523 | value: -101.786
524 | objectReference: {fileID: 0}
525 | m_RemovedComponents: []
526 | m_ParentPrefab: {fileID: 100100000, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
527 | m_RootGameObject: {fileID: 1730097074}
528 | m_IsPrefabParent: 0
529 | --- !u!1 &1140150142
530 | GameObject:
531 | m_ObjectHideFlags: 0
532 | m_PrefabParentObject: {fileID: 0}
533 | m_PrefabInternal: {fileID: 0}
534 | serializedVersion: 5
535 | m_Component:
536 | - component: {fileID: 1140150146}
537 | - component: {fileID: 1140150145}
538 | - component: {fileID: 1140150144}
539 | - component: {fileID: 1140150143}
540 | m_Layer: 0
541 | m_Name: Cube
542 | m_TagString: Untagged
543 | m_Icon: {fileID: 0}
544 | m_NavMeshLayer: 0
545 | m_StaticEditorFlags: 0
546 | m_IsActive: 1
547 | --- !u!23 &1140150143
548 | MeshRenderer:
549 | m_ObjectHideFlags: 0
550 | m_PrefabParentObject: {fileID: 0}
551 | m_PrefabInternal: {fileID: 0}
552 | m_GameObject: {fileID: 1140150142}
553 | m_Enabled: 1
554 | m_CastShadows: 1
555 | m_ReceiveShadows: 1
556 | m_MotionVectors: 1
557 | m_LightProbeUsage: 1
558 | m_ReflectionProbeUsage: 1
559 | m_Materials:
560 | - {fileID: 2100000, guid: 959046c714828cc479babecfa0878fe9, type: 2}
561 | m_StaticBatchInfo:
562 | firstSubMesh: 0
563 | subMeshCount: 0
564 | m_StaticBatchRoot: {fileID: 0}
565 | m_ProbeAnchor: {fileID: 0}
566 | m_LightProbeVolumeOverride: {fileID: 0}
567 | m_ScaleInLightmap: 1
568 | m_PreserveUVs: 1
569 | m_IgnoreNormalsForChartDetection: 0
570 | m_ImportantGI: 0
571 | m_SelectedEditorRenderState: 3
572 | m_MinimumChartSize: 4
573 | m_AutoUVMaxDistance: 0.5
574 | m_AutoUVMaxAngle: 89
575 | m_LightmapParameters: {fileID: 0}
576 | m_SortingLayerID: 0
577 | m_SortingLayer: 0
578 | m_SortingOrder: 0
579 | --- !u!65 &1140150144
580 | BoxCollider:
581 | m_ObjectHideFlags: 0
582 | m_PrefabParentObject: {fileID: 0}
583 | m_PrefabInternal: {fileID: 0}
584 | m_GameObject: {fileID: 1140150142}
585 | m_Material: {fileID: 0}
586 | m_IsTrigger: 0
587 | m_Enabled: 1
588 | serializedVersion: 2
589 | m_Size: {x: 1, y: 1, z: 1}
590 | m_Center: {x: 0, y: 0, z: 0}
591 | --- !u!33 &1140150145
592 | MeshFilter:
593 | m_ObjectHideFlags: 0
594 | m_PrefabParentObject: {fileID: 0}
595 | m_PrefabInternal: {fileID: 0}
596 | m_GameObject: {fileID: 1140150142}
597 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
598 | --- !u!4 &1140150146
599 | Transform:
600 | m_ObjectHideFlags: 0
601 | m_PrefabParentObject: {fileID: 0}
602 | m_PrefabInternal: {fileID: 0}
603 | m_GameObject: {fileID: 1140150142}
604 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
605 | m_LocalPosition: {x: 1.04, y: 1.41, z: -2.65}
606 | m_LocalScale: {x: 2.9074848, y: 3.6474047, z: 1}
607 | m_Children: []
608 | m_Father: {fileID: 0}
609 | m_RootOrder: 2
610 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
611 | --- !u!1 &1166626484
612 | GameObject:
613 | m_ObjectHideFlags: 0
614 | m_PrefabParentObject: {fileID: 125776, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
615 | m_PrefabInternal: {fileID: 914115668}
616 | serializedVersion: 5
617 | m_Component:
618 | - component: {fileID: 1166626485}
619 | - component: {fileID: 1166626488}
620 | - component: {fileID: 1166626487}
621 | - component: {fileID: 1166626486}
622 | m_Layer: 0
623 | m_Name: CalibrationWallRearRight
624 | m_TagString: Untagged
625 | m_Icon: {fileID: 0}
626 | m_NavMeshLayer: 0
627 | m_StaticEditorFlags: 4294967295
628 | m_IsActive: 1
629 | --- !u!4 &1166626485
630 | Transform:
631 | m_ObjectHideFlags: 0
632 | m_PrefabParentObject: {fileID: 494730, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
633 | m_PrefabInternal: {fileID: 914115668}
634 | m_GameObject: {fileID: 1166626484}
635 | m_LocalRotation: {x: 0.5, y: 0.5, z: -0.5000001, w: 0.49999994}
636 | m_LocalPosition: {x: -2.5, y: 2.5, z: 0}
637 | m_LocalScale: {x: 0.5, y: 1, z: 0.49999997}
638 | m_Children: []
639 | m_Father: {fileID: 142643310}
640 | m_RootOrder: 1
641 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
642 | --- !u!23 &1166626486
643 | MeshRenderer:
644 | m_ObjectHideFlags: 0
645 | m_PrefabParentObject: {fileID: 2304408, guid: 82af4827fee368e4c83d72a25f533a4e,
646 | type: 2}
647 | m_PrefabInternal: {fileID: 914115668}
648 | m_GameObject: {fileID: 1166626484}
649 | m_Enabled: 1
650 | m_CastShadows: 1
651 | m_ReceiveShadows: 1
652 | m_MotionVectors: 1
653 | m_LightProbeUsage: 1
654 | m_ReflectionProbeUsage: 0
655 | m_Materials:
656 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
657 | m_StaticBatchInfo:
658 | firstSubMesh: 0
659 | subMeshCount: 0
660 | m_StaticBatchRoot: {fileID: 0}
661 | m_ProbeAnchor: {fileID: 0}
662 | m_LightProbeVolumeOverride: {fileID: 0}
663 | m_ScaleInLightmap: 1
664 | m_PreserveUVs: 0
665 | m_IgnoreNormalsForChartDetection: 0
666 | m_ImportantGI: 0
667 | m_SelectedEditorRenderState: 3
668 | m_MinimumChartSize: 4
669 | m_AutoUVMaxDistance: 0.5
670 | m_AutoUVMaxAngle: 89
671 | m_LightmapParameters: {fileID: 0}
672 | m_SortingLayerID: 0
673 | m_SortingLayer: 0
674 | m_SortingOrder: 0
675 | --- !u!64 &1166626487
676 | MeshCollider:
677 | m_ObjectHideFlags: 0
678 | m_PrefabParentObject: {fileID: 6442406, guid: 82af4827fee368e4c83d72a25f533a4e,
679 | type: 2}
680 | m_PrefabInternal: {fileID: 914115668}
681 | m_GameObject: {fileID: 1166626484}
682 | m_Material: {fileID: 0}
683 | m_IsTrigger: 0
684 | m_Enabled: 1
685 | serializedVersion: 2
686 | m_Convex: 0
687 | m_InflateMesh: 0
688 | m_SkinWidth: 0.01
689 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
690 | --- !u!33 &1166626488
691 | MeshFilter:
692 | m_ObjectHideFlags: 0
693 | m_PrefabParentObject: {fileID: 3378452, guid: 82af4827fee368e4c83d72a25f533a4e,
694 | type: 2}
695 | m_PrefabInternal: {fileID: 914115668}
696 | m_GameObject: {fileID: 1166626484}
697 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
698 | --- !u!1 &1527571117
699 | GameObject:
700 | m_ObjectHideFlags: 0
701 | m_PrefabParentObject: {fileID: 1000011652330946, guid: 82af4827fee368e4c83d72a25f533a4e,
702 | type: 2}
703 | m_PrefabInternal: {fileID: 914115668}
704 | serializedVersion: 5
705 | m_Component:
706 | - component: {fileID: 1527571118}
707 | - component: {fileID: 1527571123}
708 | - component: {fileID: 1527571122}
709 | - component: {fileID: 1527571121}
710 | - component: {fileID: 1527571120}
711 | - component: {fileID: 1527571119}
712 | m_Layer: 0
713 | m_Name: Main Camera
714 | m_TagString: MainCamera
715 | m_Icon: {fileID: 0}
716 | m_NavMeshLayer: 0
717 | m_StaticEditorFlags: 0
718 | m_IsActive: 1
719 | --- !u!4 &1527571118
720 | Transform:
721 | m_ObjectHideFlags: 0
722 | m_PrefabParentObject: {fileID: 4000011252882896, guid: 82af4827fee368e4c83d72a25f533a4e,
723 | type: 2}
724 | m_PrefabInternal: {fileID: 914115668}
725 | m_GameObject: {fileID: 1527571117}
726 | m_LocalRotation: {x: -0.0964301, y: 0.90356946, z: -0.29473457, w: -0.29562664}
727 | m_LocalPosition: {x: 2.93, y: 3.9299998, z: 3.9800003}
728 | m_LocalScale: {x: 1, y: 1, z: 1}
729 | m_Children: []
730 | m_Father: {fileID: 1730097075}
731 | m_RootOrder: 3
732 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
733 | --- !u!114 &1527571119
734 | MonoBehaviour:
735 | m_ObjectHideFlags: 0
736 | m_PrefabParentObject: {fileID: 0}
737 | m_PrefabInternal: {fileID: 0}
738 | m_GameObject: {fileID: 1527571117}
739 | m_Enabled: 1
740 | m_EditorHideFlags: 0
741 | m_Script: {fileID: 11500000, guid: 609a343303ee93443b246291d3a836db, type: 3}
742 | m_Name:
743 | m_EditorClassIdentifier:
744 | blurShader: {fileID: 4800000, guid: e0aaa946d1793b44eb66b5594bdca958, type: 3}
745 | --- !u!81 &1527571120
746 | AudioListener:
747 | m_ObjectHideFlags: 0
748 | m_PrefabParentObject: {fileID: 81000011721023192, guid: 82af4827fee368e4c83d72a25f533a4e,
749 | type: 2}
750 | m_PrefabInternal: {fileID: 914115668}
751 | m_GameObject: {fileID: 1527571117}
752 | m_Enabled: 1
753 | --- !u!124 &1527571121
754 | Behaviour:
755 | m_ObjectHideFlags: 0
756 | m_PrefabParentObject: {fileID: 124000011119698828, guid: 82af4827fee368e4c83d72a25f533a4e,
757 | type: 2}
758 | m_PrefabInternal: {fileID: 914115668}
759 | m_GameObject: {fileID: 1527571117}
760 | m_Enabled: 1
761 | --- !u!92 &1527571122
762 | Behaviour:
763 | m_ObjectHideFlags: 0
764 | m_PrefabParentObject: {fileID: 92000012839854994, guid: 82af4827fee368e4c83d72a25f533a4e,
765 | type: 2}
766 | m_PrefabInternal: {fileID: 914115668}
767 | m_GameObject: {fileID: 1527571117}
768 | m_Enabled: 1
769 | --- !u!20 &1527571123
770 | Camera:
771 | m_ObjectHideFlags: 0
772 | m_PrefabParentObject: {fileID: 20000011723007962, guid: 82af4827fee368e4c83d72a25f533a4e,
773 | type: 2}
774 | m_PrefabInternal: {fileID: 914115668}
775 | m_GameObject: {fileID: 1527571117}
776 | m_Enabled: 1
777 | serializedVersion: 2
778 | m_ClearFlags: 1
779 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
780 | m_NormalizedViewPortRect:
781 | serializedVersion: 2
782 | x: 0
783 | y: 0
784 | width: 1
785 | height: 1
786 | near clip plane: 0.3
787 | far clip plane: 1000
788 | field of view: 60
789 | orthographic: 0
790 | orthographic size: 5
791 | m_Depth: -1
792 | m_CullingMask:
793 | serializedVersion: 2
794 | m_Bits: 4294967295
795 | m_RenderingPath: 3
796 | m_TargetTexture: {fileID: 0}
797 | m_TargetDisplay: 0
798 | m_TargetEye: 3
799 | m_HDR: 0
800 | m_AllowMSAA: 1
801 | m_ForceIntoRT: 0
802 | m_OcclusionCulling: 1
803 | m_StereoConvergence: 10
804 | m_StereoSeparation: 0.022
805 | m_StereoMirrorMode: 0
806 | --- !u!1 &1542817991
807 | GameObject:
808 | m_ObjectHideFlags: 0
809 | m_PrefabParentObject: {fileID: 100002, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
810 | m_PrefabInternal: {fileID: 914115668}
811 | serializedVersion: 5
812 | m_Component:
813 | - component: {fileID: 1542817992}
814 | - component: {fileID: 1542817995}
815 | - component: {fileID: 1542817994}
816 | - component: {fileID: 1542817993}
817 | m_Layer: 0
818 | m_Name: CalibrationWallFrontLeft
819 | m_TagString: Untagged
820 | m_Icon: {fileID: 0}
821 | m_NavMeshLayer: 0
822 | m_StaticEditorFlags: 4294967295
823 | m_IsActive: 1
824 | --- !u!4 &1542817992
825 | Transform:
826 | m_ObjectHideFlags: 0
827 | m_PrefabParentObject: {fileID: 400002, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
828 | m_PrefabInternal: {fileID: 914115668}
829 | m_GameObject: {fileID: 1542817991}
830 | m_LocalRotation: {x: 0.5000003, y: -0.5000001, z: -0.49999964, w: -0.50000006}
831 | m_LocalPosition: {x: 2.4999998, y: 2.5, z: 0}
832 | m_LocalScale: {x: 0.4999999, y: 1, z: 0.4999999}
833 | m_Children: []
834 | m_Father: {fileID: 142643310}
835 | m_RootOrder: 2
836 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
837 | --- !u!23 &1542817993
838 | MeshRenderer:
839 | m_ObjectHideFlags: 0
840 | m_PrefabParentObject: {fileID: 2300002, guid: 82af4827fee368e4c83d72a25f533a4e,
841 | type: 2}
842 | m_PrefabInternal: {fileID: 914115668}
843 | m_GameObject: {fileID: 1542817991}
844 | m_Enabled: 1
845 | m_CastShadows: 1
846 | m_ReceiveShadows: 1
847 | m_MotionVectors: 1
848 | m_LightProbeUsage: 1
849 | m_ReflectionProbeUsage: 0
850 | m_Materials:
851 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
852 | m_StaticBatchInfo:
853 | firstSubMesh: 0
854 | subMeshCount: 0
855 | m_StaticBatchRoot: {fileID: 0}
856 | m_ProbeAnchor: {fileID: 0}
857 | m_LightProbeVolumeOverride: {fileID: 0}
858 | m_ScaleInLightmap: 1
859 | m_PreserveUVs: 0
860 | m_IgnoreNormalsForChartDetection: 0
861 | m_ImportantGI: 0
862 | m_SelectedEditorRenderState: 3
863 | m_MinimumChartSize: 4
864 | m_AutoUVMaxDistance: 0.5
865 | m_AutoUVMaxAngle: 89
866 | m_LightmapParameters: {fileID: 0}
867 | m_SortingLayerID: 0
868 | m_SortingLayer: 0
869 | m_SortingOrder: 0
870 | --- !u!64 &1542817994
871 | MeshCollider:
872 | m_ObjectHideFlags: 0
873 | m_PrefabParentObject: {fileID: 6400002, guid: 82af4827fee368e4c83d72a25f533a4e,
874 | type: 2}
875 | m_PrefabInternal: {fileID: 914115668}
876 | m_GameObject: {fileID: 1542817991}
877 | m_Material: {fileID: 0}
878 | m_IsTrigger: 0
879 | m_Enabled: 1
880 | serializedVersion: 2
881 | m_Convex: 0
882 | m_InflateMesh: 0
883 | m_SkinWidth: 0.01
884 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
885 | --- !u!33 &1542817995
886 | MeshFilter:
887 | m_ObjectHideFlags: 0
888 | m_PrefabParentObject: {fileID: 3300002, guid: 82af4827fee368e4c83d72a25f533a4e,
889 | type: 2}
890 | m_PrefabInternal: {fileID: 914115668}
891 | m_GameObject: {fileID: 1542817991}
892 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
893 | --- !u!1 &1730097074
894 | GameObject:
895 | m_ObjectHideFlags: 0
896 | m_PrefabParentObject: {fileID: 100004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
897 | m_PrefabInternal: {fileID: 914115668}
898 | serializedVersion: 5
899 | m_Component:
900 | - component: {fileID: 1730097075}
901 | m_Layer: 0
902 | m_Name: SceneElements
903 | m_TagString: Untagged
904 | m_Icon: {fileID: 0}
905 | m_NavMeshLayer: 0
906 | m_StaticEditorFlags: 4294967295
907 | m_IsActive: 1
908 | --- !u!4 &1730097075
909 | Transform:
910 | m_ObjectHideFlags: 0
911 | m_PrefabParentObject: {fileID: 400004, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
912 | m_PrefabInternal: {fileID: 914115668}
913 | m_GameObject: {fileID: 1730097074}
914 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
915 | m_LocalPosition: {x: 0, y: 0, z: 0}
916 | m_LocalScale: {x: 1, y: 1, z: 1}
917 | m_Children:
918 | - {fileID: 2135196171}
919 | - {fileID: 142643310}
920 | - {fileID: 1870111270}
921 | - {fileID: 1527571118}
922 | m_Father: {fileID: 0}
923 | m_RootOrder: 0
924 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
925 | --- !u!1 &1870111269
926 | GameObject:
927 | m_ObjectHideFlags: 0
928 | m_PrefabParentObject: {fileID: 1000012052562494, guid: 82af4827fee368e4c83d72a25f533a4e,
929 | type: 2}
930 | m_PrefabInternal: {fileID: 914115668}
931 | serializedVersion: 5
932 | m_Component:
933 | - component: {fileID: 1870111270}
934 | - component: {fileID: 1870111271}
935 | m_Layer: 0
936 | m_Name: Directional Light
937 | m_TagString: Untagged
938 | m_Icon: {fileID: 0}
939 | m_NavMeshLayer: 0
940 | m_StaticEditorFlags: 4294967295
941 | m_IsActive: 1
942 | --- !u!4 &1870111270
943 | Transform:
944 | m_ObjectHideFlags: 0
945 | m_PrefabParentObject: {fileID: 4000010075728302, guid: 82af4827fee368e4c83d72a25f533a4e,
946 | type: 2}
947 | m_PrefabInternal: {fileID: 914115668}
948 | m_GameObject: {fileID: 1870111269}
949 | m_LocalRotation: {x: 0.5657461, y: -0.6497076, z: 0.50764865, w: -0.010207292}
950 | m_LocalPosition: {x: 0, y: 11.01, z: 0}
951 | m_LocalScale: {x: 1, y: 1, z: 1}
952 | m_Children: []
953 | m_Father: {fileID: 1730097075}
954 | m_RootOrder: 2
955 | m_LocalEulerAnglesHint: {x: 40.398003, y: -230.50299, z: -101.786}
956 | --- !u!108 &1870111271
957 | Light:
958 | m_ObjectHideFlags: 0
959 | m_PrefabParentObject: {fileID: 108000010494217588, guid: 82af4827fee368e4c83d72a25f533a4e,
960 | type: 2}
961 | m_PrefabInternal: {fileID: 914115668}
962 | m_GameObject: {fileID: 1870111269}
963 | m_Enabled: 1
964 | serializedVersion: 8
965 | m_Type: 1
966 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
967 | m_Intensity: 1
968 | m_Range: 10
969 | m_SpotAngle: 30
970 | m_CookieSize: 10
971 | m_Shadows:
972 | m_Type: 2
973 | m_Resolution: -1
974 | m_CustomResolution: -1
975 | m_Strength: 1
976 | m_Bias: 0.05
977 | m_NormalBias: 0.4
978 | m_NearPlane: 0.2
979 | m_Cookie: {fileID: 0}
980 | m_DrawHalo: 0
981 | m_Flare: {fileID: 0}
982 | m_RenderMode: 0
983 | m_CullingMask:
984 | serializedVersion: 2
985 | m_Bits: 4294967295
986 | m_Lightmapping: 4
987 | m_AreaSize: {x: 1, y: 1}
988 | m_BounceIntensity: 1
989 | m_ColorTemperature: 6570
990 | m_UseColorTemperature: 0
991 | m_ShadowRadius: 0
992 | m_ShadowAngle: 0
993 | --- !u!1 &2135196170
994 | GameObject:
995 | m_ObjectHideFlags: 0
996 | m_PrefabParentObject: {fileID: 100006, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
997 | m_PrefabInternal: {fileID: 914115668}
998 | serializedVersion: 5
999 | m_Component:
1000 | - component: {fileID: 2135196171}
1001 | - component: {fileID: 2135196174}
1002 | - component: {fileID: 2135196173}
1003 | - component: {fileID: 2135196172}
1004 | m_Layer: 0
1005 | m_Name: CalibrationFloor
1006 | m_TagString: Untagged
1007 | m_Icon: {fileID: 0}
1008 | m_NavMeshLayer: 0
1009 | m_StaticEditorFlags: 4294967295
1010 | m_IsActive: 1
1011 | --- !u!4 &2135196171
1012 | Transform:
1013 | m_ObjectHideFlags: 0
1014 | m_PrefabParentObject: {fileID: 400006, guid: 82af4827fee368e4c83d72a25f533a4e, type: 2}
1015 | m_PrefabInternal: {fileID: 914115668}
1016 | m_GameObject: {fileID: 2135196170}
1017 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
1018 | m_LocalPosition: {x: 0, y: 0, z: 0}
1019 | m_LocalScale: {x: 1.2378925, y: 2.4757829, z: 1.2378914}
1020 | m_Children: []
1021 | m_Father: {fileID: 1730097075}
1022 | m_RootOrder: 0
1023 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1024 | --- !u!23 &2135196172
1025 | MeshRenderer:
1026 | m_ObjectHideFlags: 0
1027 | m_PrefabParentObject: {fileID: 2300004, guid: 82af4827fee368e4c83d72a25f533a4e,
1028 | type: 2}
1029 | m_PrefabInternal: {fileID: 914115668}
1030 | m_GameObject: {fileID: 2135196170}
1031 | m_Enabled: 1
1032 | m_CastShadows: 1
1033 | m_ReceiveShadows: 1
1034 | m_MotionVectors: 1
1035 | m_LightProbeUsage: 1
1036 | m_ReflectionProbeUsage: 0
1037 | m_Materials:
1038 | - {fileID: 2100000, guid: da2c233b59617744588b18235eda5f56, type: 2}
1039 | m_StaticBatchInfo:
1040 | firstSubMesh: 0
1041 | subMeshCount: 0
1042 | m_StaticBatchRoot: {fileID: 0}
1043 | m_ProbeAnchor: {fileID: 0}
1044 | m_LightProbeVolumeOverride: {fileID: 0}
1045 | m_ScaleInLightmap: 1
1046 | m_PreserveUVs: 0
1047 | m_IgnoreNormalsForChartDetection: 0
1048 | m_ImportantGI: 0
1049 | m_SelectedEditorRenderState: 3
1050 | m_MinimumChartSize: 4
1051 | m_AutoUVMaxDistance: 0.5
1052 | m_AutoUVMaxAngle: 89
1053 | m_LightmapParameters: {fileID: 0}
1054 | m_SortingLayerID: 0
1055 | m_SortingLayer: 0
1056 | m_SortingOrder: 0
1057 | --- !u!64 &2135196173
1058 | MeshCollider:
1059 | m_ObjectHideFlags: 0
1060 | m_PrefabParentObject: {fileID: 6400004, guid: 82af4827fee368e4c83d72a25f533a4e,
1061 | type: 2}
1062 | m_PrefabInternal: {fileID: 914115668}
1063 | m_GameObject: {fileID: 2135196170}
1064 | m_Material: {fileID: 0}
1065 | m_IsTrigger: 0
1066 | m_Enabled: 1
1067 | serializedVersion: 2
1068 | m_Convex: 0
1069 | m_InflateMesh: 0
1070 | m_SkinWidth: 0.01
1071 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
1072 | --- !u!33 &2135196174
1073 | MeshFilter:
1074 | m_ObjectHideFlags: 0
1075 | m_PrefabParentObject: {fileID: 3300004, guid: 82af4827fee368e4c83d72a25f533a4e,
1076 | type: 2}
1077 | m_PrefabInternal: {fileID: 914115668}
1078 | m_GameObject: {fileID: 2135196170}
1079 | m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
1080 |
--------------------------------------------------------------------------------
/_CommandBufferRefractionCheaper.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a2885974aad98184b904687c4811c730
3 | timeCreated: 1506193363
4 | licenseType: Pro
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------