' M…'@5.0.0f4ţ˙˙˙0˘ńŠ…Ű‚’Ő?Ąîđ[î Ł7€˙˙˙˙€Ś€˛€Ő€ ހ.€&†€Ä€ ހ.€&H€Ť€˙˙˙˙€1€1€˙˙˙˙ @ހ€ Q€j€ H€ę€˙˙˙˙ €1€1€˙˙˙˙ @ހ€Q€j€H€/˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€Ő€:˙˙˙˙1€1€˙˙˙˙ހ€Ij€ ހ.€&L€V@€f˙˙˙˙€1€1€˙˙˙˙€ހ€mj€˙˙˙˙€H€y˙˙˙˙€1€1€˙˙˙˙ @ހ€!Q€j€"H€˙˙˙˙#€1€1€˙˙˙˙$@ހ€%Q€j€&H€˙˙˙˙'€1€1€˙˙˙˙(@ހ€)Q€j€*ހ•+ހŚ,L€Ť-L€ł.@ń€Ŕ˙˙˙˙/€1€1€˙˙˙˙0€ހ€1€j€˙˙˙˙2€H€›€˙˙˙˙3€1€1€˙˙˙˙4@ހ€5Q€j€6°€ € 7ހ8.€&9Ňč˙˙˙˙:€ń€ö˙˙˙˙;€1€1€˙˙˙˙<€ހ€=€j€˙˙˙˙>€ހ›€? €˙˙˙˙@€H€˙˙˙˙A€1€1€˙˙˙˙B@ހ€CQ€j€DH€˙˙˙˙E€1€1€˙˙˙˙F@ހ€GQ€j€HŚ€"IŚ€1J=EK €TL €]M €fN €oO €xP €Q €ŠR €“S €œT €ĽU €ŽV €¸W €ÂX €ĚY €ÖZ €ŕ[L€ę\L€ó]@Ő€˙˙˙˙˙^€1€1€˙˙˙˙_€ހ€`Ő€j€˙˙˙˙a€ 1€1€˙˙˙˙b€ ހ€c H€j€˙˙˙˙d€ 1€1€˙˙˙˙e@ ހ€f Q€j€gŐ€˙˙˙˙h€1€1€˙˙˙˙i€ހ€jŐ€j€˙˙˙˙k€ 1€1€˙˙˙˙l€ ހ€m H€j€˙˙˙˙n€ 1€1€˙˙˙˙o@ ހ€p Q€j€qŐ€˙˙˙˙r€1€1€˙˙˙˙s€ހ€tŐ€j€˙˙˙˙u€ 1€1€˙˙˙˙v€ ހ€w H€j€˙˙˙˙x€ 1€1€˙˙˙˙y@ ހ€z Q€j€{Ő€/˙˙˙˙|€1€1€˙˙˙˙}€ހ€~Ő€j€˙˙˙˙€ 1€1€˙˙˙˙€€ ހ€ H€j€˙˙˙˙‚€ 1€1€˙˙˙˙ƒ@ ހ€„ Q€j€…Ő€?˙˙˙˙†€1€1€˙˙˙˙‡€ހ€ˆŐ€j€˙˙˙˙‰€ 1€1€˙˙˙˙Š€ ހ€‹ H€j€˙˙˙˙Œ€ 1€1€˙˙˙˙@ ހ€Ž Q€j€Ő€O˙˙˙˙€1€1€˙˙˙˙‘€ހ€’Ő€j€˙˙˙˙“€ 1€1€˙˙˙˙”€ ހ€• H€j€˙˙˙˙–€ 1€1€˙˙˙˙—@ ހ€˜ Q€j€™Ő€_˙˙˙˙š€1€1€˙˙˙˙›€ހ€œŐ€j€˙˙˙˙€ 1€1€˙˙˙˙ž€ ހ€Ÿ H€j€˙˙˙˙ € 1€1€˙˙˙˙Ą@ ހ€˘ Q€j€ŁŐ€r˙˙˙˙¤€1€1€˙˙˙˙Ľ€ހ€ŚŐ€j€˙˙˙˙§€ 1€1€˙˙˙˙¨€ ހ€Š H€j€˙˙˙˙Ş€ 1€1€˙˙˙˙Ť@ ހ€Ź Q€j€­Ő€…˙˙˙˙Ž€1€1€˙˙˙˙Ż€ހ€°Ő€j€˙˙˙˙ą€ 1€1€˙˙˙˙˛€ ހ€ł H€j€˙˙˙˙´€ 1€1€˙˙˙˙ľ@ ހ€ś Q€j€ˇŐ€˜˙˙˙˙¸€1€1€˙˙˙˙š€ހ€şŐ€j€˙˙˙˙ť€ 1€1€˙˙˙˙ź€ ހ€˝ H€j€˙˙˙˙ž€ 1€1€˙˙˙˙ż@ ހ€Ŕ Q€j€ÁŐ€Ť˙˙˙˙€1€1€˙˙˙˙Ă€ހ€ÄŐ€j€˙˙˙˙Ĺ€ 1€1€˙˙˙˙Ć€ ހ€Ç H€j€˙˙˙˙Č€ 1€1€˙˙˙˙É@ ހ€Ę Q€j€ËŐ€ž˙˙˙˙Ě€1€1€˙˙˙˙Í€ހ€ÎŐ€j€˙˙˙˙Ď€ 1€1€˙˙˙˙Đ€ ހ€Ń H€j€˙˙˙˙Ň€ 1€1€˙˙˙˙Ó@ ހ€Ô Q€j€ŐހŃÖŐ€Ú˙˙˙˙×€1€1€˙˙˙˙Ř€ހ€ŮH€j€˙˙˙˙Ú€ 1€1€˙˙˙˙Ű@ ހ€Ü Q€j€ÝŐ€ě˙˙˙˙Ţ€1€1€˙˙˙˙߀ހ€ŕH€j€˙˙˙˙ဠ1€1€˙˙˙˙â@ ހ€ă Q€j€äŐ€ţ˙˙˙˙ĺ€1€1€˙˙˙˙ć€ހ€çH€j€˙˙˙˙č€ 1€1€˙˙˙˙é@ ހ€ę Q€j€ëŐ€˙˙˙˙ě€1€1€˙˙˙˙í€ހ€îH€j€˙˙˙˙ď€ 1€1€˙˙˙˙đ@ ހ€ń Q€j€ňŐ€"˙˙˙˙ó€1€1€˙˙˙˙ô€ހ€őH€j€˙˙˙˙ö€ 1€1€˙˙˙˙÷@ ހ€ř Q€j€ůŐ€4˙˙˙˙ú€1€1€˙˙˙˙ű€ހ€üH€j€˙˙˙˙ý€ 1€1€˙˙˙˙ţ@ ހ€˙ Q€j€H€F˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€H€`˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€Ś€r L€ ShaderPPtrm_FileIDm_PathIDm_PathNamem_DependenciesPPtrm_ShaderIsBakederrorsShaderErrormessagemessageDetailsfilecompilerPlatformlinewarningprogramErrorm_DefaultTexturesShaderCompilationInfom_CompileInfom_SnippetsShaderSnippetm_Codem_AssetPathm_PlatformMaskm_TypesMaskHash128m_IncludesHashbytes[0]bytes[1]bytes[2]bytes[3]bytes[4]bytes[5]bytes[6]bytes[7]bytes[8]bytes[9]bytes[10]bytes[11]bytes[12]bytes[13]bytes[14]bytes[15]m_IsGLSLm_FromOtherm_VariantsUser0m_VariantsUser1m_VariantsUser2m_VariantsUser3m_VariantsUser4m_VariantsUser5m_VariantsBuiltin0m_VariantsBuiltin1m_VariantsBuiltin2m_VariantsBuiltin3m_VariantsBuiltin4m_VariantsBuiltin5m_Targetm_TargetVariants0m_TargetVariants1m_TargetVariants2m_TargetVariants3m_TargetVariants4m_TargetVariants5m_NonStrippedUserKeywordsm_BuiltinKeywordsm_MeshComponentsFromSnippetsm_HasSurfaceShadersď2ƒ…>”KËĽŁMźHîÁƒ#{7€˙˙˙˙€Ś€˛€Ő€ ހ%.€.†€Ä€ ހ%.€.H€Ť€˙˙˙˙€1€1€˙˙˙˙ @ހ€ Q€j€ Ő€7˙˙˙˙ Ŕ1€1€˙˙˙˙ €ހ€€j€˙˙˙˙€H€›€˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€°€ € ހ%.€.H€I˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€H€T˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€H€f˙˙˙˙€1€1€˙˙˙˙ @ހ€!Q€j€"ShaderImporterPPtrm_FileIDm_PathIDm_DefaultTexturesm_UserDatam_AssetBundleNamem_AssetBundleVariantČ0ĹňĂôL.`?^Ů0D7€˙˙˙˙€Ś€˛€Ѐڀڀڀ#Ś€+H€3˙˙˙˙€1€1€˙˙˙˙@ހ€ Q€j€ ™€< Ś€H H€Z˙˙˙˙ €1€1€˙˙˙˙@ހ€Q€j€Ѐgڀڀڀ#Ś€+v~ € €– €Ÿ €¨ €ą €ş €Ă €Ě €Ő €Ţ  €ç! €ń" €ű# €$ €% €&Ő€#˙˙˙˙'€1€1€˙˙˙˙(€ހ€)H€j€˙˙˙˙*€1€1€˙˙˙˙+@ހ€,Q€j€-™€*.ހ8/AssetMetaDataguiddata[0]data[1]data[2]data[3]pathNametimeCreatedoriginalChangesetoriginalNameoriginalParentHash128originalDigestbytes[0]bytes[1]bytes[2]bytes[3]bytes[4]bytes[5]bytes[6]bytes[7]bytes[8]bytes[9]bytes[10]bytes[11]bytes[12]bytes[13]bytes[14]bytes[15]labelsassetStoreReflicenseType˙˙0ďď˙˙>IŔ…%00˙˙resources/unity_builtin_extra4ż Ú`gKź v™'7ďę5Assets/LeapMotion/Resources/LeapRGBUndistorted.shaderLeapRGBUndistortedÜShader "LeapMotion/LeapRGBUndistorted" { Properties { _Color ("Main Color (A=Opacity)", Color) = (1,1,1,1) _MainTex ("Base (A=Opacity)", 2D) = "" } SubShader { // Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"} Lighting Off Cull Off Zwrite Off Blend SrcAlpha OneMinusSrcAlpha Pass { GpuProgramID 40460 Program "vp" {} Program "fp" {} #LINE 170 #LINE 170 } } Fallback "Unlit/Texture" } *ŠŢ#line 14 "" #ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING #endif #include "HLSLSupport.cginc" #include "UnityShaderVariables.cginc" #line 14 "" #ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING #endif #pragma vertex vert #pragma fragment frag #pragma multi_compile_fog #include "UnityCG.cginc" struct appdata_t { float4 vertex : POSITION; float2 texcoord : TEXCOORD0; }; struct v2f { float4 vertex : SV_POSITION; half2 texcoord : TEXCOORD0; UNITY_FOG_COORDS(1) }; sampler2D _MainTex; float4 _MainTex_ST; v2f vert (appdata_t v) { v2f o; o.vertex = mul(UNITY_MATRIX_MVP, v.vertex); o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex); UNITY_TRANSFER_FOG(o,o.vertex); return o; } fixed4 frag (v2f i) : SV_Target { fixed4 col = tex2D(_MainTex, i.texcoord); UNITY_APPLY_FOG(i.fogCoord, col); UNITY_OPAQUE_ALPHA(col.a); return col; } "Assets/DefaultResourcesExtra/Unlit˙˙˙˙Fë4šg—Ś<ĺÇčÍŰä__ FOG_LINEARFOG_EXPFOG_EXP2__ FOG_LINEARFOG_EXPFOG_EXP2 SHADOWS_SOFTDIRLIGHTMAP_COMBINEDDIRLIGHTMAP_SEPARATEDYNAMICLIGHTMAP_ONFOG_EXP FOG_EXP2 FOG_LINEAR žű#line 13 "" #ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING #endif #include "HLSLSupport.cginc" #include "UnityShaderVariables.cginc" #line 13 "" #ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING #endif #pragma vertex vert #pragma fragment frag #include "UnityCG.cginc" #pragma target 3.0 #define MSIZE 5 uniform float _RayOffsetX; uniform float _RayOffsetY; uniform float _RayScaleX; uniform float _RayScaleY; uniform int _BlackIsTransparent; uniform float _GammaCorrection; uniform sampler2D _MainTex; uniform sampler2D _DistortX; uniform sampler2D _DistortY; uniform float4 _Color; float4 colorCorrect(float texImageX, float texImageY) { float width = 608.0; float height = 540.0; float mulitplier = 1.5; //float rscale = 1.23; //float gscale = 1.04; //float bscale = 0.73; float rscale = 1.5 * mulitplier; float gscale = 1.0 * mulitplier; float bscale = 0.5 * mulitplier; float corr_ir_g = 0.2; float corr_ir_rb = 0.2; float corr_r_b = 0.1; float corr_g_rb = 0.1; float2 r_offset = float2(0, -0.5); float2 g_offset = float2(0.5, -0.5); float2 b_offset = float2(0.5, 0); float2 texCoord = float2(texImageX, texImageY); float dx = 1.0/width; float dy = 1.0/height; float2 redOffset = float2(dx, dy)*r_offset; float2 greenOffset = float2(dx, dy)*g_offset; float2 blueOffset = float2(dx, dy)*b_offset; float4 input_lf; input_lf.a = tex2D(_MainTex, texCoord).r; // float ir_l = tex2D(_MainTex, texCoord + float2(-dx, 0)).r; // float ir_t = tex2D(_MainTex, texCoord + float2(0, -dy)).r; // float ir_r = tex2D(_MainTex, texCoord + float2(dx, 0)).r; // float ir_b = tex2D(_MainTex, texCoord + float2(0, dy)).r; // float ir_hf = iinput_lf.r - 0.25*(ir_l + ir_t + ir_r + ir_b); input_lf.r = tex2D(_MainTex, texCoord + redOffset).b; // float r_l = tex2D(_MainTex, texCoord + redOffset + float2(-dx, 0)).b; // float r_t = tex2D(_MainTex, texCoord + redOffset + float2(0, -dy)).b; // float r_r = tex2D(_MainTex, texCoord + redOffset + float2(dx, 0)).b; // float r_b = tex2D(_MainTex, texCoord + redOffset + float2(0, dy)).b; // float r_hf = input_lf.r - 0.25*(r_l + r_t + r_r + r_b); input_lf.g = tex2D(_MainTex, texCoord + greenOffset).a; // float g_l = tex2D(_MainTex, texCoord + greenOffset + float2(-dx, 0)).a; // float g_t = tex2D(_MainTex, texCoord + greenOffset + float2(0, -dy)).a; // float g_r = tex2D(_MainTex, texCoord + greenOffset + float2(dx, 0)).a; // float g_b = tex2D(_MainTex, texCoord + greenOffset + float2(0, dy)).a; // float g_hf = input_lf.g - 0.25*(g_l + g_t + g_r + g_b); input_lf.b = tex2D(_MainTex, texCoord + blueOffset).g; // float b_l = tex2D(_MainTex, texCoord + blueOffset + float2(-dx, 0)).g; // float b_t = tex2D(_MainTex, texCoord + blueOffset + float2(0, -dy)).g; // float b_r = tex2D(_MainTex, texCoord + blueOffset + float2(dx, 0)).g; // float b_b = tex2D(_MainTex, texCoord + blueOffset + float2(0, dy)).g; // float b_hf = input_lf.b - 0.25*(b_l + b_t + b_r + b_b); //float4x4 transformation = float4x4(5.6220, -1.5456, 0.3634, -0.1106, -1.6410, 3.1944, -1.7204, 0.0189, 0.1410, 0.4896, 10.8399, -0.1053, -3.7440, -1.9080, -8.6066, 1.0000); //float4x4 conservative = float4x4(5.6220, 0.0000, 0.3634, 0.0000, 0.0000, 3.1944, 0.0000, 0.0189, 0.1410, 0.4896, 10.8399, 0.0000, 0.0000, 0.0000, 0.0000, 1.0000); float4x4 transformation = float4x4(5.0670, -1.2312, 0.8625, -0.0507, -1.5210, 3.1104, -2.0194, 0.0017, -0.8310, -0.3000, 13.1744, -0.1052, -2.4540, -1.3848, -10.9618, 1.0000); float4x4 conservative = float4x4(5.0670, 0.0000, 0.8625, 0.0000, 0.0000, 3.1104, 0.0000, 0.0017, 0.0000, 0.0000, 13.1744, 0.0000, 0.0000, 0.0000, 0.0000, 1.0000); // input_lf = bilateral_a*bilateral(texCoord, input_lf) + (1-bilateral_a)*input_lf; // input_lf.r += ir_hf*corr_ir_rb + g_hf*corr_g_rb + b_hf*corr_r_b; // input_lf.g += ir_hf*corr_ir_g + r_hf*corr_g_rb + b_hf*corr_g_rb; // input_lf.b += ir_hf*corr_ir_rb + r_hf*corr_r_b + g_hf*corr_g_rb; float4 output_lf = mul(transpose(transformation), input_lf); float4 output_lf_fudge = mul(transpose(conservative), input_lf); //float4 output_lf_gray = gray*input_lf; float fudge_threshold = 0.5; //float ir_fudge_threshold = 0.95; //float ir_fudge_factor = 0.333*(input_lf.r + input_lf.g + input_lf.b); float rfudge = input_lf.r > fudge_threshold ? (input_lf.r - fudge_threshold)/(1.0 - fudge_threshold) : 0; float gfudge = input_lf.g > fudge_threshold ? (input_lf.g - fudge_threshold)/(1.0 - fudge_threshold) : 0; float bfudge = input_lf.b > fudge_threshold ? (input_lf.b - fudge_threshold)/(1.0 - fudge_threshold) : 0; //float irfudge = ir_fudge_factor > ir_fudge_threshold ? (ir_fudge_factor - ir_fudge_threshold)/(1.0 - ir_fudge_threshold) : 0; rfudge *= rfudge; gfudge *= gfudge; bfudge *= bfudge; //irfudge *= irfudge; float4 gl_FragColor; gl_FragColor.r = rfudge*output_lf_fudge.r + (1-rfudge)*output_lf.r; gl_FragColor.g = gfudge*output_lf_fudge.g + (1-gfudge)*output_lf.g; gl_FragColor.b = bfudge*output_lf_fudge.b + (1-bfudge)*output_lf.b; gl_FragColor.r *= rscale; gl_FragColor.g *= gscale; gl_FragColor.b *= bscale; //float avgrgb = 0.33333*(input_lf.r + input_lf.g + input_lf.b) - 0.9*input_lf.a; //float threshold = min(1, avgrgb*100); //threshold *= threshold; //gl_FragColor.rgb = output_lf_gray.rgb*(1 - threshold) + gl_FragColor.rgb*(threshold); float gamma = 1.0/_GammaCorrection; //gl_FragColor.rgb = show_ir > 0.5 ? float3(pow(ir_out, gamma)): pow(gl_FragColor.rgb, float3(gamma)); gl_FragColor = float4(pow(gl_FragColor.rgb, float(gamma)), 1.0); return gl_FragColor; } struct fragment_input{ float4 position : SV_POSITION; float2 uv : TEXCOORD0; }; fragment_input vert(appdata_img v) { fragment_input o; o.position = mul(UNITY_MATRIX_MVP, v.vertex); o.uv = MultiplyUV(UNITY_MATRIX_TEXTURE0, v.texcoord); return o; } float4 frag(fragment_input input) : COLOR { // Unwarp the point. Ray range is [-4, 4] X [-4, 4]. float2 ray = input.uv * float2(8.0, 8.0) - float2(4.0, 4.0); float2 texDist = float2(_RayOffsetX, _RayOffsetY) + ray * float2(_RayScaleX, _RayScaleY); // Decode X and Y position floats from RGBA and rescale to [-0.6, 1.7). float texImageX = DecodeFloatRGBA(tex2D(_DistortX, texDist)); texImageX = texImageX * 2.3 - 0.6; float texImageY = DecodeFloatRGBA(tex2D(_DistortY, texDist)); texImageY = texImageY * 2.3 - 0.6; return colorCorrect(texImageX, texImageY); } Assets/LeapMotion/Resources˙˙˙˙Fë4šg—Ś<ĺÇčÍŰä SHADOWS_SOFTDIRLIGHTMAP_COMBINEDDIRLIGHTMAP_SEPARATEDYNAMICLIGHTMAP_ON