diff --git a/.gitmodules b/.gitmodules index ad708eb..f506487 100644 --- a/.gitmodules +++ b/.gitmodules @@ -31,3 +31,6 @@ [submodule "_Package/com.ultracombos.tuio"] path = _Package/com.ultracombos.tuio url = https://github.com/UltraCombos/com.ultracombos.tuio +[submodule "_Package/jp.keijiro.klak.spout"] + path = _Package/jp.keijiro.klak.spout + url = "https://github.com/keijiro/KlakSpout#upm" diff --git a/Unity-19050-05-BallPool/Assets/Frozen/Frozen.unity b/Unity-19050-05-BallPool/Assets/Frozen/Frozen.unity index 967da97..6eaeb02 100644 --- a/Unity-19050-05-BallPool/Assets/Frozen/Frozen.unity +++ b/Unity-19050-05-BallPool/Assets/Frozen/Frozen.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 1071731254} - m_IndirectSpecularColor: {r: 0.021216419, g: 0.053037524, b: 0.08577964, a: 1} + m_IndirectSpecularColor: {r: 0.021216419, g: 0.053037528, b: 0.08577963, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -694,7 +694,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 7 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &145750430 GameObject: @@ -724,98 +724,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 9 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &151858420 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 151858424} - - component: {fileID: 151858423} - - component: {fileID: 151858422} - - component: {fileID: 151858421} - m_Layer: 0 - m_Name: Main Camera - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!81 &151858421 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 151858420} - m_Enabled: 1 ---- !u!124 &151858422 -Behaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 151858420} - m_Enabled: 1 ---- !u!20 &151858423 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 151858420} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} - m_projectionMatrixMode: 1 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_GateFitMode: 2 - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.3 - far clip plane: 1000 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: -1 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingPath: 1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 0 - m_AllowMSAA: 0 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 1 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!4 &151858424 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 151858420} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.5, z: -2.73} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &164987818 GameObject: @@ -1375,6 +1284,166 @@ MonoBehaviour: m_CallState: 2 mode: 0 info: +--- !u!43 &252394921 +Mesh: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: 'Space Ground Mesh: (8x5x3)' + serializedVersion: 9 + m_SubMeshes: + - serializedVersion: 2 + firstByte: 0 + indexCount: 24 + topology: 0 + baseVertex: 0 + firstVertex: 0 + vertexCount: 16 + localAABB: + m_Center: {x: 0, y: 1.5, z: 0} + m_Extent: {x: 4, y: 1.5, z: 2.5} + m_Shapes: + vertices: [] + shapes: [] + channels: [] + fullWeights: [] + m_BindPose: [] + m_BoneNameHashes: + m_RootBoneNameHash: 0 + m_MeshCompression: 0 + m_IsReadable: 0 + m_KeepVertices: 1 + m_KeepIndices: 1 + m_IndexFormat: 0 + m_IndexBuffer: 000001000200010003000200040005000600050007000600080009000a0009000b000a000c000d000e000d000f000e00 + m_VertexData: + serializedVersion: 2 + m_VertexCount: 16 + m_Channels: + - stream: 0 + offset: 0 + format: 0 + dimension: 3 + - stream: 0 + offset: 12 + format: 0 + dimension: 3 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 24 + format: 0 + dimension: 2 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + - stream: 0 + offset: 0 + format: 0 + dimension: 0 + m_DataSize: 512 + _typelessdata: 000080c000000000000020c0000000000000803f00000000e4388e3e00000000000080c00000000000002040000000000000803f00000000e4388e3e0000203f0000804000000000000020c0000000000000803f000000008ee3383f00000000000080400000000000002040000000000000803f000000008ee3383f0000203f000080c000000000000020400000000000000000000080bfe4388e3e0000203f000080c000004040000020400000000000000000000080bfe4388e3e0000803f0000804000000000000020400000000000000000000080bf8ee3383f0000203f0000804000004040000020400000000000000000000080bf8ee3383f0000803f000080c000000000000020c00000803f0000000000000000000000000000203f000080c000004040000020c00000803f0000000000000000000000000000803f000080c000000000000020400000803f0000000000000000e4388e3e0000203f000080c000004040000020400000803f0000000000000000e4388e3e0000803f000080400000000000002040000080bf00000000000000008ee3383f0000203f000080400000404000002040000080bf00000000000000008ee3383f0000803f0000804000000000000020c0000080bf00000000000000000000803f0000203f0000804000004040000020c0000080bf00000000000000000000803f0000803f + m_CompressedMesh: + m_Vertices: + m_NumItems: 0 + m_Range: 0 + m_Start: 0 + m_Data: + m_BitSize: 0 + m_UV: + m_NumItems: 0 + m_Range: 0 + m_Start: 0 + m_Data: + m_BitSize: 0 + m_Normals: + m_NumItems: 0 + m_Range: 0 + m_Start: 0 + m_Data: + m_BitSize: 0 + m_Tangents: + m_NumItems: 0 + m_Range: 0 + m_Start: 0 + m_Data: + m_BitSize: 0 + m_Weights: + m_NumItems: 0 + m_Data: + m_BitSize: 0 + m_NormalSigns: + m_NumItems: 0 + m_Data: + m_BitSize: 0 + m_TangentSigns: + m_NumItems: 0 + m_Data: + m_BitSize: 0 + m_FloatColors: + m_NumItems: 0 + m_Range: 0 + m_Start: 0 + m_Data: + m_BitSize: 0 + m_BoneIndices: + m_NumItems: 0 + m_Data: + m_BitSize: 0 + m_Triangles: + m_NumItems: 0 + m_Data: + m_BitSize: 0 + m_UVInfo: 0 + m_LocalAABB: + m_Center: {x: 0, y: 1.5, z: 0} + m_Extent: {x: 4, y: 1.5, z: 2.5} + m_MeshUsageFlags: 0 + m_BakedConvexCollisionMesh: + m_BakedTriangleCollisionMesh: + m_MeshMetrics[0]: 1 + m_MeshMetrics[1]: 1 + m_MeshOptimized: 0 + m_StreamData: + offset: 0 + size: 0 + path: --- !u!1 &260126567 GameObject: m_ObjectHideFlags: 0 @@ -1518,50 +1587,6 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 276089015} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!1 &282141325 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 282141327} - - component: {fileID: 282141326} - m_Layer: 0 - m_Name: Spout - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &282141326 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 282141325} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: aa175692d4b749244b474315598e4d14, type: 3} - m_Name: - m_EditorClassIdentifier: - _isEnabledInEditor: 0 ---- !u!4 &282141327 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 282141325} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &314832561 GameObject: m_ObjectHideFlags: 0 @@ -1668,7 +1693,7 @@ Transform: - {fileID: 199010598} - {fileID: 368474577} m_Father: {fileID: 0} - m_RootOrder: 15 + m_RootOrder: 14 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &351311318 GameObject: @@ -1930,7 +1955,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 10 + m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!1 &386695295 GameObject: @@ -1960,7 +1985,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 8 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &391089468 GameObject: @@ -2298,7 +2323,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 19 + m_RootOrder: 18 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &436028452 GameObject: @@ -2429,7 +2454,7 @@ RectTransform: - {fileID: 770059767} - {fileID: 1774693142} m_Father: {fileID: 0} - m_RootOrder: 18 + m_RootOrder: 17 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -2520,31 +2545,13 @@ GameObject: m_Component: - component: {fileID: 520040869} - component: {fileID: 520040868} - - component: {fileID: 520040866} m_Layer: 0 - m_Name: Final Camera + m_Name: Monitor Camera m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!114 &520040866 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 520040865} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 542c4b2aee71a0142928f8b82f70141f, type: 3} - m_Name: - m_EditorClassIdentifier: - sharingName: FrozenSpout - textureFormat: 28 - yFlip: 1 - output: {fileID: 0} - m_Shader: {fileID: 4800000, guid: ca95743014f24fd49897e12abbe931fc, type: 3} --- !u!20 &520040868 Camera: m_ObjectHideFlags: 0 @@ -2599,7 +2606,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 23 + m_RootOrder: 22 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &565906440 GameObject: @@ -2874,7 +2881,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4472652550524646, guid: 1f68bf7cec2600e49a46d2f0554453c8, type: 3} propertyPath: m_RootOrder - value: 4 + value: 3 objectReference: {fileID: 0} - target: {fileID: 114080462365263002, guid: 1f68bf7cec2600e49a46d2f0554453c8, type: 3} @@ -3089,7 +3096,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 12 + m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &663412325 GameObject: @@ -3309,166 +3316,6 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 681228290} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!43 &731219095 -Mesh: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: 'Space Ground Mesh: (8x5x3)' - serializedVersion: 9 - m_SubMeshes: - - serializedVersion: 2 - firstByte: 0 - indexCount: 24 - topology: 0 - baseVertex: 0 - firstVertex: 0 - vertexCount: 16 - localAABB: - m_Center: {x: 0, y: 1.5, z: 0} - m_Extent: {x: 4, y: 1.5, z: 2.5} - m_Shapes: - vertices: [] - shapes: [] - channels: [] - fullWeights: [] - m_BindPose: [] - m_BoneNameHashes: - m_RootBoneNameHash: 0 - m_MeshCompression: 0 - m_IsReadable: 0 - m_KeepVertices: 1 - m_KeepIndices: 1 - m_IndexFormat: 0 - m_IndexBuffer: 000001000200010003000200040005000600050007000600080009000a0009000b000a000c000d000e000d000f000e00 - m_VertexData: - serializedVersion: 2 - m_VertexCount: 16 - m_Channels: - - stream: 0 - offset: 0 - format: 0 - dimension: 3 - - stream: 0 - offset: 12 - format: 0 - dimension: 3 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 24 - format: 0 - dimension: 2 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - m_DataSize: 512 - _typelessdata: 000080c000000000000020c0000000000000803f00000000e4388e3e00000000000080c00000000000002040000000000000803f00000000e4388e3e0000203f0000804000000000000020c0000000000000803f000000008ee3383f00000000000080400000000000002040000000000000803f000000008ee3383f0000203f000080c000000000000020400000000000000000000080bfe4388e3e0000203f000080c000004040000020400000000000000000000080bfe4388e3e0000803f0000804000000000000020400000000000000000000080bf8ee3383f0000203f0000804000004040000020400000000000000000000080bf8ee3383f0000803f000080c000000000000020c00000803f0000000000000000000000000000203f000080c000004040000020c00000803f0000000000000000000000000000803f000080c000000000000020400000803f0000000000000000e4388e3e0000203f000080c000004040000020400000803f0000000000000000e4388e3e0000803f000080400000000000002040000080bf00000000000000008ee3383f0000203f000080400000404000002040000080bf00000000000000008ee3383f0000803f0000804000000000000020c0000080bf00000000000000000000803f0000203f0000804000004040000020c0000080bf00000000000000000000803f0000803f - m_CompressedMesh: - m_Vertices: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_UV: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_Normals: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_Tangents: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_Weights: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_NormalSigns: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_TangentSigns: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_FloatColors: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_BoneIndices: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_Triangles: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_UVInfo: 0 - m_LocalAABB: - m_Center: {x: 0, y: 1.5, z: 0} - m_Extent: {x: 4, y: 1.5, z: 2.5} - m_MeshUsageFlags: 0 - m_BakedConvexCollisionMesh: - m_BakedTriangleCollisionMesh: - m_MeshMetrics[0]: 1 - m_MeshMetrics[1]: 1 - m_MeshOptimized: 0 - m_StreamData: - offset: 0 - size: 0 - path: --- !u!1 &732632614 GameObject: m_ObjectHideFlags: 0 @@ -3497,7 +3344,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 11 + m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &750667758 GameObject: @@ -3550,7 +3397,7 @@ RectTransform: m_Children: - {fileID: 1000268179} m_Father: {fileID: 0} - m_RootOrder: 21 + m_RootOrder: 20 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -3585,7 +3432,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 16 + m_RootOrder: 15 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &768391776 GameObject: @@ -3763,7 +3610,7 @@ Transform: m_Children: - {fileID: 60963459} m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &875420587 GameObject: @@ -4694,6 +4541,73 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1191975162} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1001 &1199875718 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1424437803216390, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_Name + value: App Helper + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4443635060613428, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114802992808559142, guid: 65310f6d57df29045b6fa71ac0ceb175, + type: 3} + propertyPath: resolution.x + value: 1260 + objectReference: {fileID: 0} + - target: {fileID: 114802992808559142, guid: 65310f6d57df29045b6fa71ac0ceb175, + type: 3} + propertyPath: resolution.y + value: 800 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 65310f6d57df29045b6fa71ac0ceb175, type: 3} --- !u!1 &1206946024 GameObject: m_ObjectHideFlags: 0 @@ -5381,7 +5295,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 17 + m_RootOrder: 16 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1329758486 GameObject: @@ -5714,7 +5628,7 @@ MeshFilter: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1379541361} - m_Mesh: {fileID: 731219095} + m_Mesh: {fileID: 252394921} --- !u!114 &1379541365 MonoBehaviour: m_ObjectHideFlags: 0 @@ -5738,7 +5652,6 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 1390635888} - - component: {fileID: 1390635890} - component: {fileID: 1390635889} m_Layer: 0 m_Name: Misc @@ -5774,22 +5687,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: updateInterval: 0.5 ---- !u!114 &1390635890 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390635887} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 022338fc4c683e749b2da8ff495f4b99, type: 3} - m_Name: - m_EditorClassIdentifier: - hideCursorInStandalone: 1 - fullScreenMode: 3 - targetFrameRate: 60 - resolution: {x: 1260, y: 800} --- !u!1 &1395728836 GameObject: m_ObjectHideFlags: 0 @@ -6198,7 +6095,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 13 + m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!114 &1451842899 MonoBehaviour: @@ -7234,7 +7131,7 @@ RectTransform: - {fileID: 1901892189} - {fileID: 624498611} m_Father: {fileID: 0} - m_RootOrder: 24 + m_RootOrder: 23 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -7416,14 +7313,10 @@ MonoBehaviour: m_GameObject: {fileID: 1817143146} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 542c4b2aee71a0142928f8b82f70141f, type: 3} + m_Script: {fileID: 11500000, guid: 45099d624c1e6c14e9514f4e5ea1ed9c, type: 3} m_Name: m_EditorClassIdentifier: - sharingName: FrozenSpout - textureFormat: 28 - yFlip: 1 - output: {fileID: 0} - m_Shader: {fileID: 4800000, guid: ca95743014f24fd49897e12abbe931fc, type: 3} + _clearAlpha: 1 --- !u!20 &1817143148 Camera: m_ObjectHideFlags: 0 @@ -7478,7 +7371,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 20 + m_RootOrder: 19 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1817143150 MonoBehaviour: @@ -7999,7 +7892,7 @@ PrefabInstance: - target: {fileID: 224189884305339602, guid: 7aba709da85d1c2439af18a2c2e1548c, type: 3} propertyPath: m_AnchoredPosition.y - value: 0.000008848382 + value: -0.00004082822 objectReference: {fileID: 0} - target: {fileID: 224189884305339602, guid: 7aba709da85d1c2439af18a2c2e1548c, type: 3} @@ -8196,7 +8089,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 14 + m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1925824385 GameObject: @@ -8648,7 +8541,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 22 + m_RootOrder: 21 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2084936102 GameObject: @@ -8777,7 +8670,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 5 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2086317000 GameObject: diff --git a/Unity-19050-05-BallPool/Assets/Frozen/Material/Point.mat b/Unity-19050-05-BallPool/Assets/Frozen/Material/Point.mat index 33906a2..566a4b9 100644 --- a/Unity-19050-05-BallPool/Assets/Frozen/Material/Point.mat +++ b/Unity-19050-05-BallPool/Assets/Frozen/Material/Point.mat @@ -4,8 +4,9 @@ Material: serializedVersion: 6 m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} m_Name: Point m_Shader: {fileID: 4800000, guid: 44b738c16dcfd5445b9019d3c98e1a3c, type: 3} m_ShaderKeywords: diff --git a/Unity-19050-05-BallPool/Assets/Frozen/ScenePostProcessingProfile.asset b/Unity-19050-05-BallPool/Assets/Frozen/ScenePostProcessingProfile.asset index 83a1203..0f9610e 100644 --- a/Unity-19050-05-BallPool/Assets/Frozen/ScenePostProcessingProfile.asset +++ b/Unity-19050-05-BallPool/Assets/Frozen/ScenePostProcessingProfile.asset @@ -3,8 +3,9 @@ --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 @@ -109,7 +110,7 @@ MonoBehaviour: texture: {fileID: 0} intensity: 3 colorGrading: - m_Enabled: 1 + m_Enabled: 0 m_Settings: tonemapping: tonemapper: 0 @@ -146,18 +147,24 @@ MonoBehaviour: curve: serializedVersion: 2 m_Curve: - - serializedVersion: 2 + - serializedVersion: 3 time: 0 value: 0 inSlope: 1 outSlope: 1 tangentMode: 0 - - serializedVersion: 2 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 1 tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 @@ -168,18 +175,24 @@ MonoBehaviour: curve: serializedVersion: 2 m_Curve: - - serializedVersion: 2 + - serializedVersion: 3 time: 0 value: 0 inSlope: 1 outSlope: 1 tangentMode: 0 - - serializedVersion: 2 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 1 tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 @@ -190,18 +203,24 @@ MonoBehaviour: curve: serializedVersion: 2 m_Curve: - - serializedVersion: 2 + - serializedVersion: 3 time: 0 value: 0 inSlope: 1 outSlope: 1 tangentMode: 0 - - serializedVersion: 2 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 1 tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 @@ -212,18 +231,24 @@ MonoBehaviour: curve: serializedVersion: 2 m_Curve: - - serializedVersion: 2 + - serializedVersion: 3 time: 0 value: 0 inSlope: 1 outSlope: 1 tangentMode: 0 - - serializedVersion: 2 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 1 tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins.meta index e39999f..74402e9 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins.meta +++ b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 guid: 134f27287120b5a4f88fe738d3847874 folderAsset: yes -timeCreated: 1462037990 -licenseType: Pro DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle.meta deleted file mode 100644 index fca40ba..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle.meta +++ /dev/null @@ -1,31 +0,0 @@ -fileFormatVersion: 2 -guid: caac1cf6b04514f8abcebc841466ae71 -folderAsset: yes -timeCreated: 1462037990 -licenseType: Pro -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 0 - settings: {} - Editor: - enabled: 1 - settings: - DefaultValueInitialized: true - OSXIntel: - enabled: 1 - settings: {} - OSXIntel64: - enabled: 1 - settings: {} - OSXUniversal: - enabled: 1 - settings: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Info.plist b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Info.plist deleted file mode 100644 index 25377f4..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Info.plist +++ /dev/null @@ -1,48 +0,0 @@ - - - - - BuildMachineOSBuild - 15E65 - CFBundleDevelopmentRegion - English - CFBundleDisplayName - AVProQuickTime - CFBundleExecutable - UnityQT - CFBundleIdentifier - com.renderheads.AVProQuickTime - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - AVProQuickTime - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.01 - CFBundleSignature - ???? - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1.0 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - 7D175 - DTPlatformVersion - GM - DTSDKBuild - 9M2809 - DTSDKName - macosx10.5 - DTXcode - 0730 - DTXcodeBuild - 7D175 - LSApplicationCategoryType - - - diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Info.plist.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Info.plist.meta deleted file mode 100644 index 9f33b98..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Info.plist.meta +++ /dev/null @@ -1,6 +0,0 @@ -fileFormatVersion: 2 -guid: ca952a5152b9d4566a3bb69fa3362965 -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS/UnityQT b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS/UnityQT deleted file mode 100644 index 9b95f5e..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS/UnityQT and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS/UnityQT.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS/UnityQT.meta deleted file mode 100644 index c34860e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS/UnityQT.meta +++ /dev/null @@ -1,6 +0,0 @@ -fileFormatVersion: 2 -guid: be334d9fa0ec3ad4284fef2d08ce724a -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj/InfoPlist.strings b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj/InfoPlist.strings deleted file mode 100644 index 74d3187..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj/InfoPlist.strings and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj/InfoPlist.strings.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj/InfoPlist.strings.meta deleted file mode 100644 index 8a295bb..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj/InfoPlist.strings.meta +++ /dev/null @@ -1,6 +0,0 @@ -fileFormatVersion: 2 -guid: f1fe79251648c4fd5b30fb570b712180 -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro.meta deleted file mode 100644 index 604b523..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: bbbba6f01494a31478f8c2872a3c6841 -folderAsset: yes -timeCreated: 1488532537 -licenseType: Free -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro/KinectUnityAddin.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro/KinectUnityAddin.dll deleted file mode 100644 index da1a0ab..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro/KinectUnityAddin.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro/KinectUnityAddin.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro/KinectUnityAddin.dll.meta deleted file mode 100644 index 1a933cb..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/Metro/KinectUnityAddin.dll.meta +++ /dev/null @@ -1,62 +0,0 @@ -fileFormatVersion: 2 -guid: 85bafbe9b14b18b45b445b304b1f3efc -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 0 - settings: - Exclude Editor: 1 - Exclude Linux: 1 - Exclude Linux64: 1 - Exclude LinuxUniversal: 1 - Exclude OSXIntel: 1 - Exclude OSXIntel64: 1 - Exclude OSXUniversal: 1 - Exclude Win: 1 - Exclude Win64: 1 - Editor: - enabled: 0 - settings: - CPU: AnyCPU - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 0 - settings: - CPU: x86 - Linux64: - enabled: 0 - settings: - CPU: x86_64 - LinuxUniversal: - enabled: 0 - settings: - CPU: None - OSXIntel: - enabled: 0 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 0 - settings: - CPU: AnyCPU - OSXUniversal: - enabled: 0 - settings: - CPU: None - Win: - enabled: 0 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86.meta deleted file mode 100644 index c704e8f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: de7655be96a18bb4ebf546de09cb5762 -folderAsset: yes -timeCreated: 1462037990 -licenseType: Pro -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/AVProQuickTime.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/AVProQuickTime.dll deleted file mode 100644 index 68ec4e6..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/AVProQuickTime.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/AVProQuickTime.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/AVProQuickTime.dll.meta deleted file mode 100644 index 8a13f56..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/AVProQuickTime.dll.meta +++ /dev/null @@ -1,64 +0,0 @@ -fileFormatVersion: 2 -guid: 6573cdc626ce76247974a9d2ff486fff -timeCreated: 1491014027 -licenseType: Free -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 1 - settings: - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude Win: 0 - Exclude Win64: 1 - Editor: - enabled: 1 - settings: - CPU: x86 - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 1 - settings: - CPU: x86 - Linux64: - enabled: 1 - settings: - CPU: None - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 1 - settings: - CPU: None - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: None - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/KinectUnityAddin.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/KinectUnityAddin.dll deleted file mode 100644 index d131746..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/KinectUnityAddin.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/KinectUnityAddin.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/KinectUnityAddin.dll.meta deleted file mode 100644 index a4c4bbf..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/KinectUnityAddin.dll.meta +++ /dev/null @@ -1,62 +0,0 @@ -fileFormatVersion: 2 -guid: b65facb0c9c68b647b8ca7435b5f35c4 -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 1 - settings: - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude Win: 0 - Exclude Win64: 1 - Editor: - enabled: 1 - settings: - CPU: x86 - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 1 - settings: - CPU: x86 - Linux64: - enabled: 1 - settings: - CPU: None - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 1 - settings: - CPU: None - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: None - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006.dll deleted file mode 100644 index 3049bb7..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006.dll.meta deleted file mode 100644 index 422cefa..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006.dll.meta +++ /dev/null @@ -1,76 +0,0 @@ -fileFormatVersion: 2 -guid: 25455f33895f34847aec2c5c7987fcfc -timeCreated: 1483429812 -licenseType: Free -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Android: - enabled: 0 - settings: - CPU: ARMv7 - Any: - enabled: 0 - settings: - Exclude Android: 1 - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude WebGL: 1 - Exclude Win: 0 - Exclude Win64: 1 - Exclude iOS: 1 - Editor: - enabled: 1 - settings: - CPU: x86 - DefaultValueInitialized: true - OS: Windows - Linux: - enabled: 1 - settings: - CPU: x86 - Linux64: - enabled: 1 - settings: - CPU: None - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 1 - settings: - CPU: None - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: None - iOS: - enabled: 0 - settings: - CompileFlags: - FrameworkDependencies: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006_Debug.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006_Debug.dll deleted file mode 100644 index c3237ae..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006_Debug.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006_Debug.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006_Debug.dll.meta deleted file mode 100644 index d1363b3..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/NativeSpoutPlugin_2_006_Debug.dll.meta +++ /dev/null @@ -1,76 +0,0 @@ -fileFormatVersion: 2 -guid: d3726263bb01104438338589a388b623 -timeCreated: 1490779320 -licenseType: Free -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Android: - enabled: 0 - settings: - CPU: ARMv7 - Any: - enabled: 0 - settings: - Exclude Android: 1 - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude WebGL: 1 - Exclude Win: 0 - Exclude Win64: 1 - Exclude iOS: 1 - Editor: - enabled: 1 - settings: - CPU: x86 - DefaultValueInitialized: true - OS: Windows - Linux: - enabled: 1 - settings: - CPU: x86 - Linux64: - enabled: 1 - settings: - CPU: None - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 1 - settings: - CPU: None - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: None - iOS: - enabled: 0 - settings: - CompileFlags: - FrameworkDependencies: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Drawing.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Drawing.dll deleted file mode 100644 index fb4e839..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Drawing.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Drawing.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Drawing.dll.meta deleted file mode 100644 index b5e8e4e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Drawing.dll.meta +++ /dev/null @@ -1,68 +0,0 @@ -fileFormatVersion: 2 -guid: 7d8eddf3a0f61b4459ceb9a071e17948 -timeCreated: 1491013800 -licenseType: Free -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 0 - settings: - Exclude Editor: 0 - Exclude Linux: 1 - Exclude Linux64: 1 - Exclude LinuxUniversal: 1 - Exclude OSXIntel: 1 - Exclude OSXIntel64: 1 - Exclude OSXUniversal: 1 - Exclude Win: 0 - Exclude Win64: 1 - Editor: - enabled: 1 - settings: - CPU: x86 - DefaultValueInitialized: true - OS: Windows - Linux: - enabled: 0 - settings: - CPU: x86 - Linux64: - enabled: 0 - settings: - CPU: None - LinuxUniversal: - enabled: 0 - settings: - CPU: None - OSXIntel: - enabled: 0 - settings: - CPU: None - OSXIntel64: - enabled: 0 - settings: - CPU: None - OSXUniversal: - enabled: 0 - settings: - CPU: None - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: None - WindowsStoreApps: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Windows.Forms.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Windows.Forms.dll deleted file mode 100644 index c949b32..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Windows.Forms.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Windows.Forms.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Windows.Forms.dll.meta deleted file mode 100644 index ddfab2b..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86/System.Windows.Forms.dll.meta +++ /dev/null @@ -1,68 +0,0 @@ -fileFormatVersion: 2 -guid: f602d57aa622772419e169b21a1cad88 -timeCreated: 1491013801 -licenseType: Free -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 0 - settings: - Exclude Editor: 0 - Exclude Linux: 1 - Exclude Linux64: 1 - Exclude LinuxUniversal: 1 - Exclude OSXIntel: 1 - Exclude OSXIntel64: 1 - Exclude OSXUniversal: 1 - Exclude Win: 0 - Exclude Win64: 1 - Editor: - enabled: 1 - settings: - CPU: x86 - DefaultValueInitialized: true - OS: Windows - Linux: - enabled: 0 - settings: - CPU: None - Linux64: - enabled: 0 - settings: - CPU: None - LinuxUniversal: - enabled: 0 - settings: - CPU: None - OSXIntel: - enabled: 0 - settings: - CPU: None - OSXIntel64: - enabled: 0 - settings: - CPU: None - OSXUniversal: - enabled: 0 - settings: - CPU: None - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: None - WindowsStoreApps: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64.meta index 3eb866c..28caadc 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64.meta +++ b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 guid: 300743055358bfc48a753441b44a31e4 folderAsset: yes -timeCreated: 1488532537 -licenseType: Free DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/KinectUnityAddin.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/KinectUnityAddin.dll deleted file mode 100644 index 772de13..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/KinectUnityAddin.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/KinectUnityAddin.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/KinectUnityAddin.dll.meta deleted file mode 100644 index 8692caa..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/KinectUnityAddin.dll.meta +++ /dev/null @@ -1,62 +0,0 @@ -fileFormatVersion: 2 -guid: 82e143d16729051459ae6a54b37e9eab -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Any: - enabled: 1 - settings: - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude Win: 1 - Exclude Win64: 0 - Editor: - enabled: 1 - settings: - CPU: x86_64 - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 1 - settings: - CPU: None - Linux64: - enabled: 1 - settings: - CPU: x86_64 - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: None - OSXIntel64: - enabled: 1 - settings: - CPU: AnyCPU - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - Win: - enabled: 0 - settings: - CPU: None - Win64: - enabled: 1 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006.dll.meta index 84c12fc..5f1ee37 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006.dll.meta +++ b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006.dll.meta @@ -1,76 +1,76 @@ fileFormatVersion: 2 guid: d10f5e2a5b57a7c40a3f71fb68fc1314 -timeCreated: 1483429812 -licenseType: Free PluginImporter: - serializedVersion: 1 + externalObjects: {} + serializedVersion: 2 iconMap: {} executionOrder: {} + defineConstraints: [] isPreloaded: 0 isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 platformData: - Android: - enabled: 0 - settings: - CPU: ARMv7 - Any: - enabled: 0 - settings: - Exclude Android: 1 - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude WebGL: 1 - Exclude Win: 1 - Exclude Win64: 0 - Exclude iOS: 1 - Editor: + - first: + Any: + second: enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 settings: CPU: x86_64 DefaultValueInitialized: true - OS: Windows - Linux: - enabled: 1 + - first: + Facebook: Win + second: + enabled: 0 settings: CPU: None - Linux64: - enabled: 1 - settings: - CPU: x86_64 - LinuxUniversal: + - first: + Facebook: Win64 + second: enabled: 1 settings: CPU: AnyCPU - OSXIntel: - enabled: 1 + - first: + Standalone: Linux + second: + enabled: 0 settings: CPU: None - OSXIntel64: + - first: + Standalone: Linux64 + second: enabled: 1 settings: - CPU: AnyCPU - OSXUniversal: + CPU: x86_64 + - first: + Standalone: LinuxUniversal + second: enabled: 1 settings: - CPU: AnyCPU - Win: + CPU: x86_64 + - first: + Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + Standalone: Win + second: enabled: 0 settings: CPU: None - Win64: + - first: + Standalone: Win64 + second: enabled: 1 settings: CPU: AnyCPU - iOS: - enabled: 0 - settings: - CompileFlags: - FrameworkDependencies: userData: assetBundleName: assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006_Debug.dll b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006_Debug.dll deleted file mode 100644 index 58bfc5a..0000000 Binary files a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006_Debug.dll and /dev/null differ diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006_Debug.dll.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006_Debug.dll.meta deleted file mode 100644 index 1fc09b4..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/x86_64/NativeSpoutPlugin_2_006_Debug.dll.meta +++ /dev/null @@ -1,76 +0,0 @@ -fileFormatVersion: 2 -guid: b248714091c28c741adc3e9dec5e5b19 -timeCreated: 1490779249 -licenseType: Free -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - Android: - enabled: 0 - settings: - CPU: ARMv7 - Any: - enabled: 0 - settings: - Exclude Android: 1 - Exclude Editor: 0 - Exclude Linux: 0 - Exclude Linux64: 0 - Exclude LinuxUniversal: 0 - Exclude OSXIntel: 0 - Exclude OSXIntel64: 0 - Exclude OSXUniversal: 0 - Exclude WebGL: 1 - Exclude Win: 1 - Exclude Win64: 0 - Exclude iOS: 1 - Editor: - enabled: 1 - settings: - CPU: x86_64 - DefaultValueInitialized: true - OS: Windows - Linux: - enabled: 1 - settings: - CPU: None - Linux64: - enabled: 1 - settings: - CPU: x86_64 - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: None - OSXIntel64: - enabled: 1 - settings: - CPU: AnyCPU - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - Win: - enabled: 0 - settings: - CPU: None - Win64: - enabled: 1 - settings: - CPU: AnyCPU - iOS: - enabled: 0 - settings: - CompileFlags: - FrameworkDependencies: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout.meta deleted file mode 100644 index ae136b7..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 5621ecffabf710148a6e8b66ad72404a -folderAsset: yes -timeCreated: 1483429808 -licenseType: Free -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Editor.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Editor.meta deleted file mode 100644 index 93ad12a..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Editor.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 9522b2e936960b74d86ac5d484163db9 -folderAsset: yes -timeCreated: 1483429808 -licenseType: Free -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Editor/SpoutReceiverEditor.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Editor/SpoutReceiverEditor.cs deleted file mode 100644 index 6aadd12..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Editor/SpoutReceiverEditor.cs +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Spout4Unity -* Copyright © 2014-2015 Benjamin Kuperberg -* Copyright © 2015 Stefan Schlupek -* All rights reserved -*/ -using UnityEngine; -using System.Collections; -using UnityEditor; -using System; - -namespace Spout{ - [CustomEditor(typeof(SpoutReceiver))] - [CanEditMultipleObjects] - [Serializable] - public class SpoutReceiverEditor : Editor { - - SpoutReceiver receiver; - - [SerializeField] - private int _popupIndex; - - string[] options; - - string currentName; - - - void OnEnable() - { - - if(receiver == null) - { - receiver = target as SpoutReceiver; - Spout.instance.addListener(texShared,senderStopped); - - updateOptions(); - } - - - //Debug.Log ("Enable popup Index : "+popupIndex); - } - - void OnDisable(){ - //if(target == null)return; - Spout.removeListener(texShared,senderStopped); - } - - public void texShared(TextureInfo texInfo) - { - //Debug.Log ("Editor : senderStarted :"+texInfo.name); - updateOptions(); - } - - public void senderStopped(TextureInfo texInfo) - { - //Debug.Log ("Editor : senderStopped :"+texInfo.name); - updateOptions(); - } - - void updateOptions(bool assignNewName = true) - { - - string oldSharingName = receiver.sharingName; - int newPopupIndex = 0; - - bool found = false; - - options = new string[Spout.instance.activeSenders.Count+2]; - options[0] = "Any"; - - for(int i=0;i().ResetWorldToCameraMatrix(); - GetComponent().ResetProjectionMatrix(); - GetComponent().projectionMatrix = GetComponent().projectionMatrix * Matrix4x4.Scale(new Vector3(1, -1, 1)); - } - - void OnPreRender () { - GL.invertCulling = true; - } - - void OnPostRender () { - GL.invertCulling = false; - } - - } - -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/Spout.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/Spout.cs deleted file mode 100644 index 75bb184..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/Spout.cs +++ /dev/null @@ -1,563 +0,0 @@ -/* - * Spout4Unity -* Copyright © 2014-2015 Benjamin Kuperberg -* Copyright © 2015 Stefan Schlupek -* All rights reserved -*/ -using UnityEngine; -using System; -using System.Collections; -using System.Collections.Generic; -using System.Runtime.InteropServices; -using System.Linq; - -namespace Spout -{ - - [ExecuteInEditMode] - public class Spout : MonoBehaviour - { - #region public - public event EventHandler OnSenderStopped; - public event Action OnEnabled; - public event Action OnAllSendersStopped; - - public delegate void TextureSharedDelegate(TextureInfo texInfo); - public TextureSharedDelegate texSharedDelegate; - public delegate void SenderStoppedDelegate(TextureInfo texInfo); - public SenderStoppedDelegate senderStoppedDelegate; - - public List activeSenders; - public List activeLocalSenders; - public HashSet localSenderNames; - - - public static bool isInit - { - get { return _isInit; } - } - public static bool isEnabledInEditor - { - get - { - return _instance == null ? false : _instance._isEnabledInEditor; - //return _isEnabledInEditor; - } - } - //You can use a fakeName of your choice .It's just to force an update in the Spout Receiver at start even if the 'offical' sharingName doesn't change. - public static string fakeName = "SpoutIsSuperCoolAndMakesFun"; - - public enum TextureFormat { DXGI_FORMAT_R32G32B32A32_FLOAT = 2, DXGI_FORMAT_R10G10B10A2_UNORM = 24, DXGI_FORMAT_R8G8B8A8_UNORM = 28, DXGI_FORMAT_B8G8R8A8_UNORM = 87 } - #endregion - - #region private - - - private IntPtr intptr_senderUpdate_delegate; - private IntPtr intptr_senderStarted_delegate; - private IntPtr intptr_senderStopped_delegate; - - // Use GCHandle to hold the delegate object in memory. - private GCHandle handleSenderUpdate; - private GCHandle handleSenderStarted; - private GCHandle handleSenderStopped; - -#pragma warning disable 414 - [SerializeField] - private static bool _isInit; - [SerializeField] - private bool _isEnabledInEditor; -#pragma warning restore 414 - private static bool isReceiving; - - private List newSenders; - private List stoppedSenders; - - [SerializeField] - private static Spout _instance; - - -#pragma warning disable 414 - //In EditMode we have to force the camera to render.But as this is called 100 times per second beware of your performance, so we only render at a special interval - private int _editorUpdateFrameInterval = 3; -#pragma warning restore 414 - - private int _frameCounter; - #endregion - - [SerializeField] - private static Texture2D _nullTexture; - public static Texture2D nullTexture - { - get { return _nullTexture; } - } - - - - public static Spout instance - { - get - { - if (_instance == null) - { - _instance = GameObject.FindObjectOfType(); - if (_instance == null) - { - GameObject _go = new GameObject("Spout"); - _instance = _go.AddComponent(); - } - //DontDestroyOnLoad(_instance.gameObject); - } - - return _instance; - } - private set { _instance = value; } - } - - - // - public void Awake() - { - Debug.Log("Spout.Awake"); - - if (_instance != null && _instance != this) - { - //Debug.Log("Spout.Awake.Destroy"); -#if UNITY_EDITOR - DestroyImmediate(this.gameObject); -#else - Destroy(this.gameObject); -#endif - return; - } - - newSenders = new List(); - stoppedSenders = new List(); - activeSenders = new List(); - activeLocalSenders = new List(); - localSenderNames = new HashSet(); - - _nullTexture = new Texture2D(32, 32); - _nullTexture.hideFlags = HideFlags.HideAndDontSave; - - } - public void OnEnable() - { - //Debug.Log("Spout.OnEnable"); - if (_instance != null && _instance != this) - { - //Debug.Log("Spout.OnEnable.Destroy"); -#if UNITY_EDITOR - DestroyImmediate(this.gameObject); -#else - Destroy(this.gameObject); -#endif - return; - } - - newSenders = new List(); - stoppedSenders = new List(); - activeSenders = new List(); - activeLocalSenders = new List(); - localSenderNames = new HashSet(); - -#if UNITY_EDITOR - if (_isEnabledInEditor || Application.isPlaying) - { - _Enable(); - } -#else - _Enable(); -#endif - - - } - - private void _Enable() - { - //Debug.Log("Spout._Enable"); -#if UNITY_EDITOR - - if (!Application.isPlaying) - { - UnityEditor.EditorApplication.update -= _Update; - UnityEditor.EditorApplication.update += _Update; - } -#endif - - - _Init(); - //notify others so they can re-initialize - if (OnEnabled != null) OnEnabled(); - } - - private void _Disable() - { - - } - - private void _Init() - { - //Debug.Log("Spout._Init"); - - initNative(); - //Debug.Log("isReceiving:+"+isReceiving); - - _startReceiving(); - _isInit = true; - //if(debug) initDebugConsole(); - } - - - - - - void Update() - { - //if(_instance == null || _instance != this ) return; - - _Update(); - } - private void _Update() - { - -#if UNITY_EDITOR - _frameCounter++; - _frameCounter %= _editorUpdateFrameInterval; - if (_frameCounter == 0) - { - UnityEditor.SceneView.RepaintAll(); - } -#endif - - if (isReceiving) - { - //Debug.Log("checkReceivers"); - checkReceivers(); - } - - lock (this) - { - foreach (TextureInfo s in newSenders) - { - //Debug.Log("texSharedDelegate"); - activeSenders.Add(s); - if (texSharedDelegate != null) texSharedDelegate(s); - - } - - newSenders.Clear(); - - foreach (TextureInfo s in stoppedSenders) - { - foreach (TextureInfo t in activeSenders) - { - if (s.name == t.name) - { - activeSenders.Remove(t); - break; - } - } - - //Debug.Log ("Stopped sender from Spout :"+s.name); - if (senderStoppedDelegate != null) senderStoppedDelegate(s); - } - - stoppedSenders.Clear(); - }//lock - } - - public void OnDisable() - { - //Debug.Log("Spout.OnDisable"); - if (_instance != this) return; - -#if UNITY_EDITOR - UnityEditor.EditorApplication.update -= _Update; -#endif - - StopAllLocalSenders(); - //Force the Plugin to check. Otherwise we don't get a SenderStopped delegate call - Update(); - - //Debug.Log("Spout.OnDisable.End"); - } - - void OnDestroy() - { - //Debug.Log("Spout.OnDestroy"); - if (_instance != this) return; - - if (_isInit) - { - _CleanUpResources(); - } - - isReceiving = false; - _isInit = false; - newSenders = null; - stoppedSenders = null; - activeSenders = null; - activeLocalSenders = null; - localSenderNames = null; - - OnEnabled = null; - OnSenderStopped = null; - - _instance = null; - - - GC.Collect();//?? - - } - - private void _CleanUpResources() - { - clean(); - - _instance.texSharedDelegate = null; - _instance.senderStoppedDelegate = null; - - _instance.handleSenderUpdate.Free(); - _instance.handleSenderStarted.Free(); - _instance.handleSenderStopped.Free(); - - intptr_senderUpdate_delegate = IntPtr.Zero; - intptr_senderStarted_delegate = IntPtr.Zero; - intptr_senderStopped_delegate = IntPtr.Zero; - - - } - - - public void addListener(TextureSharedDelegate sharedCallback, SenderStoppedDelegate stoppedCallback) - { - // Debug.Log ("Spout.addListener"); - if (_instance == null) return; - _instance.texSharedDelegate += sharedCallback; - _instance.senderStoppedDelegate += stoppedCallback; - } - - public static void removeListener(TextureSharedDelegate sharedCallback, SenderStoppedDelegate stoppedCallback) - { - // Debug.Log ("Spout.removeListener"); - if (_instance == null) return; - _instance.texSharedDelegate -= sharedCallback; - _instance.senderStoppedDelegate -= stoppedCallback; - } - - public bool CreateSender(string sharingName, Texture tex, int texFormat = 1) - { - if (!enabled) return false; - if (!_isInit) return false; -#if UNITY_EDITOR - if (!Application.isPlaying && !_isEnabledInEditor) return false; -#endif - - IntPtr p_tex = tex.GetNativeTexturePtr(); - if (p_tex == IntPtr.Zero) - { - Debug.Log("[WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING]"); - Debug.Log("Spout.UpdateSender:" + sharingName + " NativeTexturePtr is NULL !!!"); - Debug.Log("[WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING]"); - return false; - } - - Debug.Log("Spout.CreateSender:" + sharingName + "::" + p_tex.ToInt32()); - bool result = createSenderNative(sharingName, p_tex, texFormat); - if (result) - { - //Debug.Log (String.Format("Spout sender creation with name {0} success !",sharingName)); - localSenderNames.Add(sharingName); - } - else - { - Debug.LogWarning(String.Format("createSenderNative(): Spout sender creation with name {0} failed !", sharingName)); - } - - return result; - } - - public bool UpdateSender(string sharingName, Texture tex) - { - if (enabled == false || gameObject.activeInHierarchy == false || _isInit == false) return false; - //Debug.Log("Spout.UpdateSender:"+sharingName+"::"+tex.GetNativeTexturePtr().ToInt32()); - IntPtr p_tex = tex.GetNativeTexturePtr(); - if (p_tex == IntPtr.Zero) - { - Debug.Log("[WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING]"); - Debug.Log("Spout.UpdateSender:" + sharingName + " NativeTexturePtr is NULL !!!"); - Debug.Log("[WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING]"); - return false; - } - - return updateSenderNative(sharingName, p_tex); - } - - - public TextureInfo getTextureInfo(string sharingName) - { - if (activeSenders == null) return null; - - foreach (TextureInfo tex in activeSenders) - { - if (tex.name == sharingName) return tex; - } - - if (sharingName != Spout.fakeName) Debug.Log(String.Format("sharing name {0} not found", sharingName)); - - return null; - } - - private const string SpoutVersion = "2_006"; - private const string SpoutLibNameBase = "NativeSpoutPlugin"; - private const string SpoutLibName = SpoutLibNameBase + "_" + SpoutVersion; -#if DEVELOPMENT_BUILD - public const string SpoutLibImport = SpoutLibName + "_Debug"; -#else - public const string SpoutLibImport = SpoutLibName; -#endif - - //Imports - [DllImport(SpoutLibImport, EntryPoint = "init")] - public static extern bool initNative(); - - [DllImport(SpoutLibImport, EntryPoint = "initDebugConsole")] - private static extern void _initDebugConsole(); - - [DllImport(SpoutLibImport)] - private static extern void checkReceivers(); - - - [DllImport(SpoutLibImport, EntryPoint = "createSender")] - private static extern bool createSenderNative(string sharingName, IntPtr texture, int texFormat); - - [DllImport(SpoutLibImport, EntryPoint = "updateSender")] - private static extern bool updateSenderNative(string sharingName, IntPtr texture); - - [DllImport(SpoutLibImport, EntryPoint = "closeSender")] - public static extern bool CloseSender(string sharingName); - - [DllImport(SpoutLibImport)] - private static extern void clean(); - - [DllImport(SpoutLibImport, EntryPoint = "startReceiving")] - private static extern bool startReceivingNative(IntPtr senderUpdateHandler, IntPtr senderStartedHandler, IntPtr senderStoppedHandler); - - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - public delegate void SpoutSenderUpdateDelegate(int numSenders); - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - public delegate void SpoutSenderStartedDelegate(string senderName, IntPtr resourceView, int textureWidth, int textureHeight); - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - public delegate void SpoutSenderStoppedDelegate(string senderName); - - - public void initDebugConsole() - { - //check if multiple inits? - _initDebugConsole(); - } - - - - private void _startReceiving() - { - if (isReceiving) return; - //Debug.Log("Spout.startReceiving"); - SpoutSenderUpdateDelegate senderUpdate_delegate = new SpoutSenderUpdateDelegate(SenderUpdate); - handleSenderUpdate = GCHandle.Alloc(senderUpdate_delegate); - intptr_senderUpdate_delegate = Marshal.GetFunctionPointerForDelegate(senderUpdate_delegate); - - SpoutSenderStartedDelegate senderStarted_delegate = new SpoutSenderStartedDelegate(SenderStarted); - handleSenderStarted = GCHandle.Alloc(senderStarted_delegate); - intptr_senderStarted_delegate = Marshal.GetFunctionPointerForDelegate(senderStarted_delegate); - - SpoutSenderStoppedDelegate senderStopped_delegate = new SpoutSenderStoppedDelegate(SenderStopped); - handleSenderStopped = GCHandle.Alloc(senderStopped_delegate); - intptr_senderStopped_delegate = Marshal.GetFunctionPointerForDelegate(senderStopped_delegate); - - isReceiving = startReceivingNative(intptr_senderUpdate_delegate, intptr_senderStarted_delegate, intptr_senderStopped_delegate); - } - - private void SenderUpdate(int numSenders) - { - //Debug.Log("Sender update, numSenders : "+numSenders); - } - - private void SenderStarted(string senderName, IntPtr resourceView, int textureWidth, int textureHeight) - { - Debug.Log("Spout. Sender started, sender name : " + senderName); - if (_instance == null || _instance.activeLocalSenders == null || _instance.newSenders == null) return; - lock (this) - { - TextureInfo texInfo = new TextureInfo(senderName); - Debug.Log("resourceView:" + resourceView.ToInt32()); - texInfo.setInfos(textureWidth, textureHeight, resourceView); - _instance.newSenders.Add(texInfo); - if (_instance.localSenderNames.Contains(texInfo.name)) - { - _instance.activeLocalSenders.Add(texInfo); - //Debug.Log("activeLocalSenders.count:"+_instance.activeLocalSenders.Count); - } - Debug.Log("Spout.SenderStarted.End"); - }//lock - } - private void SenderStopped(string senderName) - { - Debug.Log("Sender stopped, sender name : " + senderName); - if (_instance == null || _instance.activeLocalSenders == null || _instance.stoppedSenders == null) return; - lock (this) - { - TextureInfo texInfo = new TextureInfo(senderName); - - _instance.stoppedSenders.Add(texInfo); - - _instance.localSenderNames.Remove(texInfo.name); - - if (_instance.activeLocalSenders.Contains(texInfo)) - { - _instance.activeLocalSenders.Remove(texInfo); - } - }//lock - //Debug.Log("localSenderNames.count:"+instance.localSenderNames.Count); - //Debug.Log("activeLocalSenders.count:"+instance.activeLocalSenders.Count); - } - - private void StopAllLocalSenders() - { - - Debug.Log("Spout.StopAllLocalSenders()"); - if (_instance == null) return; - foreach (TextureInfo t in _instance.activeLocalSenders) - { - CloseSender(t.name); - if (OnSenderStopped != null) OnSenderStopped(this, new TextureShareEventArgs(t.name)); - /* - double i = 0; - while(i< 100000000){ - i++; - } - */ - - } - - if (OnAllSendersStopped != null) OnAllSendersStopped(); - - } - - } - - public class TextureShareEventArgs : EventArgs - { - public string sharingName { get; set; } - - public TextureShareEventArgs(string myString) - { - this.sharingName = myString; - } - } - -} - - diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutReceiver.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutReceiver.cs deleted file mode 100644 index 7c521ec..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutReceiver.cs +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Spout4Unity -* Copyright © 2014-2015 Benjamin Kuperberg -* Copyright © 2015 Stefan Schlupek -* All rights reserved -*/ -using UnityEngine; -using System.Collections; -using System; - -namespace Spout{ -[Serializable] - [ExecuteInEditMode] - public class SpoutReceiver : MonoBehaviour { - - [SerializeField] - private string _sharingName; - - private Texture2D _texture; - // leave false in this version! - //private bool debugConsole = false; - - private bool _receiverIsReady; - - //If you have want to prevent the Console warnings about not existing Senders just turn on the StartupDelay and specify the frame delay - private bool _startupDelay = true; - //how many frames of delay - private int _startupFramesDelay = 0; - - - private int _startUpFrameCount; - - - private string _tempName; - - - // Use this for initialization - void Awake () { - // Debug.Log("SpoutReceiver.Awake"); - //if(debugConsole) Spout2.instance.initDebugConsole(); - - } - - void Start() - { - - } - void OnEnable(){ - //Debug.Log("SpoutReceiver.OnEnable"); - //Add the listener immediately to get the events when Unity starts and the Spout plugin initialize. - //Otherwise the external Spout Senders have to start afterwards to trigger the native plugin events - Spout.instance.addListener(TexShared,TexStopped); - - #if UNITY_EDITOR - - if(!Application.isPlaying){ - UnityEditor.EditorApplication.update -= _Update; - UnityEditor.EditorApplication.update += _Update; - } - #endif - - _receiverIsReady = false; - _startUpFrameCount = 0; - if(!_startupDelay)_ForceTextureUpdate(); - - } - - void OnDisable(){ - //Debug.Log("SpoutReceiver.OnDisable"); - #if UNITY_EDITOR - UnityEditor.EditorApplication.update -= _Update; - #endif - _receiverIsReady = false; - _startUpFrameCount = 0; - - Spout.removeListener(TexShared,TexStopped); - texture = null; - GC.Collect(); - } - - void OnDestroy(){ - //Debug.Log("SpoutReceiver.OnDestroy"); - } - - - void Update(){ - _Update(); - } - - // Update is called once per frame - void _Update () { - //if(texture == null)_createNullTexture(); - if(!_startupDelay)return; - if(!_receiverIsReady){ - _startUpFrameCount++; - if( _startUpFrameCount < _startupFramesDelay)return; - _ForceTextureUpdate(); - } - - } - - private void _ForceTextureUpdate(){ - //Debug.Log("SpoutReceiver._ForceTextureUpdate"); - - //Little hack to force an update of the Texture - _tempName = _sharingName; - sharingName = Spout.fakeName; - sharingName = _tempName; - _receiverIsReady = true; - } - - public void TexShared(TextureInfo texInfo) - { - //Debug.Log("SpoutReceiver.texShared"); - if(sharingName == "" || sharingName == texInfo.name || sharingName == "Any") - { - //Debug.Log("SpoutReceiver.texShared:"+texInfo.name); - texture = texInfo.getTexture(); - } - } - - public void TexStopped(TextureInfo texInfo) - { - //Debug.Log("SpoutReceiver.texStopped:"+texInfo.name); - if(texInfo.name == _sharingName) - { - //Debug.Log("SpoutReceiver.texStopped:"+texInfo.name); - texture = Spout.nullTexture; - - - } - else if(sharingName == "Any" && Spout.instance.activeSenders.Count > 0) - { - texture = Spout.instance.activeSenders[Spout.instance.activeSenders.Count-1].getTexture(); - } - } - - public Texture2D texture - { - get { return _texture; } - set { - _texture = value; - if(_texture == null) _texture = Spout.nullTexture; -#if false - try { GetComponent().sharedMaterial.mainTexture = _texture; } catch { } - try { GetComponent().texture = _texture; } catch { } -#else - if(GetComponent() != null) - { - GetComponent().sharedMaterial.mainTexture = _texture; - } - if (GetComponent() != null) - { - GetComponent().texture = _texture; - } -#endif - - } - } - [SerializeField] - public string sharingName - { - get { return _sharingName; } - set { - if(_sharingName == value && sharingName != "Any") return; - _sharingName = value; - //Debug.Log("sharingName:"+_sharingName); - if(sharingName == "Any") - { - if(Spout.instance.activeSenders != null && Spout.instance.activeSenders.Count > 0) - { - texture = Spout.instance.activeSenders[Spout.instance.activeSenders.Count-1].getTexture(); - } - }else - { - //Debug.Log ("Set sharing name :"+sharingName); - TextureInfo texInfo = Spout.instance.getTextureInfo(sharingName); - if(texInfo != null) { - texture = texInfo.getTexture (); - } - else - { - if(sharingName != Spout.fakeName)Debug.LogWarning ("Sender "+sharingName+" does not exist"); - texture = Spout.nullTexture; - /* - texture = new Texture2D(32,32); - //new Texture2D(32,32,TextureFormat.RGBA32,true,true); - texture.hideFlags = HideFlags.HideAndDontSave; - */ - } - - } - - } - } - - - - - } -} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutSender.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutSender.cs deleted file mode 100644 index b2b3037..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutSender.cs +++ /dev/null @@ -1,236 +0,0 @@ -/* - * Spout4Unity -* Copyright © 2014-2015 Benjamin Kuperberg -* Copyright © 2015 Stefan Schlupek -* All rights reserved -*/ -using UnityEngine; -using System.Collections; -using System; - -namespace Spout -{ - [Serializable] - [ExecuteInEditMode] - [Obsolete("This component is deprecated. Use ImageEffectSpoutSender component instead.", false)] - public class SpoutSender : MonoBehaviour - { - - //according to dxgiformat.h : - //tested with DXGI_FORMAT_R8G8B8A8_UNORM (ATI Card) - - public string sharingName = "UnitySender"; - public Texture texture; - public Spout.TextureFormat textureFormat = Spout.TextureFormat.DXGI_FORMAT_R8G8B8A8_UNORM; - public bool debugConsole = false; - - private bool senderIsCreated; -#if UNITY_EDITOR - private Camera _cam; -#endif - //make this public if you want - //It's better you set this always to true! - //There are problems with creating a sender at OnEnable at Editor/App Start time so we have a little delay hack that calls the CreateSender at Update() - private bool StartupDelay = true; - // if there are problems you can increase this value - private int _startupFramesDelay = 3; - - private int _startUpFrameCount; - - private int _createAttempts = 5; - private int _attempts = 0; - -#pragma warning disable 414 - //In EditMode we have to force the camera to render.But as this is called 100 times per second beware of your performance, so we only render at a specific interval - private int _editorUpdateFrameInterval = 10; -#pragma warning restore 414 - - private int _frameCounter; - - - void Awake() - { - //Debug.Log("SpoutSender.Awake"); - //if(debugConsole) Spout2.instance.initDebugConsole(); -#if UNITY_EDITOR - _cam = GetComponent() as Camera; -#endif - } - - void Start() - { - - } - - void OnEnable() - { - - //Debug.Log("SpoutSender.OnEnable"); - - -#if UNITY_EDITOR - - if (!Application.isPlaying) - { - UnityEditor.EditorApplication.update -= _Update; - UnityEditor.EditorApplication.update += _Update; - } -#endif - if (debugConsole) Spout.instance.initDebugConsole(); - _startUpFrameCount = 0; - _attempts = 0; - - //Problem with creatingSender and disabled hosting Gameobject.(You always have to call OnEnable twice to get a Sender created) - //It's better to do the real createSender call at OnUpdate. - if (!StartupDelay) _CreateSender(); - - } - - void OnDisable() - { - Debug.Log("SpoutSender.OnDisable"); - - //we can't call Spout2.instance because on Disable is also called when scene is destroyed. - //so a nother instance of Spout could be generated in the moment when the Spout2 instance is destroyed! - - -#if UNITY_EDITOR - UnityEditor.EditorApplication.update -= _Update; -#endif - - _CloseSender(); - } - - void Update() - { - _Update(); - } - - void _Update() - { - //Debug.Log("SpoutSender.Update"); - if (texture == null) return; - - //in EditMode we have to force the camera to render.But as this is called 100 times per second beware of your performance, so we only render at a special interval -#if UNITY_EDITOR - if (!Application.isPlaying) - { - _frameCounter++; - _frameCounter %= _editorUpdateFrameInterval; - if (Spout.isEnabledInEditor) - { - if (_cam != null) - { - if (_frameCounter == 0) _cam.Render(); - } - } - } -#endif - - if (senderIsCreated) - { - Spout.instance.UpdateSender(sharingName, texture); - //Debug.Log("Update sender :"+updateSenderResult); - } - else - { - - //this is the delay - - if (StartupDelay) - { - _startUpFrameCount++; - if (_startUpFrameCount < _startupFramesDelay) return; - if (_attempts > _createAttempts) return; - _CreateSender(); - } - - } - } - - void OnDestroy() - { - - } - - - private void _CreateSender() - { - //Debug.Log("SpoutSender._CreateSender"); - - if (texture == null) return; - if (!Spout.isInit) return; - if (!Spout.instance.enabled) return; -#if UNITY_EDITOR - if (!Application.isPlaying && !Spout.isEnabledInEditor) return; -#endif - - - //Debug.Log("SpoutSender._CreateSender"); - - if (!senderIsCreated) - { - Debug.Log("Sender is not created, creating one"); - senderIsCreated = Spout.instance.CreateSender(sharingName, texture, (int)textureFormat); - } - - _attempts++; - if (_attempts > _createAttempts) Debug.LogWarning(String.Format("There are problems with creating the sender {0}. Please check your settings or restart Unity.", sharingName)); -#if UNITY_EDITOR - if (_cam != null) - { - if (_cam.targetTexture == null || _cam.targetTexture != texture) - { - Debug.LogWarning("Your Camera has no Target Texture or the texture that the Spout Sender uses is different!"); - if (texture != null) _cam.targetTexture = (RenderTexture)texture; - } - } -#endif - Spout.instance.OnSenderStopped -= OnSenderStoppedDelegate; - Spout.instance.OnSenderStopped += OnSenderStoppedDelegate; - - Spout.instance.OnAllSendersStopped -= OnAllSendersStoppedDelegate; - Spout.instance.OnAllSendersStopped += OnAllSendersStoppedDelegate; - - Spout.instance.OnEnabled -= _OnSpoutEnabled; - Spout.instance.OnEnabled += _OnSpoutEnabled; - } - - private void _OnSpoutEnabled() - { - //Debug.Log("SpoutSender._OnSpoutEnabled"); - if (enabled) - { - //force a reconnection - enabled = !enabled; - enabled = !enabled; - } - } - - private void _CloseSender() - { - Debug.Log("SpoutSender._CloseSender:" + sharingName); - if (senderIsCreated) Spout.CloseSender(sharingName); - _CloseSenderCleanUpData(); - } - - private void OnSenderStoppedDelegate(object sender, TextureShareEventArgs e) - { - //Debug.Log("SpoutSender.OnSenderStoppedDelegate:"+e.sharingName); - if (e.sharingName == sharingName) - { - _CloseSenderCleanUpData(); - } - } - - private void OnAllSendersStoppedDelegate() - { - _CloseSenderCleanUpData(); - } - - private void _CloseSenderCleanUpData() - { - senderIsCreated = false; - } - } -} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/TextureInfo.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/TextureInfo.cs deleted file mode 100644 index 0b133e3..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/TextureInfo.cs +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Spout4Unity -* Copyright © 2014-2015 Benjamin Kuperberg -* Copyright © 2015 Stefan Schlupek -* All rights reserved -*/ -using UnityEngine; -using System.Collections; -using System; - -namespace Spout{ - - public class TextureInfo { - - public string name; - private int w; - private int h; - private IntPtr resourceView; - - private Texture2D tex; - - // Use this for initialization - public TextureInfo (string name) { - this.name = name; - - } - - public void setInfos(int width, int height, IntPtr resourceView){ - this.w = width; - this.h = height; - this.resourceView = resourceView; - } - - public Texture2D getTexture() - { - if(resourceView == IntPtr.Zero) - { - Debug.LogWarning("ResourceView is null, returning empty texture"); - - tex = null; - //Resources.UnloadUnusedAssets(); - //GC.Collect(); - //There could be problems with creating a Texture2d at this point! - //tex = new Texture2D(64,64,TextureFormat.RGBA32,false,true);//new Texture2D(64,64); - //tex.hideFlags = HideFlags.HideAndDontSave; - - } - else - { - if(tex == null) { - tex = Texture2D.CreateExternalTexture(w,h,TextureFormat.RGBA32,true,true,resourceView); - /* - Without setting the Hideflags there seems to be a reference floating in the scene which causes great trouble with [ExecuteInEditmode] at OnDestroy - And we get some weired exception when enter PlayMode and there is an already open Spout sender outside from Unity - */ - tex.hideFlags = HideFlags.HideAndDontSave; - - } - } - - return tex; - - - } - - //Make it comparable for Linq - - public override bool Equals(object obj) - { - TextureInfo q = obj as TextureInfo; - return q != null && q.name == this.name ; - } - - public override int GetHashCode() - { - return this.name.GetHashCode() ^ this.name.GetHashCode(); - } - - - - } -} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/TextureInfo.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/TextureInfo.cs.meta deleted file mode 100644 index a261a00..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/TextureInfo.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9403bcc28b14bab4086ab044f04eb4e2 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext.meta deleted file mode 100644 index 850ce30..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: dc01a313f01e7504586df3241c4199e6 -folderAsset: yes -timeCreated: 1488451788 -licenseType: Pro -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Hook.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Hook.cs deleted file mode 100644 index b64d73b..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Hook.cs +++ /dev/null @@ -1,38 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using Gma.System.MouseKeyHook.Implementation; - -namespace Gma.System.MouseKeyHook -{ - /// - /// This is the class to start with. - /// - public static class Hook - { - /// - /// Here you find all application wide events. Both mouse and keyboard. - /// - /// - /// Returned instance is used for event subscriptions. - /// You can refetch it (you will get the same instance anyway). - /// - public static IKeyboardMouseEvents AppEvents() - { - return new AppEventFacade(); - } - - /// - /// Here you find all application wide events. Both mouse and keyboard. - /// - /// - /// Returned instance is used for event subscriptions. - /// You can refetch it (you will get the same instance anyway). - /// - public static IKeyboardMouseEvents GlobalEvents() - { - return new GlobalEventFacade(); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Hook.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Hook.cs.meta deleted file mode 100644 index f23c771..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Hook.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 0c6113b90df3d3748af2d69410b579d3 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys.meta deleted file mode 100644 index b247be3..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: d829ad4124538794d9cccd3a438c0ae1 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeyArgs.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeyArgs.cs deleted file mode 100644 index 77fb80e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeyArgs.cs +++ /dev/null @@ -1,33 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; - -namespace Gma.System.MouseKeyHook.HotKeys -{ - /// - /// The event arguments passed when a HotKeySet's OnHotKeysDownHold event is triggered. - /// - public sealed class HotKeyArgs : EventArgs - { - private readonly DateTime m_TimeOfExecution; - - /// - /// Creates an instance of the HotKeyArgs. - /// Time when the event was triggered - /// - public HotKeyArgs(DateTime triggeredAt) - { - m_TimeOfExecution = triggeredAt; - } - - /// - /// Time when the event was triggered - /// - public DateTime Time - { - get { return m_TimeOfExecution; } - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeyArgs.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeyArgs.cs.meta deleted file mode 100644 index 5f3d2e9..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeyArgs.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9cf432a5dbc4d504c803933115b90809 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySet.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySet.cs deleted file mode 100644 index dfbea61..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySet.cs +++ /dev/null @@ -1,287 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Collections.Generic; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.Implementation; - -namespace Gma.System.MouseKeyHook.HotKeys -{ - /// - /// An immutable set of Hot Keys that provides an event for when the set is activated. - /// - public class HotKeySet - { - /// - /// A delegate representing the signature for the OnHotKeysDownHold event - /// - /// - /// - public delegate void HotKeyHandler(object sender, HotKeyArgs e); - - private readonly IEnumerable m_hotkeys; //hotkeys provided by the user. - private readonly Dictionary m_hotkeystate; //Keeps track of the status of the set of Keys - /* - * Example of m_remapping: - * a single key from the set of Keys requested is chosen to be the reference key (aka primary key) - * - * m_remapping[ Keys.LShiftKey ] = Keys.LShiftKey - * m_remapping[ Keys.RShiftKey ] = Keys.LShiftKey - * - * This allows the m_hotkeystate to use a single key (primary key) from the set that will act on behalf of all the keys in the set, - * which in turn reduces to this: - * - * Keys k = Keys.RShiftKey - * Keys primaryKey = PrimaryKeyOf( k ) = Keys.LShiftKey - * m_hotkeystate[ primaryKey ] = true/false - */ - private readonly Dictionary m_remapping; //Used for mapping multiple keys to a single key - private bool m_enabled = true; //enabled by default - //These provide the actual status of whether a set is truly activated or not. - private int m_hotkeydowncount; //number of hot keys down - private int m_remappingCount; - //the number of remappings, i.e., a set of mappings, not the individual count in m_remapping - - /// - /// Creates an instance of the HotKeySet class. Once created, the keys cannot be changed. - /// - /// Set of Hot Keys - public HotKeySet(IEnumerable hotkeys) - { - m_hotkeystate = new Dictionary(); - m_remapping = new Dictionary(); - m_hotkeys = hotkeys; - InitializeKeys(); - } - - /// - /// Enables the ability to name the set - /// - public string Name { get; set; } - - /// - /// Enables the ability to describe what the set is used for or supposed to do - /// - public string Description { get; set; } - - /// - /// Gets the set of hotkeys that this class handles. - /// - public IEnumerable HotKeys - { - get { return m_hotkeys; } - } - - /// - /// Returns whether the set of Keys is activated - /// - public bool HotKeysActivated - { - //The number of sets of remapped keys is used to offset the amount originally specified by the user. - get { return m_hotkeydowncount == (m_hotkeystate.Count - m_remappingCount); } - } - - /// - /// Gets or sets the enabled state of the HotKey set. - /// - public bool Enabled - { - get { return m_enabled; } - set - { - if (value) - InitializeKeys(); //must get the actual current state of each key to update - - m_enabled = value; - } - } - - /// - /// Called as the user holds down the keys in the set. It is NOT triggered the first time the keys are set. - /// - /// - public event HotKeyHandler OnHotKeysDownHold; - - /// - /// Called whenever the hot key set is no longer active. This is essentially a KeyPress event, indicating that a full - /// key cycle has occurred, only for HotKeys because a single key removed from the set constitutes an incomplete set. - /// - public event HotKeyHandler OnHotKeysUp; - - /// - /// Called the first time the down keys are set. It does not get called throughout the duration the user holds it but - /// only the - /// first time it's activated. - /// - public event HotKeyHandler OnHotKeysDownOnce; - - /// - /// General invocation handler - /// - /// - private void InvokeHotKeyHandler(HotKeyHandler hotKeyDelegate) - { - if (hotKeyDelegate != null) - hotKeyDelegate(this, new HotKeyArgs(DateTime.Now)); - } - - /// - /// Adds the keys into the dictionary tracking the keys and gets the real-time status of the Keys - /// from the OS - /// - private void InitializeKeys() - { - foreach (Keys k in HotKeys) - { - if (m_hotkeystate.ContainsKey(k)) - m_hotkeystate.Add(k, false); - - //assign using the current state of the keyboard - m_hotkeystate[k] = KeyboardState.GetCurrent().IsDown(k); - } - } - - /// - /// Unregisters a previously set exclusive or based on the primary key. - /// - /// Any key used in the Registration method used to create an exclusive or set - /// - /// True if successful. False doesn't indicate a failure to unregister, it indicates that the Key is not - /// registered as an Exclusive Or key or it's not the Primary Key. - /// - public bool UnregisterExclusiveOrKey(Keys anyKeyInTheExclusiveOrSet) - { - Keys primaryKey = GetExclusiveOrPrimaryKey(anyKeyInTheExclusiveOrSet); - - if (primaryKey == Keys.None || !m_remapping.ContainsValue(primaryKey)) - return false; - - List keystoremove = new List(); - - foreach (KeyValuePair pair in m_remapping) - { - if (pair.Value == primaryKey) - keystoremove.Add(pair.Key); - } - - foreach (Keys k in keystoremove) - m_remapping.Remove(k); - - --m_remappingCount; - - return true; - } - - /// - /// Registers a group of Keys that are already part of the HotKeySet in order to provide better flexibility among keys. - /// - /// - /// HotKeySet hks = new HotKeySet( new [] { Keys.T, Keys.LShiftKey, Keys.RShiftKey } ); - /// RegisterExclusiveOrKey( new [] { Keys.LShiftKey, Keys.RShiftKey } ); - /// - /// allows either Keys.LShiftKey or Keys.RShiftKey to be combined with Keys.T. - /// - /// - /// - /// Primary key used for mapping or Keys.None on error - public Keys RegisterExclusiveOrKey(IEnumerable orKeySet) - { - //Verification first, so as to not leave the m_remapping with a partial set. - foreach (Keys k in orKeySet) - { - if (!m_hotkeystate.ContainsKey(k)) - return Keys.None; - } - - int i = 0; - Keys primaryKey = Keys.None; - - //Commit after verification - foreach (Keys k in orKeySet) - { - if (i == 0) - primaryKey = k; - - m_remapping[k] = primaryKey; - - ++i; - } - - //Must increase to keep a true count of how many keys are necessary for the activation to be true - ++m_remappingCount; - - return primaryKey; - } - - /// - /// Gets the primary key - /// - /// - /// The primary key if it exists, otherwise Keys.None - private Keys GetExclusiveOrPrimaryKey(Keys k) - { - return (m_remapping.ContainsKey(k) ? m_remapping[k] : Keys.None); - } - - /// - /// Resolves obtaining the key used for state checking. - /// - /// - /// The primary key if it exists, otherwise the key entered - private Keys GetPrimaryKey(Keys k) - { - //If the key is remapped then get the primary keys - return (m_remapping.ContainsKey(k) ? m_remapping[k] : k); - } - - /// - /// - /// - internal void OnKey(KeyEventArgsExt kex) - { - if (!Enabled) - return; - - //Gets the primary key if mapped to a single key or gets the key itself - Keys primaryKey = GetPrimaryKey(kex.KeyCode); - - if (kex.IsKeyDown) - OnKeyDown(primaryKey); - else //reset - OnKeyUp(primaryKey); - } - - private void OnKeyDown(Keys k) - { - //If the keys are activated still then keep invoking the event - if (HotKeysActivated) - InvokeHotKeyHandler(OnHotKeysDownHold); //Call the duration event - - //indicates the key's state is current false but the key is now down - else if (m_hotkeystate.ContainsKey(k) && !m_hotkeystate[k]) - { - m_hotkeystate[k] = true; //key's state is down - ++m_hotkeydowncount; //increase the number of keys down in this set - - if (HotKeysActivated) //because of the increase, check whether the set is activated - InvokeHotKeyHandler(OnHotKeysDownOnce); //Call the initial event - } - } - - private void OnKeyUp(Keys k) - { - if (m_hotkeystate.ContainsKey(k) && m_hotkeystate[k]) //indicates the key's state was down but now it's up - { - bool wasActive = HotKeysActivated; - - m_hotkeystate[k] = false; //key's state is up - --m_hotkeydowncount; //this set is no longer ready - - if (wasActive) - InvokeHotKeyHandler(OnHotKeysUp); //call the KeyUp event because the set is no longer active - } - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySet.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySet.cs.meta deleted file mode 100644 index 5e92c8e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySet.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e6f9d864ee9efe14db3bc0e43168dd63 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetCollection.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetCollection.cs deleted file mode 100644 index c196619..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetCollection.cs +++ /dev/null @@ -1,48 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Collections.Generic; - -namespace Gma.System.MouseKeyHook.HotKeys -{ - /// - /// A collection of HotKeySets - /// - public sealed class HotKeySetCollection : List - { - private KeyChainHandler m_keyChain; - - /// - /// Adds a HotKeySet to the collection. - /// - /// - public new void Add(HotKeySet hks) - { - m_keyChain += hks.OnKey; - base.Add(hks); - } - - /// - /// Removes the HotKeySet from the collection. - /// - /// - public new void Remove(HotKeySet hks) - { - m_keyChain -= hks.OnKey; - base.Remove(hks); - } - - /// - /// Uses a multi-case delegate to invoke individual HotKeySets if the Key is in use by any HotKeySets. - /// - /// - internal void OnKey(KeyEventArgsExt e) - { - if (m_keyChain != null) - m_keyChain(e); - } - - private delegate void KeyChainHandler(KeyEventArgsExt kex); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetCollection.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetCollection.cs.meta deleted file mode 100644 index 7b002c1..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetCollection.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: abb1b5bc0868959418594e18ca2d761e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetsListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetsListener.cs deleted file mode 100644 index 380a90b..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetsListener.cs +++ /dev/null @@ -1,4 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetsListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetsListener.cs.meta deleted file mode 100644 index d8173b0..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/HotKeySetsListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e75fe692f990b2948bff81921d4248f0 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/ReadMe.txt b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/ReadMe.txt deleted file mode 100644 index 12a3f83..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/ReadMe.txt +++ /dev/null @@ -1,85 +0,0 @@ -Until a separate, full-featured test version is ready, here's a quick update that can be made to the TestFormHookListeners: - - //HotKeySetsListener inherits KeyboardHookListener - private readonly HotKeySetsListener m_KeyboardHookManager; - private readonly MouseHookListener m_MouseHookManager; - - public TestFormHookListeners() - { - InitializeComponent(); - //m_KeyboardHookManager = new KeyboardHookListener(new GlobalHooker()); - //m_KeyboardHookManager.Enabled = true; - - m_MouseHookManager = new MouseHookListener( new GlobalHooker() ) { Enabled = true }; - - HotKeySetCollection hkscoll = new HotKeySetCollection(); - m_KeyboardHookManager = new HotKeySetsListener( hkscoll, new GlobalHooker() ) { Enabled = true }; - - BuildHotKeyTests( hkscoll ); - } - - private void BuildHotKeyTests( HotKeySetCollection hkscoll ) - { - //Hot Keys are enabled by default. Use the Enabled property to adjust. - hkscoll.Add( BindHotKeySet( new[] { Keys.T, Keys.LShiftKey }, null, OnHotKeyDownOnce1, OnHotKeyDownHold1, OnHotKeyUp1, "test1" ) ); - hkscoll.Add( BindHotKeySet( new[] { Keys.T, Keys.LControlKey, Keys.RControlKey }, new[] { Keys.LControlKey, Keys.RControlKey }, OnHotKeyDownGeneral2, OnHotKeyDownGeneral2, OnHotKeyUp1, "test2" ) ); - } - - private static HotKeySet BindHotKeySet( IEnumerable ks, - IEnumerable xorKeys, - HotKeySet.HotKeyHandler onEventDownOnce, - HotKeySet.HotKeyHandler onEventDownHold, - HotKeySet.HotKeyHandler onEventUp, - string name ) - { - - //Declare ALL Keys that will be available in this set, including any keys you want to register as an either/or subset - HotKeySet hks = new HotKeySet( ks ); - - //Indicates that the keys in this array will be treated as an OR rather than AND: LShiftKey or RShiftKey - //The keys MUST be a subset of the ks Keys array. - if ( hks.RegisterExclusiveOrKey( xorKeys ) == Keys.None ) //Keys.None indicates an error - { - MessageBox.Show( null, @"Unable to register subset: " + String.Join( ", ", xorKeys ), - @"Subset registration error", MessageBoxButtons.OK, MessageBoxIcon.Error ); - } - - hks.OnHotKeysDownOnce += onEventDownOnce; //The first time the key is down - hks.OnHotKeysDownHold += onEventDownHold; //Fired as long as the user holds the hot keys down but is not fired the first time. - hks.OnHotKeysUp += onEventUp; //Whenever a key from the set is no longer being held down - - hks.Name = ( name ?? String.Empty ); - - return hks; - - } - - private void GeneralHotKeyEvent( object sender, DateTime timeTriggered, string eventType ) - { - HotKeySet hks = sender as HotKeySet; - string kstring = String.Join( ", ", hks.HotKeys ); - Log( String.Format( "{0}: {2} {1} - {3}\r\n", timeTriggered.TimeOfDay, eventType, hks.Name, kstring ) ); - } - - private void OnHotKeyDownGeneral2( object sender, HotKeyArgs e ) - { - GeneralHotKeyEvent( sender, e.Time, "ONCE/HOLD" ); - } - - private void OnHotKeyDownOnce1( object sender, HotKeyArgs e ) - { - GeneralHotKeyEvent( sender, e.Time, "ONCE" ); - } - - private void OnHotKeyDownHold1( object sender, HotKeyArgs e ) - { - GeneralHotKeyEvent( sender, e.Time, "HOLD" ); - } - - private void OnHotKeyUp1( object sender, HotKeyArgs e ) - { - GeneralHotKeyEvent( sender, e.Time, "UP" ); - } - - - diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/ReadMe.txt.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/ReadMe.txt.meta deleted file mode 100644 index 1b8073d..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/HotKeys/ReadMe.txt.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 8fd70ad9e60802b45aec220394edef27 -TextScriptImporter: - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardEvents.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardEvents.cs deleted file mode 100644 index 50d4044..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardEvents.cs +++ /dev/null @@ -1,43 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Windows.Forms; - -namespace Gma.System.MouseKeyHook -{ - /// - /// Provides keyboard events - /// - public interface IKeyboardEvents - { - /// - /// Occurs when a key is pressed. - /// - event KeyEventHandler KeyDown; - - /// - /// Occurs when a key is pressed. - /// - /// - /// Key events occur in the following order: - /// - /// KeyDown - /// KeyPress - /// KeyUp - /// - /// The KeyPress event is not raised by non-character keys; however, the non-character keys do raise the KeyDown and - /// KeyUp events. - /// Use the KeyChar property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - /// To handle keyboard events only in your application and not enable other applications to receive keyboard events, - /// set the property in your form's KeyPress event-handling method to - /// true. - /// - event KeyPressEventHandler KeyPress; - - /// - /// Occurs when a key is released. - /// - event KeyEventHandler KeyUp; - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardEvents.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardEvents.cs.meta deleted file mode 100644 index 1279d43..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardEvents.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8bff586109adc39479700bee873f4bae -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardMouseEvents.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardMouseEvents.cs deleted file mode 100644 index 81c43ae..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardMouseEvents.cs +++ /dev/null @@ -1,15 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; - -namespace Gma.System.MouseKeyHook -{ - /// - /// Provides keyboard and mouse events. - /// - public interface IKeyboardMouseEvents : IKeyboardEvents, IMouseEvents, IDisposable - { - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardMouseEvents.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardMouseEvents.cs.meta deleted file mode 100644 index a6656d4..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IKeyboardMouseEvents.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a43cf702f9faf504a843b7de593673b6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IMouseEvents.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IMouseEvents.cs deleted file mode 100644 index f58c95e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IMouseEvents.cs +++ /dev/null @@ -1,110 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Windows.Forms; - -namespace Gma.System.MouseKeyHook -{ - /// - /// Provides all mouse events. - /// - public interface IMouseEvents - { - /// - /// Occurs when the mouse pointer is moved. - /// - event MouseEventHandler MouseMove; - - /// - /// Occurs when the mouse pointer is moved. - /// - /// - /// This event provides extended arguments of type enabling you to - /// suppress further processing of mouse movement in other applications. - /// - event EventHandler MouseMoveExt; - - /// - /// Occurs when a click was performed by the mouse. - /// - event MouseEventHandler MouseClick; - - /// - /// Occurs when the mouse a mouse button is pressed. - /// - event MouseEventHandler MouseDown; - - /// - /// Occurs when the mouse a mouse button is pressed. - /// - /// - /// This event provides extended arguments of type enabling you to - /// suppress further processing of mouse click in other applications. - /// - event EventHandler MouseDownExt; - - /// - /// Occurs when a mouse button is released. - /// - event MouseEventHandler MouseUp; - - /// - /// Occurs when a mouse button is released. - /// - /// - /// This event provides extended arguments of type enabling you to - /// suppress further processing of mouse click in other applications. - /// - event EventHandler MouseUpExt; - - - /// - /// Occurs when the mouse wheel moves. - /// - event MouseEventHandler MouseWheel; - - /// - /// Occurs when the mouse wheel moves. - /// - /// - /// This event provides extended arguments of type enabling you to - /// suppress further processing of mouse wheel moves in other applications. - /// - event EventHandler MouseWheelExt; - - /// - /// Occurs when a mouse button is double-clicked. - /// - event MouseEventHandler MouseDoubleClick; - - /// - /// Occurs when a drag event has started (left button held down whilst moving more than the system drag threshold). - /// - event MouseEventHandler MouseDragStarted; - - /// - /// Occurs when a drag event has started (left button held down whilst moving more than the system drag threshold). - /// - /// - /// This event provides extended arguments of type enabling you to - /// suppress further processing of mouse movement in other applications. - /// - event EventHandler MouseDragStartedExt; - - /// - /// Occurs when a drag event has completed. - /// - event MouseEventHandler MouseDragFinished; - - /// - /// Occurs when a drag event has completed. - /// - /// - /// This event provides extended arguments of type enabling you to - /// suppress further processing of mouse movement in other applications. - /// - event EventHandler MouseDragFinishedExt; - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IMouseEvents.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IMouseEvents.cs.meta deleted file mode 100644 index 607db88..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/IMouseEvents.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4a5514476bcb36e449910cef0f67921d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation.meta deleted file mode 100644 index 6205692..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 7b22d83a9d2d21f40a0518969040e5ff -folderAsset: yes -DefaultImporter: - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppEventFacade.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppEventFacade.cs deleted file mode 100644 index d0bf3bc..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppEventFacade.cs +++ /dev/null @@ -1,19 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class AppEventFacade : EventFacade - { - protected override MouseListener CreateMouseListener() - { - return new AppMouseListener(); - } - - protected override KeyListener CreateKeyListener() - { - return new AppKeyListener(); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppEventFacade.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppEventFacade.cs.meta deleted file mode 100644 index 5a6ce3b..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppEventFacade.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e61e069a5bc6f704896c3686104b881c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppKeyListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppKeyListener.cs deleted file mode 100644 index 4ac549d..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppKeyListener.cs +++ /dev/null @@ -1,27 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Collections.Generic; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class AppKeyListener : KeyListener - { - public AppKeyListener() - : base(HookHelper.HookAppKeyboard) - { - } - - protected override IEnumerable GetPressEventArgs(CallbackData data) - { - return KeyPressEventArgsExt.FromRawDataApp(data); - } - - protected override KeyEventArgsExt GetDownUpEventArgs(CallbackData data) - { - return KeyEventArgsExt.FromRawDataApp(data); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppKeyListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppKeyListener.cs.meta deleted file mode 100644 index b4bd487..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppKeyListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3697ceb009eb6e746bd138ba6bcc9513 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppMouseListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppMouseListener.cs deleted file mode 100644 index aca3ff4..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppMouseListener.cs +++ /dev/null @@ -1,21 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class AppMouseListener : MouseListener - { - public AppMouseListener() - : base(HookHelper.HookAppMouse) - { - } - - protected override MouseEventExtArgs GetEventArgs(CallbackData data) - { - return MouseEventExtArgs.FromRawDataApp(data); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppMouseListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppMouseListener.cs.meta deleted file mode 100644 index d688723..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/AppMouseListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a350bc2476043194a838ee02d3d202c4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/BaseListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/BaseListener.cs deleted file mode 100644 index 81e550c..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/BaseListener.cs +++ /dev/null @@ -1,26 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal abstract class BaseListener : IDisposable - { - protected BaseListener(Subscribe subscribe) - { - Handle = subscribe(Callback); - } - - protected HookResult Handle { get; set; } - - public void Dispose() - { - Handle.Dispose(); - } - - protected abstract bool Callback(CallbackData data); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/BaseListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/BaseListener.cs.meta deleted file mode 100644 index f1cc366..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/BaseListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4dfaa3dcdb23c5e42866682f65c82624 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/ButtonSet.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/ButtonSet.cs deleted file mode 100644 index c51ac8b..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/ButtonSet.cs +++ /dev/null @@ -1,33 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Windows.Forms; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class ButtonSet - { - private MouseButtons m_Set; - - public ButtonSet() - { - m_Set = MouseButtons.None; - } - - public void Add(MouseButtons element) - { - m_Set |= element; - } - - public void Remove(MouseButtons element) - { - m_Set &= ~element; - } - - public bool Contains(MouseButtons element) - { - return (m_Set & element) != MouseButtons.None; - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/ButtonSet.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/ButtonSet.cs.meta deleted file mode 100644 index 6c7bd66..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/ButtonSet.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e313f6b68d303dd40850940c4d15aad6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Callback.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Callback.cs deleted file mode 100644 index 0c33436..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Callback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal delegate bool Callback(CallbackData data); -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Callback.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Callback.cs.meta deleted file mode 100644 index a4e06c2..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Callback.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c7106e5726083bc419777aa1bd7e0584 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/EventFacade.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/EventFacade.cs deleted file mode 100644 index 54667f3..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/EventFacade.cs +++ /dev/null @@ -1,143 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Windows.Forms; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal abstract class EventFacade : IKeyboardMouseEvents - { - private KeyListener m_KeyListenerCache; - private MouseListener m_MouseListenerCache; - - public event KeyEventHandler KeyDown - { - add { GetKeyListener().KeyDown += value; } - remove { GetKeyListener().KeyDown -= value; } - } - - public event KeyPressEventHandler KeyPress - { - add { GetKeyListener().KeyPress += value; } - remove { GetKeyListener().KeyPress -= value; } - } - - public event KeyEventHandler KeyUp - { - add { GetKeyListener().KeyUp += value; } - remove { GetKeyListener().KeyUp -= value; } - } - - public event MouseEventHandler MouseMove - { - add { GetMouseListener().MouseMove += value; } - remove { GetMouseListener().MouseMove -= value; } - } - - public event EventHandler MouseMoveExt - { - add { GetMouseListener().MouseMoveExt += value; } - remove { GetMouseListener().MouseMoveExt -= value; } - } - - public event MouseEventHandler MouseClick - { - add { GetMouseListener().MouseClick += value; } - remove { GetMouseListener().MouseClick -= value; } - } - - public event MouseEventHandler MouseDown - { - add { GetMouseListener().MouseDown += value; } - remove { GetMouseListener().MouseDown -= value; } - } - - public event EventHandler MouseDownExt - { - add { GetMouseListener().MouseDownExt += value; } - remove { GetMouseListener().MouseDownExt -= value; } - } - - public event MouseEventHandler MouseUp - { - add { GetMouseListener().MouseUp += value; } - remove { GetMouseListener().MouseUp -= value; } - } - - public event EventHandler MouseUpExt - { - add { GetMouseListener().MouseUpExt += value; } - remove { GetMouseListener().MouseUpExt -= value; } - } - - public event MouseEventHandler MouseWheel - { - add { GetMouseListener().MouseWheel += value; } - remove { GetMouseListener().MouseWheel -= value; } - } - - public event EventHandler MouseWheelExt - { - add { GetMouseListener().MouseWheelExt += value; } - remove { GetMouseListener().MouseWheelExt -= value; } - } - - public event MouseEventHandler MouseDoubleClick - { - add { GetMouseListener().MouseDoubleClick += value; } - remove { GetMouseListener().MouseDoubleClick -= value; } - } - - public event MouseEventHandler MouseDragStarted { - add { GetMouseListener().MouseDragStarted += value; } - remove { GetMouseListener().MouseDragStarted -= value; } - } - - public event EventHandler MouseDragStartedExt - { - add { GetMouseListener().MouseDragStartedExt += value; } - remove { GetMouseListener().MouseDragStartedExt -= value; } - } - - public event MouseEventHandler MouseDragFinished - { - add { GetMouseListener().MouseDragFinished += value; } - remove { GetMouseListener().MouseDragFinished -= value; } - } - - public event EventHandler MouseDragFinishedExt - { - add { GetMouseListener().MouseDragFinishedExt += value; } - remove { GetMouseListener().MouseDragFinishedExt -= value; } - } - - public void Dispose() - { - if (m_MouseListenerCache != null) m_MouseListenerCache.Dispose(); - if (m_KeyListenerCache != null) m_KeyListenerCache.Dispose(); - } - - private KeyListener GetKeyListener() - { - var target = m_KeyListenerCache; - if (target != null) return target; - target = CreateKeyListener(); - m_KeyListenerCache = target; - return target; - } - - private MouseListener GetMouseListener() - { - var target = m_MouseListenerCache; - if (target != null) return target; - target = CreateMouseListener(); - m_MouseListenerCache = target; - return target; - } - - protected abstract MouseListener CreateMouseListener(); - protected abstract KeyListener CreateKeyListener(); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/EventFacade.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/EventFacade.cs.meta deleted file mode 100644 index a2a07ea..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/EventFacade.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2978fe448edc3c04388ef0037b24de38 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalEventFacade.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalEventFacade.cs deleted file mode 100644 index bf33319..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalEventFacade.cs +++ /dev/null @@ -1,19 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class GlobalEventFacade : EventFacade - { - protected override MouseListener CreateMouseListener() - { - return new GlobalMouseListener(); - } - - protected override KeyListener CreateKeyListener() - { - return new GlobalKeyListener(); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalEventFacade.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalEventFacade.cs.meta deleted file mode 100644 index 585797d..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalEventFacade.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: cbc3f02ac1de7c04a93ca0652da1b8dc -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalKeyListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalKeyListener.cs deleted file mode 100644 index ed09a87..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalKeyListener.cs +++ /dev/null @@ -1,27 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Collections.Generic; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class GlobalKeyListener : KeyListener - { - public GlobalKeyListener() - : base(HookHelper.HookGlobalKeyboard) - { - } - - protected override IEnumerable GetPressEventArgs(CallbackData data) - { - return KeyPressEventArgsExt.FromRawDataGlobal(data); - } - - protected override KeyEventArgsExt GetDownUpEventArgs(CallbackData data) - { - return KeyEventArgsExt.FromRawDataGlobal(data); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalKeyListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalKeyListener.cs.meta deleted file mode 100644 index 9266d90..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalKeyListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dc35f860e517fc147983684333cef4c4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalMouseListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalMouseListener.cs deleted file mode 100644 index fb517af..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalMouseListener.cs +++ /dev/null @@ -1,73 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Windows.Forms; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal class GlobalMouseListener : MouseListener - { - private readonly int m_SystemDoubleClickTime; - private MouseButtons m_PreviousClicked; - private Point m_PreviousClickedPosition; - private int m_PreviousClickedTime; - - public GlobalMouseListener() - : base(HookHelper.HookGlobalMouse) - { - m_SystemDoubleClickTime = MouseNativeMethods.GetDoubleClickTime(); - } - - protected override void ProcessDown(ref MouseEventExtArgs e) - { - if (IsDoubleClick(e)) - { - e = e.ToDoubleClickEventArgs(); - } - base.ProcessDown(ref e); - } - - protected override void ProcessUp(ref MouseEventExtArgs e) - { - base.ProcessUp(ref e); - if (e.Clicks == 2) - { - StopDoubleClickWaiting(); - } - - if (e.Clicks == 1) - { - StartDoubleClickWaiting(e); - } - } - - private void StartDoubleClickWaiting(MouseEventExtArgs e) - { - m_PreviousClicked = e.Button; - m_PreviousClickedTime = e.Timestamp; - m_PreviousClickedPosition = e.Point; - } - - private void StopDoubleClickWaiting() - { - m_PreviousClicked = MouseButtons.None; - m_PreviousClickedTime = 0; - m_PreviousClickedPosition = new Point(0, 0); - } - - private bool IsDoubleClick(MouseEventExtArgs e) - { - return - e.Button == m_PreviousClicked && - e.Point == m_PreviousClickedPosition && // Click-move-click exception, see Patch 11222 - e.Timestamp - m_PreviousClickedTime <= m_SystemDoubleClickTime; - } - - protected override MouseEventExtArgs GetEventArgs(CallbackData data) - { - return MouseEventExtArgs.FromRawDataGlobal(data); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalMouseListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalMouseListener.cs.meta deleted file mode 100644 index ed0dd9c..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/GlobalMouseListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a74b2a12f2765414281b031d272643af -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyListener.cs deleted file mode 100644 index f42fcec..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyListener.cs +++ /dev/null @@ -1,71 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Collections.Generic; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal abstract class KeyListener : BaseListener, IKeyboardEvents - { - protected KeyListener(Subscribe subscribe) - : base(subscribe) - { - } - - public event KeyEventHandler KeyDown; - public event KeyPressEventHandler KeyPress; - public event KeyEventHandler KeyUp; - - public void InvokeKeyDown(KeyEventArgsExt e) - { - var handler = KeyDown; - if (handler == null || e.Handled || !e.IsKeyDown) - { - return; - } - handler(this, e); - } - - public void InvokeKeyPress(KeyPressEventArgsExt e) - { - var handler = KeyPress; - if (handler == null || e.Handled || e.IsNonChar) - { - return; - } - handler(this, e); - } - - public void InvokeKeyUp(KeyEventArgsExt e) - { - var handler = KeyUp; - if (handler == null || e.Handled || !e.IsKeyUp) - { - return; - } - handler(this, e); - } - - protected override bool Callback(CallbackData data) - { - var eDownUp = GetDownUpEventArgs(data); - var pressEventArgs = GetPressEventArgs(data); - - InvokeKeyDown(eDownUp); - foreach (var pressEventArg in pressEventArgs) - { - InvokeKeyPress(pressEventArg); - } - - InvokeKeyUp(eDownUp); - - return !eDownUp.Handled; - } - - protected abstract IEnumerable GetPressEventArgs(CallbackData data); - protected abstract KeyEventArgsExt GetDownUpEventArgs(CallbackData data); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyListener.cs.meta deleted file mode 100644 index 97e601c..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6dd5c819de01d4e4a8039b3f9aa76260 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyboardState.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyboardState.cs deleted file mode 100644 index 1756903..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyboardState.cs +++ /dev/null @@ -1,111 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Collections.Generic; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - /// - /// Contains a snapshot of a keyboard state at certain moment and provides methods - /// of querying whether specific keys are pressed or locked. - /// - /// - /// This class is basically a managed wrapper of GetKeyboardState API function - /// http://msdn.microsoft.com/en-us/library/ms646299 - /// - internal class KeyboardState - { - private readonly byte[] m_KeyboardStateNative; - - private KeyboardState(byte[] keyboardStateNative) - { - m_KeyboardStateNative = keyboardStateNative; - } - - /// - /// Makes a snapshot of a keyboard state to the moment of call and returns an - /// instance of class. - /// - /// An instance of class representing a snapshot of keyboard state at certain moment. - public static KeyboardState GetCurrent() - { - byte[] keyboardStateNative = new byte[256]; - KeyboardNativeMethods.GetKeyboardState(keyboardStateNative); - return new KeyboardState(keyboardStateNative); - } - - internal byte[] GetNativeState() - { - return m_KeyboardStateNative; - } - - /// - /// Indicates whether specified key was down at the moment when snapshot was created or not. - /// - /// Key (corresponds to the virtual code of the key) - /// true if key was down, false - if key was up. - public bool IsDown(Keys key) - { - byte keyState = GetKeyState(key); - bool isDown = GetHighBit(keyState); - return isDown; - } - - /// - /// Indicate weather specified key was toggled at the moment when snapshot was created or not. - /// - /// Key (corresponds to the virtual code of the key) - /// - /// true if toggle key like (CapsLock, NumLocke, etc.) was on. false if it was off. - /// Ordinal (non toggle) keys return always false. - /// - public bool IsToggled(Keys key) - { - byte keyState = GetKeyState(key); - bool isToggled = GetLowBit(keyState); - return isToggled; - } - - /// - /// Indicates weather every of specified keys were down at the moment when snapshot was created. - /// The method returns false if even one of them was up. - /// - /// Keys to verify whether they were down or not. - /// true - all were down. false - at least one was up. - public bool AreAllDown(IEnumerable keys) - { - foreach (Keys key in keys) - { - if (!IsDown(key)) - { - return true; - } - } - return false; - } - - private byte GetKeyState(Keys key) - { - int virtualKeyCode = (int) key; - if (virtualKeyCode < 0 || virtualKeyCode > 255) - { - throw new ArgumentOutOfRangeException("key", key, "The value must be between 0 and 255."); - } - return m_KeyboardStateNative[virtualKeyCode]; - } - - private static bool GetHighBit(byte value) - { - return (value >> 7) != 0; - } - - private static bool GetLowBit(byte value) - { - return (value & 1) != 0; - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyboardState.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyboardState.cs.meta deleted file mode 100644 index f69e4c8..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/KeyboardState.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 77bc8dd76134c794089b78799eadbb32 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/MouseListener.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/MouseListener.cs deleted file mode 100644 index 246324c..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/MouseListener.cs +++ /dev/null @@ -1,299 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using Gma.System.MouseKeyHook.WinApi; -using System; -using System.Runtime.InteropServices; -using System.Windows.Forms; - -namespace Gma.System.MouseKeyHook.Implementation -{ - // Because it is a P/Invoke method, 'GetSystemMetrics(int)' - // should be defined in a class named NativeMethods, SafeNativeMethods, - // or UnsafeNativeMethods. - // https://msdn.microsoft.com/en-us/library/windows/desktop/ms724385(v=vs.85).aspx - internal static class NativeMethods - { - private const int SM_CXDRAG = 68; - private const int SM_CYDRAG = 69; - - [DllImport("user32.dll")] - private static extern int GetSystemMetrics(int index); - - public static int GetXDragThreshold() - { - return GetSystemMetrics(SM_CXDRAG); - } - - public static int GetYDragThreshold() - { - return GetSystemMetrics(SM_CYDRAG); - } - } - - internal abstract class MouseListener : BaseListener, IMouseEvents - { - private readonly int m_xDragThreshold; - private readonly int m_yDragThreshold; - - private readonly ButtonSet m_DoubleDown; - private readonly ButtonSet m_SingleDown; - - private bool m_IsDragging; - - private Point m_PreviousPosition; - private Point m_DragStartPosition; - private readonly Point m_UninitialisedPoint = new Point(-1, -1); - - protected MouseListener(Subscribe subscribe) - : base(subscribe) - { - m_xDragThreshold = NativeMethods.GetXDragThreshold(); - m_yDragThreshold = NativeMethods.GetYDragThreshold(); - m_IsDragging = false; - - m_PreviousPosition = m_UninitialisedPoint; - m_DragStartPosition = m_UninitialisedPoint; - - m_DoubleDown = new ButtonSet(); - m_SingleDown = new ButtonSet(); - } - - protected override bool Callback(CallbackData data) - { - var e = GetEventArgs(data); - - if (e.IsMouseButtonDown) - { - ProcessDown(ref e); - } - - if (e.IsMouseButtonUp) - { - ProcessUp(ref e); - } - - if (e.WheelScrolled) - { - ProcessWheel(ref e); - } - - if (HasMoved(e.Point)) - { - ProcessMove(ref e); - } - - ProcessDrag(ref e); - - return !e.Handled; - } - - protected abstract MouseEventExtArgs GetEventArgs(CallbackData data); - - protected virtual void ProcessWheel(ref MouseEventExtArgs e) - { - OnWheel(e); - OnWheelExt(e); - } - - protected virtual void ProcessDown(ref MouseEventExtArgs e) - { - OnDown(e); - OnDownExt(e); - if (e.Handled) - { - return; - } - - if (e.Clicks == 2) - { - m_DoubleDown.Add(e.Button); - } - - if (e.Clicks == 1) - { - m_SingleDown.Add(e.Button); - } - } - - protected virtual void ProcessUp(ref MouseEventExtArgs e) - { - if (m_SingleDown.Contains(e.Button)) - { - OnUp(e); - OnUpExt(e); - if (e.Handled) - { - return; - } - OnClick(e); - m_SingleDown.Remove(e.Button); - } - - if (m_DoubleDown.Contains(e.Button)) - { - e = e.ToDoubleClickEventArgs(); - OnUp(e); - OnDoubleClick(e); - m_DoubleDown.Remove(e.Button); - } - } - - private void ProcessMove(ref MouseEventExtArgs e) - { - m_PreviousPosition = e.Point; - - OnMove(e); - OnMoveExt(e); - } - - private void ProcessDrag(ref MouseEventExtArgs e) - { - if (m_SingleDown.Contains(MouseButtons.Left)) - { - if (m_DragStartPosition.Equals(m_UninitialisedPoint)) - { - m_DragStartPosition = e.Point; - } - - ProcessDragStarted(ref e); - } - else - { - m_DragStartPosition = m_UninitialisedPoint; - ProcessDragFinished(ref e); - } - } - - private void ProcessDragStarted(ref MouseEventExtArgs e) - { - if (!m_IsDragging) - { - var isXDragging = Math.Abs(e.Point.X - m_DragStartPosition.X) > m_xDragThreshold; - var isYDragging = Math.Abs(e.Point.Y - m_DragStartPosition.Y) > m_yDragThreshold; - m_IsDragging = isXDragging || isYDragging; - - if (m_IsDragging) - { - OnDragStarted(e); - OnDragStartedExt(e); - } - } - } - - private void ProcessDragFinished(ref MouseEventExtArgs e) - { - if (m_IsDragging) - { - OnDragFinished(e); - OnDragFinishedExt(e); - m_IsDragging = false; - } - } - - private bool HasMoved(Point actualPoint) - { - return m_PreviousPosition != actualPoint; - } - - public event MouseEventHandler MouseMove; - public event EventHandler MouseMoveExt; - public event MouseEventHandler MouseClick; - public event MouseEventHandler MouseDown; - public event EventHandler MouseDownExt; - public event MouseEventHandler MouseUp; - public event EventHandler MouseUpExt; - public event MouseEventHandler MouseWheel; - public event EventHandler MouseWheelExt; - public event MouseEventHandler MouseDoubleClick; - public event MouseEventHandler MouseDragStarted; - public event EventHandler MouseDragStartedExt; - public event MouseEventHandler MouseDragFinished; - public event EventHandler MouseDragFinishedExt; - - protected virtual void OnMove(MouseEventArgs e) - { - var handler = MouseMove; - if (handler != null) handler(this, e); - } - - protected virtual void OnMoveExt(MouseEventExtArgs e) - { - var handler = MouseMoveExt; - if (handler != null) handler(this, e); - } - - protected virtual void OnClick(MouseEventArgs e) - { - var handler = MouseClick; - if (handler != null) handler(this, e); - } - - protected virtual void OnDown(MouseEventArgs e) - { - var handler = MouseDown; - if (handler != null) handler(this, e); - } - - protected virtual void OnDownExt(MouseEventExtArgs e) - { - var handler = MouseDownExt; - if (handler != null) handler(this, e); - } - - protected virtual void OnUp(MouseEventArgs e) - { - var handler = MouseUp; - if (handler != null) handler(this, e); - } - - protected virtual void OnUpExt(MouseEventExtArgs e) - { - var handler = MouseUpExt; - if (handler != null) handler(this, e); - } - - protected virtual void OnWheel(MouseEventArgs e) - { - var handler = MouseWheel; - if (handler != null) handler(this, e); - } - - protected virtual void OnWheelExt(MouseEventExtArgs e) - { - var handler = MouseWheelExt; - if (handler != null) handler(this, e); - } - - protected virtual void OnDoubleClick(MouseEventArgs e) - { - var handler = MouseDoubleClick; - if (handler != null) handler(this, e); - } - - protected virtual void OnDragStarted(MouseEventArgs e) - { - var handler = MouseDragStarted; - if (handler != null) handler(this, e); - } - - protected virtual void OnDragStartedExt(MouseEventExtArgs e) - { - var handler = MouseDragStartedExt; - if (handler != null) handler(this, e); - } - - protected virtual void OnDragFinished(MouseEventArgs e) - { - var handler = MouseDragFinished; - if (handler != null) handler(this, e); - } - - protected virtual void OnDragFinishedExt(MouseEventExtArgs e) - { - var handler = MouseDragFinishedExt; - if (handler != null) handler(this, e); - } - } -} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/MouseListener.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/MouseListener.cs.meta deleted file mode 100644 index cbf2a28..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/MouseListener.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 93d13a4abdb37f14084deafe5847b216 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Subscribe.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Subscribe.cs deleted file mode 100644 index 09324cb..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Subscribe.cs +++ /dev/null @@ -1,10 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook.Implementation -{ - internal delegate HookResult Subscribe(Callback callbck); -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Subscribe.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Subscribe.cs.meta deleted file mode 100644 index 34a563c..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/Implementation/Subscribe.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d48ae441d13f11643935ea50af54d521 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyEventArgsExt.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyEventArgsExt.cs deleted file mode 100644 index c84b12f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyEventArgsExt.cs +++ /dev/null @@ -1,128 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.Implementation; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook -{ - /// - /// Provides extended argument data for the or - /// event. - /// - public class KeyEventArgsExt : KeyEventArgs - { - /// - /// Initializes a new instance of the class. - /// - /// - public KeyEventArgsExt(Keys keyData) - : base(keyData) - { - } - - internal KeyEventArgsExt(Keys keyData, int timestamp, bool isKeyDown, bool isKeyUp) - : this(keyData) - { - Timestamp = timestamp; - IsKeyDown = isKeyDown; - IsKeyUp = isKeyUp; - } - - /// - /// The system tick count of when the event occurred. - /// - public int Timestamp { get; private set; } - - /// - /// True if event signals key down.. - /// - public bool IsKeyDown { get; private set; } - - /// - /// True if event signals key up. - /// - public bool IsKeyUp { get; private set; } - - internal static KeyEventArgsExt FromRawDataApp(CallbackData data) - { - var wParam = data.WParam; - var lParam = data.LParam; - - //http://msdn.microsoft.com/en-us/library/ms644984(v=VS.85).aspx - - const uint maskKeydown = 0x40000000; // for bit 30 - const uint maskKeyup = 0x80000000; // for bit 31 - - int timestamp = Environment.TickCount; - - var flags = (uint) lParam.ToInt64(); - - //bit 30 Specifies the previous key state. The value is 1 if the key is down before the message is sent; it is 0 if the key is up. - bool wasKeyDown = (flags & maskKeydown) > 0; - //bit 31 Specifies the transition state. The value is 0 if the key is being pressed and 1 if it is being released. - bool isKeyReleased = (flags & maskKeyup) > 0; - - Keys keyData = AppendModifierStates((Keys) wParam); - - bool isKeyDown = !wasKeyDown && !isKeyReleased; - bool isKeyUp = wasKeyDown && isKeyReleased; - - return new KeyEventArgsExt(keyData, timestamp, isKeyDown, isKeyUp); - } - - internal static KeyEventArgsExt FromRawDataGlobal(CallbackData data) - { - var wParam = data.WParam; - var lParam = data.LParam; - var keyboardHookStruct = - (KeyboardHookStruct) Marshal.PtrToStructure(lParam, typeof (KeyboardHookStruct)); - var keyData = AppendModifierStates((Keys) keyboardHookStruct.VirtualKeyCode); - - var keyCode = (int) wParam; - bool isKeyDown = (keyCode == Messages.WM_KEYDOWN || keyCode == Messages.WM_SYSKEYDOWN); - bool isKeyUp = (keyCode == Messages.WM_KEYUP || keyCode == Messages.WM_SYSKEYUP); - - return new KeyEventArgsExt(keyData, keyboardHookStruct.Time, isKeyDown, isKeyUp); - } - - // # It is not possible to distinguish Keys.LControlKey and Keys.RControlKey when they are modifiers - // Check for Keys.Control instead - // Same for Shift and Alt(Menu) - // See more at http://www.tech-archive.net/Archive/DotNet/microsoft.public.dotnet.framework.windowsforms/2008-04/msg00127.html # - - // A shortcut to make life easier - private static bool CheckModifier(int vKey) - { - return (KeyboardNativeMethods.GetKeyState(vKey) & 0x8000) > 0; - } - - private static Keys AppendModifierStates(Keys keyData) - { - // Is Control being held down? - bool control = CheckModifier(KeyboardNativeMethods.VK_CONTROL); - // Is Shift being held down? - bool shift = CheckModifier(KeyboardNativeMethods.VK_SHIFT); - // Is Alt being held down? - bool alt = CheckModifier(KeyboardNativeMethods.VK_MENU); - - // Windows keys - // # combine LWin and RWin key with other keys will potentially corrupt the data - // notable F5 | Keys.LWin == F12, see https://globalmousekeyhook.codeplex.com/workitem/1188 - // and the KeyEventArgs.KeyData don't recognize combined data either - - // Function (Fn) key - // # CANNOT determine state due to conversion inside keyboard - // See http://en.wikipedia.org/wiki/Fn_key#Technical_details # - - return keyData | - (control ? Keys.Control : Keys.None) | - (shift ? Keys.Shift : Keys.None) | - (alt ? Keys.Alt : Keys.None); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyEventArgsExt.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyEventArgsExt.cs.meta deleted file mode 100644 index 225be61..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyEventArgsExt.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 938fc2617ef5f70418a407959dce8be6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyPressEventArgsExt.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyPressEventArgsExt.cs deleted file mode 100644 index 31f56b4..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyPressEventArgsExt.cs +++ /dev/null @@ -1,119 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Collections.Generic; -using System.Runtime.InteropServices; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.Implementation; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook -{ - /// - /// Provides extended data for the event. - /// - public class KeyPressEventArgsExt : KeyPressEventArgs - { - internal KeyPressEventArgsExt(char keyChar, int timestamp) - : base(keyChar) - { - IsNonChar = keyChar == (char) 0x0; - Timestamp = timestamp; - } - - /// - /// Initializes a new instance of the class. - /// - /// - /// Character corresponding to the key pressed. 0 char if represents a system or functional non char - /// key. - /// - public KeyPressEventArgsExt(char keyChar) - : this(keyChar, Environment.TickCount) - { - } - - /// - /// True if represents a system or functional non char key. - /// - public bool IsNonChar { get; private set; } - - /// - /// The system tick count of when the event occurred. - /// - public int Timestamp { get; private set; } - - internal static IEnumerable FromRawDataApp(CallbackData data) - { - var wParam = data.WParam; - var lParam = data.LParam; - - //http://msdn.microsoft.com/en-us/library/ms644984(v=VS.85).aspx - - const uint maskKeydown = 0x40000000; // for bit 30 - const uint maskKeyup = 0x80000000; // for bit 31 - const uint maskScanCode = 0xff0000; // for bit 23-16 - - var flags = (uint) lParam.ToInt64(); - - //bit 30 Specifies the previous key state. The value is 1 if the key is down before the message is sent; it is 0 if the key is up. - var wasKeyDown = (flags & maskKeydown) > 0; - //bit 31 Specifies the transition state. The value is 0 if the key is being pressed and 1 if it is being released. - var isKeyReleased = (flags & maskKeyup) > 0; - - if (!wasKeyDown && !isKeyReleased) - { - yield break; - } - - var virtualKeyCode = (int) wParam; - var scanCode = checked((int) (flags & maskScanCode)); - const int fuState = 0; - - char[] chars; - - KeyboardNativeMethods.TryGetCharFromKeyboardState(virtualKeyCode, scanCode, fuState, out chars); - if (chars == null) yield break; - foreach (var ch in chars) - { - yield return new KeyPressEventArgsExt(ch); - } - } - - internal static IEnumerable FromRawDataGlobal(CallbackData data) - { - var wParam = data.WParam; - var lParam = data.LParam; - - if ((int) wParam != Messages.WM_KEYDOWN) - { - yield break; - } - - KeyboardHookStruct keyboardHookStruct = - (KeyboardHookStruct) Marshal.PtrToStructure(lParam, typeof (KeyboardHookStruct)); - - var virtualKeyCode = keyboardHookStruct.VirtualKeyCode; - var scanCode = keyboardHookStruct.ScanCode; - var fuState = keyboardHookStruct.Flags; - - if (virtualKeyCode == KeyboardNativeMethods.VK_PACKET) - { - var ch = (char) scanCode; - yield return new KeyPressEventArgsExt(ch, keyboardHookStruct.Time); - } - else - { - char[] chars; - KeyboardNativeMethods.TryGetCharFromKeyboardState(virtualKeyCode, scanCode, fuState, out chars); - if (chars == null) yield break; - foreach (var current in chars) - { - yield return new KeyPressEventArgsExt(current, keyboardHookStruct.Time); - } - } - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyPressEventArgsExt.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyPressEventArgsExt.cs.meta deleted file mode 100644 index 55ed590..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/KeyPressEventArgsExt.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 46eeb9684c5cf11418208f4ce9e5b549 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/MouseEventExtArgs.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/MouseEventExtArgs.cs deleted file mode 100644 index 4f93091..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/MouseEventExtArgs.cs +++ /dev/null @@ -1,211 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.WinApi; - -namespace Gma.System.MouseKeyHook -{ - /// - /// Provides extended data for the MouseClickExt and MouseMoveExt events. - /// - public class MouseEventExtArgs : MouseEventArgs - { - /// - /// Initializes a new instance of the class. - /// - /// One of the MouseButtons values indicating which mouse button was pressed. - /// The number of times a mouse button was pressed. - /// The x and y coordinate of a mouse click, in pixels. - /// A signed count of the number of detents the wheel has rotated. - /// The system tick count when the event occurred. - /// True if event signals mouse button down. - /// True if event signals mouse button up. - internal MouseEventExtArgs(MouseButtons buttons, int clicks, Point point, int delta, int timestamp, - bool isMouseButtonDown, bool isMouseButtonUp) - : base(buttons, clicks, point.X, point.Y, delta) - { - IsMouseButtonDown = isMouseButtonDown; - IsMouseButtonUp = isMouseButtonUp; - Timestamp = timestamp; - } - - /// - /// Set this property to true inside your event handler to prevent further processing of the event in other - /// applications. - /// - public bool Handled { get; set; } - - /// - /// True if event contains information about wheel scroll. - /// - public bool WheelScrolled - { - get { return Delta != 0; } - } - - /// - /// True if event signals a click. False if it was only a move or wheel scroll. - /// - public bool Clicked - { - get { return Clicks > 0; } - } - - /// - /// True if event signals mouse button down. - /// - public bool IsMouseButtonDown { get; private set; } - - /// - /// True if event signals mouse button up. - /// - public bool IsMouseButtonUp { get; private set; } - - /// - /// The system tick count of when the event occurred. - /// - public int Timestamp { get; private set; } - - /// - /// - internal Point Point - { - get { return new Point(X, Y); } - } - - internal static MouseEventExtArgs FromRawDataApp(CallbackData data) - { - var wParam = data.WParam; - var lParam = data.LParam; - - AppMouseStruct marshalledMouseStruct = - (AppMouseStruct) Marshal.PtrToStructure(lParam, typeof (AppMouseStruct)); - return FromRawDataUniversal(wParam, marshalledMouseStruct.ToMouseStruct()); - } - - internal static MouseEventExtArgs FromRawDataGlobal(CallbackData data) - { - var wParam = data.WParam; - var lParam = data.LParam; - - MouseStruct marshalledMouseStruct = (MouseStruct) Marshal.PtrToStructure(lParam, typeof (MouseStruct)); - return FromRawDataUniversal(wParam, marshalledMouseStruct); - } - - /// - /// Creates from relevant mouse data. - /// - /// First Windows Message parameter. - /// A MouseStruct containing information from which to construct MouseEventExtArgs. - /// A new MouseEventExtArgs object. - private static MouseEventExtArgs FromRawDataUniversal(IntPtr wParam, MouseStruct mouseInfo) - { - MouseButtons button = MouseButtons.None; - short mouseDelta = 0; - int clickCount = 0; - - bool isMouseButtonDown = false; - bool isMouseButtonUp = false; - - - switch ((long) wParam) - { - case Messages.WM_LBUTTONDOWN: - isMouseButtonDown = true; - button = MouseButtons.Left; - clickCount = 1; - break; - case Messages.WM_LBUTTONUP: - isMouseButtonUp = true; - button = MouseButtons.Left; - clickCount = 1; - break; - case Messages.WM_LBUTTONDBLCLK: - isMouseButtonDown = true; - button = MouseButtons.Left; - clickCount = 2; - break; - case Messages.WM_RBUTTONDOWN: - isMouseButtonDown = true; - button = MouseButtons.Right; - clickCount = 1; - break; - case Messages.WM_RBUTTONUP: - isMouseButtonUp = true; - button = MouseButtons.Right; - clickCount = 1; - break; - case Messages.WM_RBUTTONDBLCLK: - isMouseButtonDown = true; - button = MouseButtons.Right; - clickCount = 2; - break; - case Messages.WM_MBUTTONDOWN: - isMouseButtonDown = true; - button = MouseButtons.Middle; - clickCount = 1; - break; - case Messages.WM_MBUTTONUP: - isMouseButtonUp = true; - button = MouseButtons.Middle; - clickCount = 1; - break; - case Messages.WM_MBUTTONDBLCLK: - isMouseButtonDown = true; - button = MouseButtons.Middle; - clickCount = 2; - break; - case Messages.WM_MOUSEWHEEL: - mouseDelta = mouseInfo.MouseData; - break; - case Messages.WM_XBUTTONDOWN: - button = mouseInfo.MouseData == 1 - ? MouseButtons.XButton1 - : MouseButtons.XButton2; - isMouseButtonDown = true; - clickCount = 1; - break; - - case Messages.WM_XBUTTONUP: - button = mouseInfo.MouseData == 1 - ? MouseButtons.XButton1 - : MouseButtons.XButton2; - isMouseButtonUp = true; - clickCount = 1; - break; - - case Messages.WM_XBUTTONDBLCLK: - isMouseButtonDown = true; - button = mouseInfo.MouseData == 1 - ? MouseButtons.XButton1 - : MouseButtons.XButton2; - clickCount = 2; - break; - - case Messages.WM_MOUSEHWHEEL: - mouseDelta = mouseInfo.MouseData; - break; - } - - var e = new MouseEventExtArgs( - button, - clickCount, - mouseInfo.Point, - mouseDelta, - mouseInfo.Timestamp, - isMouseButtonDown, - isMouseButtonUp); - - return e; - } - - internal MouseEventExtArgs ToDoubleClickEventArgs() - { - return new MouseEventExtArgs(Button, 2, Point, Delta, Timestamp, IsMouseButtonDown, IsMouseButtonUp); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/MouseEventExtArgs.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/MouseEventExtArgs.cs.meta deleted file mode 100644 index 4b47929..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/MouseEventExtArgs.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e8be406248b8307489268b31e9d84901 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi.meta deleted file mode 100644 index 2e6c6db..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 62fbb5b66b7724248964d7e4dd083c09 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/AppMouseStruct.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/AppMouseStruct.cs deleted file mode 100644 index 1763a3e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/AppMouseStruct.cs +++ /dev/null @@ -1,66 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - /// - /// The AppMouseStruct structure contains information about a application-level mouse input event. - /// - /// - /// See full documentation at http://globalmousekeyhook.codeplex.com/wikipage?title=MouseStruct - /// - [StructLayout(LayoutKind.Explicit)] - internal struct AppMouseStruct - { - /// - /// Specifies a Point structure that contains the X- and Y-coordinates of the cursor, in screen coordinates. - /// - [FieldOffset(0x00)] public Point Point; - - /// - /// Specifies information associated with the message. - /// - /// - /// The possible values are: - /// - /// - /// 0 - No Information - /// - /// - /// 1 - X-Button1 Click - /// - /// - /// 2 - X-Button2 Click - /// - /// - /// 120 - Mouse Scroll Away from User - /// - /// - /// -120 - Mouse Scroll Toward User - /// - /// - /// - [FieldOffset(0x16)] public Int16 MouseData_x86; - [FieldOffset(0x22)] public Int16 MouseData_x64; - - /// - /// Converts the current into a . - /// - /// - /// - /// The AppMouseStruct does not have a timestamp, thus one is generated at the time of this call. - /// - public MouseStruct ToMouseStruct() - { - MouseStruct tmp = new MouseStruct(); - tmp.Point = Point; - tmp.MouseData = (IntPtr.Size == 4) ? MouseData_x86 : MouseData_x64; - tmp.Timestamp = Environment.TickCount; - return tmp; - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/AppMouseStruct.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/AppMouseStruct.cs.meta deleted file mode 100644 index a0c58da..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/AppMouseStruct.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a350892e4639d5340bd6a3e4ded2578f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/CallbackData.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/CallbackData.cs deleted file mode 100644 index 6150993..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/CallbackData.cs +++ /dev/null @@ -1,30 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal struct CallbackData - { - private readonly IntPtr m_LParam; - private readonly IntPtr m_WParam; - - public CallbackData(IntPtr wParam, IntPtr lParam) - { - m_WParam = wParam; - m_LParam = lParam; - } - - public IntPtr WParam - { - get { return m_WParam; } - } - - public IntPtr LParam - { - get { return m_LParam; } - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/CallbackData.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/CallbackData.cs.meta deleted file mode 100644 index ca8367a..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/CallbackData.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 024c47b439f09a24f9b5e1304a09a352 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookHelper.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookHelper.cs deleted file mode 100644 index 370ca63..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookHelper.cs +++ /dev/null @@ -1,101 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.ComponentModel; -using System.Diagnostics; -using System.Runtime.InteropServices; -using Gma.System.MouseKeyHook.Implementation; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class HookHelper - { - public static HookResult HookAppMouse(Callback callback) - { - return HookApp(HookIds.WH_MOUSE, callback); - } - - public static HookResult HookAppKeyboard(Callback callback) - { - return HookApp(HookIds.WH_KEYBOARD, callback); - } - - public static HookResult HookGlobalMouse(Callback callback) - { - return HookGlobal(HookIds.WH_MOUSE_LL, callback); - } - - public static HookResult HookGlobalKeyboard(Callback callback) - { - return HookGlobal(HookIds.WH_KEYBOARD_LL, callback); - } - - private static HookResult HookApp(int hookId, Callback callback) - { - HookProcedure hookProcedure = (code, param, lParam) => HookProcedure(code, param, lParam, callback); - - var hookHandle = HookNativeMethods.SetWindowsHookEx( - hookId, - hookProcedure, - IntPtr.Zero, - ThreadNativeMethods.GetCurrentThreadId()); - - if (hookHandle.IsInvalid) - { - ThrowLastUnmanagedErrorAsException(); - } - - return new HookResult(hookHandle, hookProcedure); - } - - private static HookResult HookGlobal(int hookId, Callback callback) - { - HookProcedure hookProcedure = (code, param, lParam) => HookProcedure(code, param, lParam, callback); - - var hookHandle = HookNativeMethods.SetWindowsHookEx( - hookId, - hookProcedure, - Process.GetCurrentProcess().MainModule.BaseAddress, - 0); - - if (hookHandle.IsInvalid) - { - ThrowLastUnmanagedErrorAsException(); - } - - return new HookResult(hookHandle, hookProcedure); - } - - private static IntPtr HookProcedure(int nCode, IntPtr wParam, IntPtr lParam, Callback callback) - { - var passThrough = nCode != 0; - if (passThrough) - { - return CallNextHookEx(nCode, wParam, lParam); - } - - var callbackData = new CallbackData(wParam, lParam); - var continueProcessing = callback(callbackData); - - if (!continueProcessing) - { - return new IntPtr(-1); - } - - return CallNextHookEx(nCode, wParam, lParam); - } - - private static IntPtr CallNextHookEx(int nCode, IntPtr wParam, IntPtr lParam) - { - return HookNativeMethods.CallNextHookEx(IntPtr.Zero, nCode, wParam, lParam); - } - - private static void ThrowLastUnmanagedErrorAsException() - { - var errorCode = Marshal.GetLastWin32Error(); - throw new Win32Exception(errorCode); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookHelper.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookHelper.cs.meta deleted file mode 100644 index 2ffc1d5..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookHelper.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d784d35b81eae86468e7c2ad3fa8656e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookIds.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookIds.cs deleted file mode 100644 index 4a1f83f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookIds.cs +++ /dev/null @@ -1,30 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class HookIds - { - /// - /// Installs a hook procedure that monitors mouse messages. For more information, see the MouseProc hook procedure. - /// - internal const int WH_MOUSE = 7; - - /// - /// Installs a hook procedure that monitors keystroke messages. For more information, see the KeyboardProc hook - /// procedure. - /// - internal const int WH_KEYBOARD = 2; - - /// - /// Windows NT/2000/XP/Vista/7: Installs a hook procedure that monitors low-level mouse input events. - /// - internal const int WH_MOUSE_LL = 14; - - /// - /// Windows NT/2000/XP/Vista/7: Installs a hook procedure that monitors low-level keyboard input events. - /// - internal const int WH_KEYBOARD_LL = 13; - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookIds.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookIds.cs.meta deleted file mode 100644 index 4031457..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookIds.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2db94f1f200cfc042aae38f52c201ae6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookNativeMethods.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookNativeMethods.cs deleted file mode 100644 index 6c33d0d..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookNativeMethods.cs +++ /dev/null @@ -1,89 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class HookNativeMethods - { - /// - /// The CallNextHookEx function passes the hook information to the next hook procedure in the current hook chain. - /// A hook procedure can call this function either before or after processing the hook information. - /// - /// This parameter is ignored. - /// [in] Specifies the hook code passed to the current hook procedure. - /// [in] Specifies the wParam value passed to the current hook procedure. - /// [in] Specifies the lParam value passed to the current hook procedure. - /// This value is returned by the next hook procedure in the chain. - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/hooks/hookreference/hookfunctions/setwindowshookex.asp - /// - [DllImport("user32.dll", CharSet = CharSet.Auto, - CallingConvention = CallingConvention.StdCall)] - internal static extern IntPtr CallNextHookEx( - IntPtr idHook, - int nCode, - IntPtr wParam, - IntPtr lParam); - - /// - /// The SetWindowsHookEx function installs an application-defined hook procedure into a hook chain. - /// You would install a hook procedure to monitor the system for certain types of events. These events - /// are associated either with a specific thread or with all threads in the same desktop as the calling thread. - /// - /// - /// [in] Specifies the type of hook procedure to be installed. This parameter can be one of the following values. - /// - /// - /// [in] Pointer to the hook procedure. If the dwThreadId parameter is zero or specifies the identifier of a - /// thread created by a different process, the lpfn parameter must point to a hook procedure in a dynamic-link - /// library (DLL). Otherwise, lpfn can point to a hook procedure in the code associated with the current process. - /// - /// - /// [in] Handle to the DLL containing the hook procedure pointed to by the lpfn parameter. - /// The hMod parameter must be set to NULL if the dwThreadId parameter specifies a thread created by - /// the current process and if the hook procedure is within the code associated with the current process. - /// - /// - /// [in] Specifies the identifier of the thread with which the hook procedure is to be associated. - /// If this parameter is zero, the hook procedure is associated with all existing threads running in the - /// same desktop as the calling thread. - /// - /// - /// If the function succeeds, the return value is the handle to the hook procedure. - /// If the function fails, the return value is NULL. To get extended error information, call GetLastError. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/hooks/hookreference/hookfunctions/setwindowshookex.asp - /// - [DllImport("user32.dll", CharSet = CharSet.Auto, - CallingConvention = CallingConvention.StdCall, SetLastError = true)] - internal static extern HookProcedureHandle SetWindowsHookEx( - int idHook, - HookProcedure lpfn, - IntPtr hMod, - int dwThreadId); - - /// - /// The UnhookWindowsHookEx function removes a hook procedure installed in a hook chain by the SetWindowsHookEx - /// function. - /// - /// - /// [in] Handle to the hook to be removed. This parameter is a hook handle obtained by a previous call to - /// SetWindowsHookEx. - /// - /// - /// If the function succeeds, the return value is nonzero. - /// If the function fails, the return value is zero. To get extended error information, call GetLastError. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/hooks/hookreference/hookfunctions/setwindowshookex.asp - /// - [DllImport("user32.dll", CharSet = CharSet.Auto, - CallingConvention = CallingConvention.StdCall, SetLastError = true)] - internal static extern int UnhookWindowsHookEx(IntPtr idHook); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookNativeMethods.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookNativeMethods.cs.meta deleted file mode 100644 index 25fcdf5..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookNativeMethods.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c06feea7be269554da0f9b2e206745d4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedure.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedure.cs deleted file mode 100644 index c77276f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedure.cs +++ /dev/null @@ -1,40 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; - -namespace Gma.System.MouseKeyHook.WinApi -{ - /// - /// The CallWndProc hook procedure is an application-defined or library-defined callback - /// function used with the SetWindowsHookEx function. The HOOKPROC type defines a pointer - /// to this callback function. CallWndProc is a placeholder for the application-defined - /// or library-defined function name. - /// - /// - /// [in] Specifies whether the hook procedure must process the message. - /// If nCode is HC_ACTION, the hook procedure must process the message. - /// If nCode is less than zero, the hook procedure must pass the message to the - /// CallNextHookEx function without further processing and must return the - /// value returned by CallNextHookEx. - /// - /// - /// [in] Specifies whether the message was sent by the current thread. - /// If the message was sent by the current thread, it is nonzero; otherwise, it is zero. - /// - /// - /// [in] Pointer to a CWPSTRUCT structure that contains details about the message. - /// - /// - /// If nCode is less than zero, the hook procedure must return the value returned by CallNextHookEx. - /// If nCode is greater than or equal to zero, it is highly recommended that you call CallNextHookEx - /// and return the value it returns; otherwise, other applications that have installed WH_CALLWNDPROC - /// hooks will not receive hook notifications and may behave incorrectly as a result. If the hook - /// procedure does not call CallNextHookEx, the return value should be zero. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/hooks/hookreference/hookfunctions/callwndproc.asp - /// - public delegate IntPtr HookProcedure(int nCode, IntPtr wParam, IntPtr lParam); -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedure.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedure.cs.meta deleted file mode 100644 index 13fcd6f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedure.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e87177e2b922ca640ad64f0a6d335993 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedureHandle.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedureHandle.cs deleted file mode 100644 index 5cc89d5..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedureHandle.cs +++ /dev/null @@ -1,31 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Windows.Forms; -using Microsoft.Win32.SafeHandles; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal class HookProcedureHandle : SafeHandleZeroOrMinusOneIsInvalid - { - private static bool _closing; - - static HookProcedureHandle() - { - Application.ApplicationExit += (sender, e) => { _closing = true; }; - } - - public HookProcedureHandle() - : base(true) - { - } - - protected override bool ReleaseHandle() - { - //NOTE Calling Unhook during processexit causes deley - if (_closing) return true; - return HookNativeMethods.UnhookWindowsHookEx(handle) != 0; - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedureHandle.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedureHandle.cs.meta deleted file mode 100644 index 16eaa93..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookProcedureHandle.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ad7b9f46d89257e4c9a16103f5107077 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookResult.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookResult.cs deleted file mode 100644 index bfffac8..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookResult.cs +++ /dev/null @@ -1,35 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal class HookResult : IDisposable - { - private readonly HookProcedureHandle m_Handle; - private readonly HookProcedure m_Procedure; - - public HookResult(HookProcedureHandle handle, HookProcedure procedure) - { - m_Handle = handle; - m_Procedure = procedure; - } - - public HookProcedureHandle Handle - { - get { return m_Handle; } - } - - public HookProcedure Procedure - { - get { return m_Procedure; } - } - - public void Dispose() - { - m_Handle.Dispose(); - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookResult.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookResult.cs.meta deleted file mode 100644 index 8ee0543..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HookResult.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8dde90dc3d50d0e4c87a01a08b47ea19 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HotkeysNativeMethods.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HotkeysNativeMethods.cs deleted file mode 100644 index 2c32ee4..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HotkeysNativeMethods.cs +++ /dev/null @@ -1,51 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class HotkeysNativeMethods - { - /// - /// Defines a system-wide hot key. - /// - /// - /// A handle to the window that will receive WM_HOTKEY messages generated by the hot key. If this parameter is NULL, - /// WM_HOTKEY messages are posted to the message queue of the calling thread and must be processed in the message loop. - /// - /// - /// The identifier of the hot key. If the hWnd parameter is NULL, then the hot key is associated with the current - /// thread rather than with a particular window. If a hot key already exists with the same hWnd and id parameters, see - /// Remarks for the action taken. - /// - /// - /// The keys that must be pressed in combination with the key specified by the uVirtKey parameter in order to generate - /// the WM_HOTKEY message. The fsModifiers parameter can be a combination of the following values. - /// - /// - /// The virtual-key code of the hot key. See Virtual Key Codes. - /// - /// - /// If the function succeeds, the return value is nonzero. - /// If the function fails, the return value is zero. To get extended error information, call GetLastError. - /// - [DllImport("user32.dll")] - public static extern int RegisterHotKey(IntPtr hwnd, int id, int fsModifiers, int vk); - - /// - /// Frees a hot key previously registered by the calling thread. - /// - /// - /// A handle to the window associated with the hot key to be freed. This parameter should be NULL if the hot key is not - /// associated with a window. - /// - /// - /// The identifier of the hot key to be freed. - /// - /// - /// If the function succeeds, the return value is nonzero. - /// If the function fails, the return value is zero. To get extended error information, call GetLastError. - /// - [DllImport("user32.dll")] - public static extern bool UnregisterHotKey(IntPtr hwnd, int id); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HotkeysNativeMethods.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HotkeysNativeMethods.cs.meta deleted file mode 100644 index fb1fcb2..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/HotkeysNativeMethods.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dee11d735da813b4392bf29c540a0d45 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardHookStruct.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardHookStruct.cs deleted file mode 100644 index 68e1a2f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardHookStruct.cs +++ /dev/null @@ -1,43 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - /// - /// The KeyboardHookStruct structure contains information about a low-level keyboard input event. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/hooks/hookreference/hookstructures/cwpstruct.asp - /// - [StructLayout(LayoutKind.Sequential)] - internal struct KeyboardHookStruct - { - /// - /// Specifies a virtual-key code. The code must be a value in the range 1 to 254. - /// - public int VirtualKeyCode; - - /// - /// Specifies a hardware scan code for the key. - /// - public int ScanCode; - - /// - /// Specifies the extended-key flag, event-injected flag, context code, and transition-state flag. - /// - public int Flags; - - /// - /// Specifies the Time stamp for this message. - /// - public int Time; - - /// - /// Specifies extra information associated with the message. - /// - public int ExtraInfo; - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardHookStruct.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardHookStruct.cs.meta deleted file mode 100644 index 030e69e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardHookStruct.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b7158f5b7d3f4974ebdd2b0f6d200815 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardNativeMethods.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardNativeMethods.cs deleted file mode 100644 index c97b53a..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardNativeMethods.cs +++ /dev/null @@ -1,366 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; -using System.Text; -using System.Windows.Forms; -using Gma.System.MouseKeyHook.Implementation; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class KeyboardNativeMethods - { - //values from Winuser.h in Microsoft SDK. - public const byte VK_SHIFT = 0x10; - public const byte VK_CAPITAL = 0x14; - public const byte VK_NUMLOCK = 0x90; - public const byte VK_LSHIFT = 0xA0; - public const byte VK_RSHIFT = 0xA1; - public const byte VK_LCONTROL = 0xA2; - public const byte VK_RCONTROL = 0xA3; - public const byte VK_LMENU = 0xA4; - public const byte VK_RMENU = 0xA5; - public const byte VK_LWIN = 0x5B; - public const byte VK_RWIN = 0x5C; - public const byte VK_SCROLL = 0x91; - public const byte VK_INSERT = 0x2D; - //may be possible to use these aggregates instead of L and R separately (untested) - public const byte VK_CONTROL = 0x11; - public const byte VK_MENU = 0x12; - public const byte VK_PACKET = 0xE7; - //Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods - private static int lastVirtualKeyCode = 0; - private static int lastScanCode = 0; - private static byte[] lastKeyState = new byte[255]; - private static bool lastIsDead = false; - - /// - /// Translates a virtual key to its character equivalent using the current keyboard layout without knowing the - /// scancode in advance. - /// - /// - /// - /// - /// - internal static void TryGetCharFromKeyboardState(int virtualKeyCode, int fuState, out char[] chars) - { - var dwhkl = GetActiveKeyboard(); - int scanCode = MapVirtualKeyEx(virtualKeyCode, (int) MapType.MAPVK_VK_TO_VSC, dwhkl); - TryGetCharFromKeyboardState(virtualKeyCode, scanCode, fuState, dwhkl, out chars); - } - - /// - /// Translates a virtual key to its character equivalent using the current keyboard layout - /// - /// - /// - /// - /// - /// - internal static void TryGetCharFromKeyboardState(int virtualKeyCode, int scanCode, int fuState, out char[] chars) - { - var dwhkl = GetActiveKeyboard(); //get the active keyboard layout - TryGetCharFromKeyboardState(virtualKeyCode, scanCode, fuState, dwhkl, out chars); - } - - /// - /// Translates a virtual key to its character equivalent using a specified keyboard layout - /// - /// - /// - /// - /// - /// - /// - internal static void TryGetCharFromKeyboardState(int virtualKeyCode, int scanCode, int fuState, IntPtr dwhkl, out char[] chars) - { - StringBuilder pwszBuff = new StringBuilder(64); - KeyboardState keyboardState = KeyboardState.GetCurrent(); - byte[] currentKeyboardState = keyboardState.GetNativeState(); - bool isDead = false; - - if (keyboardState.IsDown(Keys.ShiftKey)) - currentKeyboardState[(byte) Keys.ShiftKey] = 0x80; - - if (keyboardState.IsToggled(Keys.CapsLock)) - currentKeyboardState[(byte) Keys.CapsLock] = 0x01; - - var relevantChars = ToUnicodeEx(virtualKeyCode, scanCode, currentKeyboardState, pwszBuff, pwszBuff.Capacity, fuState, dwhkl); - - switch (relevantChars) - { - case -1: - isDead = true; - ClearKeyboardBuffer(virtualKeyCode, scanCode, dwhkl); - chars = null; - break; - - case 0: - chars = null; - break; - - case 1: - if (pwszBuff.Length > 0) chars = new[] { pwszBuff[0] }; - else chars = null; - break; - - // Two or more (only two of them is relevant) - default: - if (pwszBuff.Length > 1) chars = new[] { pwszBuff[0], pwszBuff[1] }; - else chars = new[] { pwszBuff[0] }; - break; - } - - if (lastVirtualKeyCode != 0 && lastIsDead) - { - if (chars != null) - { - StringBuilder sbTemp = new StringBuilder(5); - ToUnicodeEx(lastVirtualKeyCode, lastScanCode, lastKeyState, sbTemp, sbTemp.Capacity, 0, dwhkl); - lastIsDead = false; - lastVirtualKeyCode = 0; - } - - return; - } - - lastScanCode = scanCode; - lastVirtualKeyCode = virtualKeyCode; - lastIsDead = isDead; - lastKeyState = (byte[]) currentKeyboardState.Clone(); - } - - - private static void ClearKeyboardBuffer(int vk, int sc, IntPtr hkl) - { - var sb = new StringBuilder(10); - - int rc; - do - { - byte[] lpKeyStateNull = new Byte[255]; - rc = ToUnicodeEx(vk, sc, lpKeyStateNull, sb, sb.Capacity, 0, hkl); - } while (rc < 0); - } - - /// - /// Gets the input locale identifier for the active application's thread. Using this combined with the ToUnicodeEx and - /// MapVirtualKeyEx enables Windows to properly translate keys based on the keyboard layout designated for the - /// application. - /// - /// HKL - private static IntPtr GetActiveKeyboard() - { - IntPtr hActiveWnd = ThreadNativeMethods.GetForegroundWindow(); //handle to focused window - int dwProcessId; - int hCurrentWnd = ThreadNativeMethods.GetWindowThreadProcessId(hActiveWnd, out dwProcessId); - //thread of focused window - return GetKeyboardLayout(hCurrentWnd); //get the layout identifier for the thread whose window is focused - } - - /// - /// The ToAscii function translates the specified virtual-key code and keyboard - /// state to the corresponding character or characters. The function translates the code - /// using the input language and physical keyboard layout identified by the keyboard layout handle. - /// - /// - /// [in] Specifies the virtual-key code to be translated. - /// - /// - /// [in] Specifies the hardware scan code of the key to be translated. - /// The high-order bit of this value is set if the key is up (not pressed). - /// - /// - /// [in] Pointer to a 256-byte array that contains the current keyboard state. - /// Each element (byte) in the array contains the state of one key. - /// If the high-order bit of a byte is set, the key is down (pressed). - /// The low bit, if set, indicates that the key is toggled on. In this function, - /// only the toggle bit of the CAPS LOCK key is relevant. The toggle state - /// of the NUM LOCK and SCROLL LOCK keys is ignored. - /// - /// - /// [out] Pointer to the buffer that receives the translated character or characters. - /// - /// - /// [in] Specifies whether a menu is active. This parameter must be 1 if a menu is active, or 0 otherwise. - /// - /// - /// If the specified key is a dead key, the return value is negative. Otherwise, it is one of the following values. - /// Value Meaning - /// 0 The specified virtual key has no translation for the current state of the keyboard. - /// 1 One character was copied to the buffer. - /// 2 Two characters were copied to the buffer. This usually happens when a dead-key character - /// (accent or diacritic) stored in the keyboard layout cannot be composed with the specified - /// virtual key to form a single character. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/keyboardinput/keyboardinputreference/keyboardinputfunctions/toascii.asp - /// - [Obsolete("Use ToUnicodeEx instead")] - [DllImport("user32.dll")] - public static extern int ToAscii( - int uVirtKey, - int uScanCode, - byte[] lpbKeyState, - byte[] lpwTransKey, - int fuState); - - /// - /// Translates the specified virtual-key code and keyboard state to the corresponding Unicode character or characters. - /// - /// [in] The virtual-key code to be translated. - /// - /// [in] The hardware scan code of the key to be translated. The high-order bit of this value is - /// set if the key is up. - /// - /// - /// [in, optional] A pointer to a 256-byte array that contains the current keyboard state. Each - /// element (byte) in the array contains the state of one key. If the high-order bit of a byte is set, the key is down. - /// - /// - /// [out] The buffer that receives the translated Unicode character or characters. However, this - /// buffer may be returned without being null-terminated even though the variable name suggests that it is - /// null-terminated. - /// - /// [in] The size, in characters, of the buffer pointed to by the pwszBuff parameter. - /// - /// [in] The behavior of the function. If bit 0 is set, a menu is active. Bits 1 through 31 are - /// reserved. - /// - /// The input locale identifier used to translate the specified code. - /// - /// -1 <= return <= n - /// - /// - /// -1 = The specified virtual key is a dead-key character (accent or diacritic). This value is returned - /// regardless of the keyboard layout, even if several characters have been typed and are stored in the - /// keyboard state. If possible, even with Unicode keyboard layouts, the function has written a spacing version - /// of the dead-key character to the buffer specified by pwszBuff. For example, the function writes the - /// character SPACING ACUTE (0x00B4), rather than the character NON_SPACING ACUTE (0x0301). - /// - /// - /// 0 = The specified virtual key has no translation for the current state of the keyboard. Nothing was - /// written to the buffer specified by pwszBuff. - /// - /// 1 = One character was written to the buffer specified by pwszBuff. - /// - /// n = Two or more characters were written to the buffer specified by pwszBuff. The most common cause - /// for this is that a dead-key character (accent or diacritic) stored in the keyboard layout could not be - /// combined with the specified virtual key to form a single character. However, the buffer may contain more - /// characters than the return value specifies. When this happens, any extra characters are invalid and should - /// be ignored. - /// - /// - /// - [DllImport("user32.dll")] - public static extern int ToUnicodeEx(int wVirtKey, - int wScanCode, - byte[] lpKeyState, - [Out, MarshalAs(UnmanagedType.LPWStr, SizeConst = 64)] StringBuilder pwszBuff, - int cchBuff, - int wFlags, - IntPtr dwhkl); - - /// - /// The GetKeyboardState function copies the status of the 256 virtual keys to the - /// specified buffer. - /// - /// - /// [in] Pointer to a 256-byte array that contains keyboard key states. - /// - /// - /// If the function succeeds, the return value is nonzero. - /// If the function fails, the return value is zero. To get extended error information, call GetLastError. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/keyboardinput/keyboardinputreference/keyboardinputfunctions/toascii.asp - /// - [DllImport("user32.dll")] - public static extern int GetKeyboardState(byte[] pbKeyState); - - /// - /// The GetKeyState function retrieves the status of the specified virtual key. The status specifies whether the key is - /// up, down, or toggled - /// (on, off—alternating each time the key is pressed). - /// - /// - /// [in] Specifies a virtual key. If the desired virtual key is a letter or digit (A through Z, a through z, or 0 - /// through 9), nVirtKey must be set to the ASCII value of that character. For other keys, it must be a virtual-key - /// code. - /// - /// - /// The return value specifies the status of the specified virtual key, as follows: - /// If the high-order bit is 1, the key is down; otherwise, it is up. - /// If the low-order bit is 1, the key is toggled. A key, such as the CAPS LOCK key, is toggled if it is turned on. The - /// key is off and untoggled if the low-order bit is 0. A toggle key's indicator light (if any) on the keyboard will be - /// on when the key is toggled, and off when the key is untoggled. - /// - /// http://msdn.microsoft.com/en-us/library/ms646301.aspx - [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] - public static extern short GetKeyState(int vKey); - - /// - /// Translates (maps) a virtual-key code into a scan code or character value, or translates a scan code into a - /// virtual-key code. - /// - /// - /// [in] The virtual key code or scan code for a key. How this value is interpreted depends on the - /// value of the uMapType parameter. - /// - /// - /// [in] The translation to be performed. The value of this parameter depends on the value of the - /// uCode parameter. - /// - /// [in] The input locale identifier used to translate the specified code. - /// - [DllImport("user32.dll", CharSet = CharSet.Auto)] - internal static extern int MapVirtualKeyEx(int uCode, int uMapType, IntPtr dwhkl); - - /// - /// Retrieves the active input locale identifier (formerly called the keyboard layout) for the specified thread. - /// If the idThread parameter is zero, the input locale identifier for the active thread is returned. - /// - /// [in] The identifier of the thread to query, or 0 for the current thread. - /// - /// The return value is the input locale identifier for the thread. The low word contains a Language Identifier for the - /// input - /// language and the high word contains a device handle to the physical layout of the keyboard. - /// - [DllImport("user32.dll", CharSet = CharSet.Auto)] - internal static extern IntPtr GetKeyboardLayout(int dwLayout); - - /// - /// MapVirtualKeys uMapType - /// - internal enum MapType - { - /// - /// uCode is a virtual-key code and is translated into an unshifted character value in the low-order word of the return - /// value. Dead keys (diacritics) are indicated by setting the top bit of the return value. If there is no translation, - /// the function returns 0. - /// - MAPVK_VK_TO_VSC, - - /// - /// uCode is a virtual-key code and is translated into a scan code. If it is a virtual-key code that does not - /// distinguish between left- and right-hand keys, the left-hand scan code is returned. If there is no translation, the - /// function returns 0. - /// - MAPVK_VSC_TO_VK, - - /// - /// uCode is a scan code and is translated into a virtual-key code that does not distinguish between left- and - /// right-hand keys. If there is no translation, the function returns 0. - /// - MAPVK_VK_TO_CHAR, - - /// - /// uCode is a scan code and is translated into a virtual-key code that distinguishes between left- and right-hand - /// keys. If there is no translation, the function returns 0. - /// - MAPVK_VSC_TO_VK_EX - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardNativeMethods.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardNativeMethods.cs.meta deleted file mode 100644 index 4fdb728..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/KeyboardNativeMethods.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 617f84d6e74f49946b9b197b104d54ca -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Messages.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Messages.cs deleted file mode 100644 index a010629..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Messages.cs +++ /dev/null @@ -1,123 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class Messages - { - //values from Winuser.h in Microsoft SDK. - - /// - /// The WM_MOUSEMOVE message is posted to a window when the cursor moves. - /// - public const int WM_MOUSEMOVE = 0x200; - - /// - /// The WM_LBUTTONDOWN message is posted when the user presses the left mouse button - /// - public const int WM_LBUTTONDOWN = 0x201; - - /// - /// The WM_RBUTTONDOWN message is posted when the user presses the right mouse button - /// - public const int WM_RBUTTONDOWN = 0x204; - - /// - /// The WM_MBUTTONDOWN message is posted when the user presses the middle mouse button - /// - public const int WM_MBUTTONDOWN = 0x207; - - /// - /// The WM_LBUTTONUP message is posted when the user releases the left mouse button - /// - public const int WM_LBUTTONUP = 0x202; - - /// - /// The WM_RBUTTONUP message is posted when the user releases the right mouse button - /// - public const int WM_RBUTTONUP = 0x205; - - /// - /// The WM_MBUTTONUP message is posted when the user releases the middle mouse button - /// - public const int WM_MBUTTONUP = 0x208; - - /// - /// The WM_LBUTTONDBLCLK message is posted when the user double-clicks the left mouse button - /// - public const int WM_LBUTTONDBLCLK = 0x203; - - /// - /// The WM_RBUTTONDBLCLK message is posted when the user double-clicks the right mouse button - /// - public const int WM_RBUTTONDBLCLK = 0x206; - - /// - /// The WM_RBUTTONDOWN message is posted when the user presses the right mouse button - /// - public const int WM_MBUTTONDBLCLK = 0x209; - - /// - /// The WM_MOUSEWHEEL message is posted when the user presses the mouse wheel. - /// - public const int WM_MOUSEWHEEL = 0x020A; - - /// - /// The WM_XBUTTONDOWN message is posted when the user presses the first or second X mouse - /// button. - /// - public const int WM_XBUTTONDOWN = 0x20B; - - /// - /// The WM_XBUTTONUP message is posted when the user releases the first or second X mouse - /// button. - /// - public const int WM_XBUTTONUP = 0x20C; - - /// - /// The WM_XBUTTONDBLCLK message is posted when the user double-clicks the first or second - /// X mouse button. - /// - /// Only windows that have the CS_DBLCLKS style can receive WM_XBUTTONDBLCLK messages. - public const int WM_XBUTTONDBLCLK = 0x20D; - - /// - /// The WM_MOUSEHWHEEL message Sent to the active window when the mouse's horizontal scroll - /// wheel is tilted or rotated. - /// - public const int WM_MOUSEHWHEEL = 0x20E; - - /// - /// The WM_KEYDOWN message is posted to the window with the keyboard focus when a non-system - /// key is pressed. A non-system key is a key that is pressed when the ALT key is not pressed. - /// - public const int WM_KEYDOWN = 0x100; - - /// - /// The WM_KEYUP message is posted to the window with the keyboard focus when a non-system - /// key is released. A non-system key is a key that is pressed when the ALT key is not pressed, - /// or a keyboard key that is pressed when a window has the keyboard focus. - /// - public const int WM_KEYUP = 0x101; - - /// - /// The WM_SYSKEYDOWN message is posted to the window with the keyboard focus when the user - /// presses the F10 key (which activates the menu bar) or holds down the ALT key and then - /// presses another key. It also occurs when no window currently has the keyboard focus; - /// in this case, the WM_SYSKEYDOWN message is sent to the active window. The window that - /// receives the message can distinguish between these two contexts by checking the context - /// code in the lParam parameter. - /// - public const int WM_SYSKEYDOWN = 0x104; - - /// - /// The WM_SYSKEYUP message is posted to the window with the keyboard focus when the user - /// releases a key that was pressed while the ALT key was held down. It also occurs when no - /// window currently has the keyboard focus; in this case, the WM_SYSKEYUP message is sent - /// to the active window. The window that receives the message can distinguish between - /// these two contexts by checking the context code in the lParam parameter. - /// - public const int WM_SYSKEYUP = 0x105; - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Messages.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Messages.cs.meta deleted file mode 100644 index 14bb897..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Messages.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 21d9bd48979a47945b0cff68d04835dc -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseNativeMethods.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseNativeMethods.cs deleted file mode 100644 index 8dbc083..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseNativeMethods.cs +++ /dev/null @@ -1,27 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class MouseNativeMethods - { - /// - /// The GetDoubleClickTime function retrieves the current double-click time for the mouse. A double-click is a series - /// of two clicks of the - /// mouse button, the second occurring within a specified time after the first. The double-click time is the maximum - /// number of - /// milliseconds that may occur between the first and second click of a double-click. - /// - /// - /// The return value specifies the current double-click time, in milliseconds. - /// - /// - /// http://msdn.microsoft.com/en-us/library/ms646258(VS.85).aspx - /// - [DllImport("user32")] - internal static extern int GetDoubleClickTime(); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseNativeMethods.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseNativeMethods.cs.meta deleted file mode 100644 index 5a30098..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseNativeMethods.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 98c7001907648a443af82843350a6bc3 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseStruct.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseStruct.cs deleted file mode 100644 index 3dd6afc..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseStruct.cs +++ /dev/null @@ -1,54 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - /// - /// The structure contains information about a mouse input event. - /// - /// - /// See full documentation at http://globalmousekeyhook.codeplex.com/wikipage?title=MouseStruct - /// - [StructLayout(LayoutKind.Explicit)] - internal struct MouseStruct - { - /// - /// Specifies a Point structure that contains the X- and Y-coordinates of the cursor, in screen coordinates. - /// - [FieldOffset(0x00)] public Point Point; - - /// - /// Specifies information associated with the message. - /// - /// - /// The possible values are: - /// - /// - /// 0 - No Information - /// - /// - /// 1 - X-Button1 Click - /// - /// - /// 2 - X-Button2 Click - /// - /// - /// 120 - Mouse Scroll Away from User - /// - /// - /// -120 - Mouse Scroll Toward User - /// - /// - /// - [FieldOffset(0x0A)] public Int16 MouseData; - - /// - /// Returns a Timestamp associated with the input, in System Ticks. - /// - [FieldOffset(0x10)] public Int32 Timestamp; - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseStruct.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseStruct.cs.meta deleted file mode 100644 index 1f30431..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/MouseStruct.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3ede72bc8bf88b04287528b2c0fc480e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Point.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Point.cs deleted file mode 100644 index 6f92fa9..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Point.cs +++ /dev/null @@ -1,64 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - /// - /// The Point structure defines the X- and Y- coordinates of a point. - /// - /// - /// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/rectangl_0tiq.asp - /// - [StructLayout(LayoutKind.Sequential)] - internal struct Point - { - /// - /// Specifies the X-coordinate of the point. - /// - public int X; - - /// - /// Specifies the Y-coordinate of the point. - /// - public int Y; - - public Point(int x, int y) - { - X = x; - Y = y; - } - - public static bool operator ==(Point a, Point b) - { - return a.X == b.X && a.Y == b.Y; - } - - public static bool operator !=(Point a, Point b) - { - return !(a == b); - } - - public bool Equals(Point other) - { - return other.X == X && other.Y == Y; - } - - public override bool Equals(object obj) - { - if (ReferenceEquals(null, obj)) return false; - if (obj.GetType() != typeof (Point)) return false; - return Equals((Point) obj); - } - - public override int GetHashCode() - { - unchecked - { - return (X*397) ^ Y; - } - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Point.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Point.cs.meta deleted file mode 100644 index 0a20b7f..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/Point.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a89887a5838a9874d9d6f923d4e766d6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/ThreadNativeMethods.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/ThreadNativeMethods.cs deleted file mode 100644 index b218cf9..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/ThreadNativeMethods.cs +++ /dev/null @@ -1,42 +0,0 @@ -// This code is distributed under MIT license. -// Copyright (c) 2015 George Mamaladze -// See license.txt or http://opensource.org/licenses/mit-license.php - -using System; -using System.Runtime.InteropServices; - -namespace Gma.System.MouseKeyHook.WinApi -{ - internal static class ThreadNativeMethods - { - /// - /// Retrieves the unmanaged thread identifier of the calling thread. - /// - /// - [DllImport("kernel32")] - internal static extern int GetCurrentThreadId(); - - /// - /// Retrieves a handle to the foreground window (the window with which the user is currently working). - /// The system assigns a slightly higher priority to the thread that creates the foreground window than it does to - /// other threads. - /// - /// - [DllImport("user32.dll", CharSet = CharSet.Auto)] - internal static extern IntPtr GetForegroundWindow(); - - /// - /// Retrieves the identifier of the thread that created the specified window and, optionally, the identifier of the - /// process that - /// created the window. - /// - /// A handle to the window. - /// - /// A pointer to a variable that receives the process identifier. If this parameter is not NULL, - /// GetWindowThreadProcessId copies the identifier of the process to the variable; otherwise, it does not. - /// - /// The return value is the identifier of the thread that created the window. - [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)] - internal static extern int GetWindowThreadProcessId(IntPtr handle, out int processId); - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/ThreadNativeMethods.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/ThreadNativeMethods.cs.meta deleted file mode 100644 index c472c4e..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/globalmousekeyhook-vNext/WinApi/ThreadNativeMethods.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 15bd7858c5fc2b5429715300ee1f9a05 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/ImageEffectSpoutSender.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/ImageEffectSpoutSender.cs deleted file mode 100644 index 1649266..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/ImageEffectSpoutSender.cs +++ /dev/null @@ -1,163 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using UC; -using UnityEngine; - -namespace Spout -{ - public class ImageEffectSpoutSender : MonoBehaviour - { - public string sharingName = "UnitySender"; - - public Spout.TextureFormat textureFormat = Spout.TextureFormat.DXGI_FORMAT_R8G8B8A8_UNORM; - // [AutoUI] - public bool yFlip = true; - - [SerializeField] - [Header("Automatic")] - RenderTexture output; - - private bool senderIsCreated; - private const int _createAttempts = 5; - private int _attempts = 0; - - private bool textureSizeHasChanged = false; - - [SerializeField] - private Shader m_Shader; - public Shader shader - { - get - { - if (m_Shader == null) - m_Shader = Shader.Find("Unlit/AlphaPremultiplied"); - - return m_Shader; - } - } - - private Material m_Material; - public Material material - { - get - { - if (m_Material == null) - m_Material = ImageEffectHelper.CheckShaderAndCreateMaterial(shader); - - return m_Material; - } - } - - private void OnEnable() - { - if (!ImageEffectHelper.IsSupported(shader, false, false, this)) - enabled = false; - } - - void OnRenderImage(RenderTexture s, RenderTexture d) - { - bool isValid = (output != null) && s.width == output.width && s.height == output.height; - if (!isValid) - { - if (output != null) - output.Release(); - output = new RenderTexture(s.width, s.height, s.depth, RenderTextureFormat.ARGB32); - output.Create(); - - } - textureSizeHasChanged = !isValid; - - //if (s.format == output.format) - // Graphics.CopyTexture(s, output); - //else - - material.SetInt("yFlip", yFlip ? 1 : 0); - Graphics.Blit(s, output, material); - Graphics.Blit(s, d); - } - - void OnDisable() - { - _CloseSender(); - - if (m_Material != null) - DestroyImmediate(m_Material); - - m_Material = null; - } - - void Update() - { - if (output == null) return; - if (textureSizeHasChanged) _CloseSender(); - - if (senderIsCreated) - Spout.instance.UpdateSender(sharingName, output); - else - _CreateSender(output); - } - - private void _CreateSender(Texture texture) - { - if (texture == null) return; - if (!Spout.instance.enabled) return; - - if (!senderIsCreated) - { - Debug.Log("Sender is not created, creating one"); - senderIsCreated = Spout.instance.CreateSender(sharingName, texture, (int)textureFormat); - } - - _attempts++; - if (_attempts > _createAttempts) - Debug.LogWarning(System.String.Format("There are problems with creating the sender {0}. Please check your settings or restart Unity.", sharingName)); - - Spout.instance.OnSenderStopped -= OnSenderStoppedDelegate; - Spout.instance.OnSenderStopped += OnSenderStoppedDelegate; - - Spout.instance.OnAllSendersStopped -= OnAllSendersStoppedDelegate; - Spout.instance.OnAllSendersStopped += OnAllSendersStoppedDelegate; - - Spout.instance.OnEnabled -= _OnSpoutEnabled; - Spout.instance.OnEnabled += _OnSpoutEnabled; - } - - private void _OnSpoutEnabled() - { - //Debug.Log("SpoutSender._OnSpoutEnabled"); - if (enabled) - { - //force a reconnection - enabled = !enabled; - enabled = !enabled; - } - } - - private void _CloseSender() - { - Debug.Log("SpoutSender._CloseSender:" + sharingName); - if (senderIsCreated) Spout.CloseSender(sharingName); - _CloseSenderCleanUpData(); - } - - private void OnSenderStoppedDelegate(object sender, TextureShareEventArgs e) - { - //Debug.Log("SpoutSender.OnSenderStoppedDelegate:"+e.sharingName); - if (e.sharingName == sharingName) - { - _CloseSenderCleanUpData(); - } - } - - private void OnAllSendersStoppedDelegate() - { - _CloseSenderCleanUpData(); - } - - private void _CloseSenderCleanUpData() - { - senderIsCreated = false; - } - } -} \ No newline at end of file diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/ImageEffectSpoutSender.cs.meta b/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/ImageEffectSpoutSender.cs.meta deleted file mode 100644 index 4a63fbf..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/ImageEffectSpoutSender.cs.meta +++ /dev/null @@ -1,14 +0,0 @@ -fileFormatVersion: 2 -guid: 542c4b2aee71a0142928f8b82f70141f -timeCreated: 1491360916 -licenseType: Free -MonoImporter: - serializedVersion: 2 - defaultReferences: - - output: {instanceID: 0} - - m_Shader: {fileID: 4800000, guid: ca95743014f24fd49897e12abbe931fc, type: 3} - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/QRCode.cs b/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/QRCode.cs deleted file mode 100644 index 75c06c8..0000000 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/QRCode.cs +++ /dev/null @@ -1,65 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using UnityEngine.Events; -using ZXing; -using ZXing.QrCode; - -public class QRCode : MonoBehaviour { - public string QRCodeString; - [SerializeField] - private Texture2D QRResult; - const int QRSize = 256; - private Vector2 width_height = new Vector2(QRSize, QRSize); - - [Serializable] - public class QRResultEvent : UnityEvent { }; - [SerializeField] - public QRResultEvent qrcodeEvent = new QRResultEvent(); - - List results = new List(); - - private void Update() - { - lock (results) - { - foreach (var r in results) - { - if (qrcodeEvent != null) - { - qrcodeEvent.Invoke(r); - } - } - results.Clear(); - } - } - - public void Encode() - { - Color32[] color32 = useEncode(QRCodeString, (int)width_height.x, (int)width_height.y); - - if(QRResult == null) - QRResult = new Texture2D((int)width_height.x, (int)width_height.y); - - QRResult.SetPixels32(color32); - QRResult.Apply(); - if(qrcodeEvent != null) - qrcodeEvent.Invoke(QRResult); - } - - private Color32[] useEncode(string textForEncoding, int width, int height) - { - Debug.Log("Encode QR code: " + textForEncoding); - BarcodeWriter writer = new BarcodeWriter - { - Format = BarcodeFormat.QR_CODE, - Options = new QrCodeEncodingOptions - { - Height = height, - Width = width - } - }; - return writer.Write(textForEncoding); - } -} diff --git a/Unity-19050-05-BallPool/Packages/com.ultracombos.chwan1 b/Unity-19050-05-BallPool/Packages/com.ultracombos.chwan1 index ca704e0..351f9fb 160000 --- a/Unity-19050-05-BallPool/Packages/com.ultracombos.chwan1 +++ b/Unity-19050-05-BallPool/Packages/com.ultracombos.chwan1 @@ -1 +1 @@ -Subproject commit ca704e07d74af1887017c9b8a295f5bfd2fd8a41 +Subproject commit 351f9fbc6c2ec48255fbab21c35bef4cc014f351 diff --git a/Unity-19050-05-BallPool/Packages/manifest.json b/Unity-19050-05-BallPool/Packages/manifest.json index 9f8d3f9..105799f 100644 --- a/Unity-19050-05-BallPool/Packages/manifest.json +++ b/Unity-19050-05-BallPool/Packages/manifest.json @@ -1,17 +1,19 @@ { "dependencies": { - "com.ultracombos.utility": "file:/../../../_Package/com.ultracombos.utility", - "com.ultracombos.grpc": "file:/../../../_Package/com.ultracombos.grpc", "com.ultracombos.generic-grpc": "file:/../../../_Package/com.ultracombos.generic-grpc", + "com.ultracombos.grpc": "file:/../../../_Package/com.ultracombos.grpc", "com.ultracombos.movie-player": "file:/../../../_Package/com.ultracombos.movie-player", "com.ultracombos.osc": "file:/../../../_Package/com.ultracombos.osc", "com.ultracombos.tuio": "file:/../../../_Package/com.ultracombos.tuio", + "com.ultracombos.utility": "file:/../../../_Package/com.ultracombos.utility", "com.unity.ads": "2.0.8", "com.unity.analytics": "3.2.2", "com.unity.collab-proxy": "1.2.15", "com.unity.package-manager-ui": "2.0.8", + "com.unity.postprocessing": "2.2.2", "com.unity.purchasing": "2.0.3", "com.unity.textmeshpro": "1.4.1", + "jp.keijiro.klak.spout": "file:/../../../_Package/KlakSpout", "com.unity.modules.ai": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.assetbundle": "1.0.0", @@ -43,4 +45,4 @@ "com.unity.modules.wind": "1.0.0", "com.unity.modules.xr": "1.0.0" } -} \ No newline at end of file +} diff --git a/Unity-19050-05-BallPool/ProjectSettings/ProjectSettings.asset b/Unity-19050-05-BallPool/ProjectSettings/ProjectSettings.asset index b8bf632..3603268 100644 --- a/Unity-19050-05-BallPool/ProjectSettings/ProjectSettings.asset +++ b/Unity-19050-05-BallPool/ProjectSettings/ProjectSettings.asset @@ -516,6 +516,7 @@ PlayerSettings: 25: UNITY_POST_PROCESSING_STACK_V2 26: UNITY_POST_PROCESSING_STACK_V2 27: UNITY_POST_PROCESSING_STACK_V2 + 28: UNITY_POST_PROCESSING_STACK_V2 platformArchitecture: {} scriptingBackend: {} il2cppCompilerConfiguration: {} diff --git a/_Package/KlakSpout/.gitattributes b/_Package/KlakSpout/.gitattributes new file mode 100644 index 0000000..962aa38 --- /dev/null +++ b/_Package/KlakSpout/.gitattributes @@ -0,0 +1,9 @@ +* -text + +*.cs text eol=lf diff=csharp +*.shader text eol=lf +*.cginc text eol=lf +*.hlsl text eol=lf +*.compute text eol=lf + +*.meta text eol=lf diff --git a/_Package/KlakSpout/.gitignore b/_Package/KlakSpout/.gitignore new file mode 100644 index 0000000..2fe5828 --- /dev/null +++ b/_Package/KlakSpout/.gitignore @@ -0,0 +1,20 @@ +# Windows +Thumbs.db +Desktop.ini + +# macOS +.DS_Store + +# Code Editors +.idea +.vscode +*.csproj +*.sln +*.swp + +# Unity +/Library +/Temp + +Assets/Plugins +Assets/Plugins.meta diff --git a/_Package/KlakSpout/.npmignore b/_Package/KlakSpout/.npmignore new file mode 100644 index 0000000..65b2db7 --- /dev/null +++ b/_Package/KlakSpout/.npmignore @@ -0,0 +1,4 @@ +.git +.gitignore +.gitattributes +.gitmodules diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents.meta b/_Package/KlakSpout/Editor.meta similarity index 58% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents.meta rename to _Package/KlakSpout/Editor.meta index 2b96f7e..e69a378 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents.meta +++ b/_Package/KlakSpout/Editor.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 -guid: 848af245f44344bbd950d34ba4d24155 +guid: bfb9850bc5423b54c862ff4b58e1ea25 folderAsset: yes -timeCreated: 1462037991 -licenseType: Pro DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/_Package/KlakSpout/Editor/SpoutReceiverEditor.cs b/_Package/KlakSpout/Editor/SpoutReceiverEditor.cs new file mode 100644 index 0000000..5277ae7 --- /dev/null +++ b/_Package/KlakSpout/Editor/SpoutReceiverEditor.cs @@ -0,0 +1,125 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; + +namespace Klak.Spout +{ + [CanEditMultipleObjects] + [CustomEditor(typeof(SpoutReceiver))] + public class SpoutReceiverEditor : Editor + { + SerializedProperty _nameFilter; + SerializedProperty _targetTexture; + SerializedProperty _targetRenderer; + SerializedProperty _targetMaterialProperty; + + static GUIContent _labelProperty = new GUIContent("Property"); + + string[] _propertyList; // cached property list + Shader _cachedShader; // shader used to cache the list + + // Retrieve shader from a target renderer. + Shader RetrieveTargetShader(UnityEngine.Object target) + { + var renderer = target as Renderer; + if (renderer == null) return null; + + var material = renderer.sharedMaterial; + if (material == null) return null; + + return material.shader; + } + + // Cache properties of a given shader if it's + // different from a previously given one. + void CachePropertyList(Shader shader) + { + if (_cachedShader == shader) return; + + var temp = new List(); + + var count = ShaderUtil.GetPropertyCount(shader); + for (var i = 0; i < count; i++) + { + var propType = ShaderUtil.GetPropertyType(shader, i); + if (propType == ShaderUtil.ShaderPropertyType.TexEnv) + temp.Add(ShaderUtil.GetPropertyName(shader, i)); + } + + _propertyList = temp.ToArray(); + _cachedShader = shader; + } + + // Material property drop-down list. + void ShowMaterialPropertyDropDown() + { + // Try to retrieve the target shader. + var shader = RetrieveTargetShader(_targetRenderer.objectReferenceValue); + + if (shader != null) + { + // Cache the property list of the target shader. + CachePropertyList(shader); + + // If there are suitable candidates... + if (_propertyList.Length > 0) + { + // Show the drop-down list. + var index = Array.IndexOf(_propertyList, _targetMaterialProperty.stringValue); + var newIndex = EditorGUILayout.Popup("Property", index, _propertyList); + + // Update the property if the selection was changed. + if (index != newIndex) + _targetMaterialProperty.stringValue = _propertyList[newIndex]; + } + else + _targetMaterialProperty.stringValue = ""; // reset on failure + } + else + _targetMaterialProperty.stringValue = ""; // reset on failure + } + + void OnEnable() + { + _nameFilter = serializedObject.FindProperty("_nameFilter"); + _targetTexture = serializedObject.FindProperty("_targetTexture"); + _targetRenderer = serializedObject.FindProperty("_targetRenderer"); + _targetMaterialProperty = serializedObject.FindProperty("_targetMaterialProperty"); + } + + void OnDisable() + { + _propertyList = null; + _cachedShader = null; + } + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + EditorGUILayout.PropertyField(_nameFilter); + EditorGUILayout.PropertyField(_targetTexture); + EditorGUILayout.PropertyField(_targetRenderer); + + EditorGUI.indentLevel++; + + if (_targetRenderer.hasMultipleDifferentValues) + { + // Show a simple text field if there are multiple values. + EditorGUILayout.PropertyField(_targetMaterialProperty, _labelProperty); + } + else if (_targetRenderer.objectReferenceValue != null) + { + // Show the material property drop-down list. + ShowMaterialPropertyDropDown(); + } + + EditorGUI.indentLevel--; + + serializedObject.ApplyModifiedProperties(); + } + } +} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/QRCode.cs.meta b/_Package/KlakSpout/Editor/SpoutReceiverEditor.cs.meta similarity index 69% rename from Unity-19050-05-BallPool/Assets/UnityUtils/Misc/QRCode.cs.meta rename to _Package/KlakSpout/Editor/SpoutReceiverEditor.cs.meta index cc79080..f7ae8d2 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/Misc/QRCode.cs.meta +++ b/_Package/KlakSpout/Editor/SpoutReceiverEditor.cs.meta @@ -1,7 +1,7 @@ fileFormatVersion: 2 -guid: 13b9529cd6895cd48a37b2b07b78a44a -timeCreated: 1489737809 -licenseType: Free +guid: e66c46a000456b34e95a2661f5d5391b +timeCreated: 1492008499 +licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] diff --git a/_Package/KlakSpout/Editor/SpoutSenderEditor.cs b/_Package/KlakSpout/Editor/SpoutSenderEditor.cs new file mode 100644 index 0000000..1bf82a1 --- /dev/null +++ b/_Package/KlakSpout/Editor/SpoutSenderEditor.cs @@ -0,0 +1,28 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +using UnityEngine; +using UnityEditor; + +namespace Klak.Spout +{ + [CanEditMultipleObjects] + [CustomEditor(typeof(SpoutSender))] + public class SpoutSenderEditor : Editor + { + SerializedProperty _clearAlpha; + + void OnEnable() + { + _clearAlpha = serializedObject.FindProperty("_clearAlpha"); + } + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + EditorGUILayout.PropertyField(_clearAlpha); + + serializedObject.ApplyModifiedProperties(); + } + } +} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/InvertCamera.cs.meta b/_Package/KlakSpout/Editor/SpoutSenderEditor.cs.meta similarity index 53% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/InvertCamera.cs.meta rename to _Package/KlakSpout/Editor/SpoutSenderEditor.cs.meta index de09030..f910062 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/InvertCamera.cs.meta +++ b/_Package/KlakSpout/Editor/SpoutSenderEditor.cs.meta @@ -1,8 +1,12 @@ fileFormatVersion: 2 -guid: b88f1d1faa35b574594171c19a0f6d30 +guid: 4d54f6c4c801e1148b465b8fb9d50412 +timeCreated: 1492008196 +licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Editor/SpoutSenderListWindow.cs b/_Package/KlakSpout/Editor/SpoutSenderListWindow.cs new file mode 100644 index 0000000..88095b0 --- /dev/null +++ b/_Package/KlakSpout/Editor/SpoutSenderListWindow.cs @@ -0,0 +1,46 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +using UnityEngine; +using UnityEditor; + +namespace Klak.Spout +{ + // Spout sender list window + public class SpoutSenderListWindow : EditorWindow + { + [MenuItem("Window/Klak/Spout Sender List")] + static void Init() + { + EditorWindow.GetWindow("Spout Senders").Show(); + } + + int _updateCount; + + void OnInspectorUpdate() + { + // Update once per eight calls. + if ((_updateCount++ & 7) == 0) Repaint(); + } + + void OnGUI() + { + var count = PluginEntry.CountSharedObjects(); + + EditorGUILayout.Space(); + EditorGUI.indentLevel++; + + if (count == 0) + EditorGUILayout.LabelField("No sender detected."); + else + EditorGUILayout.LabelField(count + " sender(s) detected."); + + for (var i = 0; i < count; i++) + { + var name = PluginEntry.GetSharedObjectNameString(i); + if (name != null) EditorGUILayout.LabelField("- " + name); + } + + EditorGUI.indentLevel--; + } + } +} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/Spout.cs.meta b/_Package/KlakSpout/Editor/SpoutSenderListWindow.cs.meta similarity index 53% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/Spout.cs.meta rename to _Package/KlakSpout/Editor/SpoutSenderListWindow.cs.meta index 0782b88..5d55074 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/Spout.cs.meta +++ b/_Package/KlakSpout/Editor/SpoutSenderListWindow.cs.meta @@ -1,8 +1,12 @@ fileFormatVersion: 2 -guid: aa175692d4b749244b474315598e4d14 +guid: 66d9365756bb8784faa1774081cc4a3e +timeCreated: 1492007252 +licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Editor/jp.keijiro.klak.spout.Editor.asmdef b/_Package/KlakSpout/Editor/jp.keijiro.klak.spout.Editor.asmdef new file mode 100644 index 0000000..a1da6c0 --- /dev/null +++ b/_Package/KlakSpout/Editor/jp.keijiro.klak.spout.Editor.asmdef @@ -0,0 +1,12 @@ +{ + "name": "jp.keijiro.klak.spout.Editor", + "references": [ + "jp.keijiro.klak.spout.Runtime" + ], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false +} diff --git a/_Package/KlakSpout/Editor/jp.keijiro.klak.spout.Editor.asmdef.meta b/_Package/KlakSpout/Editor/jp.keijiro.klak.spout.Editor.asmdef.meta new file mode 100644 index 0000000..883b1e2 --- /dev/null +++ b/_Package/KlakSpout/Editor/jp.keijiro.klak.spout.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 21435214e6169c649985b5540a63188a +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/LICENSE.md b/_Package/KlakSpout/LICENSE.md new file mode 100644 index 0000000..19c77b8 --- /dev/null +++ b/_Package/KlakSpout/LICENSE.md @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 Keijiro Takahashi + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/_Package/KlakSpout/LICENSE.md.meta b/_Package/KlakSpout/LICENSE.md.meta new file mode 100644 index 0000000..a1ca9bf --- /dev/null +++ b/_Package/KlakSpout/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a3a09c268502f7746810f38992bd70b2 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/README.md b/_Package/KlakSpout/README.md new file mode 100644 index 0000000..bb24f0f --- /dev/null +++ b/_Package/KlakSpout/README.md @@ -0,0 +1,94 @@ +KlakSpout +========= + +![gif](http://i.imgur.com/LxjjcrY.gif) + +**KlakSpout** is a Unity plugin that allows sharing rendered frames with other +applications with using the [Spout] protocol. + +The Spout protocol is supported by several frameworks (Processing, +openFrameworks, etc.) and software packages (Resolume, AfterEffects, etc.). +The plugin allows Unity to interoperate with them in real time without +incurring much overhead. + +[Spout]: http://spout.zeal.co/ + +System Requirements and Compatibilities +--------------------------------------- + +- KlakSpout requires Unity 5.6.0 or later. +- KlakSpout only supports Direct3D 11 (DX11) graphics API mode. Other APIs + (DX9, DX12, OpenGL core, etc.) are not supported at the moment. + +Features +-------- + +### Sending frames from a camera + +You can send rendered frames from a camera in a scene with attaching the +**SpoutSender** component to it. + +### Receiving frames from other applications + +You can receive frames from other applications and store them into a render +texture, or set them to a material property as an animating texture. + +Installation +------------ + +Download one of the unitypackage files from the [Releases] page and import it +to a project. + +[Releases]: https://github.com/keijiro/KlakSpout/releases + +Component Reference +------------------- + +### SpoutSender component + +![inspector](http://i.imgur.com/6oYHWpu.png) + +**SpoutSender** is a component for sending rendered frames to other +Spout-compatible applications. + +SpoutSender has only one property. **Clear Alpha** controls whether if contents +of the alpha channel are to be shared or discarded. When it's set to true, it +clears up the contents of the alpha channel with 1.0 (100% opacity). It's +useful when the alpha channel doesn't have any particular use. + +### SpoutReceiver component + +![inspector](http://i.imgur.com/0BWmM8i.png) + +**SpoutReceiver** is a component for receiving frames sent from other +Spout-compatible applications. + +**Name Filter** is used to select which Spout sender to connect to. The +receiver only tries to connect to a sender that has the given string in its +name. For instance, when Name Filter is set to "resolume", it doesn't connect +to "Processing 1" nor "maxSender", but "resolumeOut". When Name Filter is kept +empty, it tries to connect to the first found sender without name filtering. + +SpoutReceiver supports two ways of storing received frames. When a render +texture is set to **Target Texture**, it updates the render texture with the +received frames. When Target Texture is kept null, it automatically allocates +a temporary render texture for storing frames. These render textures are +accessible from scripts with the `sharedTexture` property. + +Received frames can be rendered with using material overriding. To override a +material, set a renderer to **Target Renderer**, then select a property to be +overridden from the drop-down list. + +Sender List Window +------------------ + +![Sender List](http://i.imgur.com/XbN7RvC.png) + +The **Spout Sender List** window is available from the menu "Window" -> "Spout" +-> "Spout Sender List". It shows the names of the senders that are currently +available. + +License +------- + +[MIT](LICENSE.md) diff --git a/_Package/KlakSpout/README.md.meta b/_Package/KlakSpout/README.md.meta new file mode 100644 index 0000000..7179502 --- /dev/null +++ b/_Package/KlakSpout/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4825f67de1ac6914bb329d527edf03bb +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources.meta b/_Package/KlakSpout/Resources.meta similarity index 58% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources.meta rename to _Package/KlakSpout/Resources.meta index 6633a5f..e8f4214 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources.meta +++ b/_Package/KlakSpout/Resources.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 -guid: fa63ddb264b7c4ba1b142bd519b19d00 +guid: c3a1c3646309d4f469c999381310b88c folderAsset: yes -timeCreated: 1462037991 -licenseType: Pro DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/_Package/KlakSpout/Resources/Fixup.cginc b/_Package/KlakSpout/Resources/Fixup.cginc new file mode 100644 index 0000000..06a40f4 --- /dev/null +++ b/_Package/KlakSpout/Resources/Fixup.cginc @@ -0,0 +1,24 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +#include "UnityCG.cginc" + +sampler2D _MainTex; +fixed _ClearAlpha; + +v2f_img vert(appdata_img v) +{ + v2f_img o; + o.pos = UnityObjectToClipPos(v.vertex); + o.uv = float2(v.texcoord.x, 1 - v.texcoord.y); + return o; +} + +fixed4 frag(v2f_img i) : SV_Target +{ + fixed4 col = tex2D(_MainTex, i.uv); + #if defined(SPOUT_RECEIVER) && !defined(UNITY_COLORSPACE_GAMMA) + col.rgb = GammaToLinearSpace(col.rgb); + #endif + col.a = saturate(col.a + _ClearAlpha); + return col; +} diff --git a/_Package/KlakSpout/Resources/Fixup.cginc.meta b/_Package/KlakSpout/Resources/Fixup.cginc.meta new file mode 100644 index 0000000..c9aa2c2 --- /dev/null +++ b/_Package/KlakSpout/Resources/Fixup.cginc.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 35d67d62b7c939d4e8fdb1c3bed59a83 +timeCreated: 1491926074 +licenseType: Pro +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Resources/Fixup.shader b/_Package/KlakSpout/Resources/Fixup.shader new file mode 100644 index 0000000..4ec4bbe --- /dev/null +++ b/_Package/KlakSpout/Resources/Fixup.shader @@ -0,0 +1,32 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +Shader "Hidden/Spout/Fixup" +{ + Properties + { + _MainTex("", 2D) = "white" {} + } + SubShader + { + Cull Off ZWrite Off ZTest Always + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define SPOUT_SENDER + #include "Fixup.cginc" + ENDCG + } + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma multi_compile _ UNITY_COLORSPACE_GAMMA + #define SPOUT_RECEIVER + #include "Fixup.cginc" + ENDCG + } + } +} diff --git a/_Package/KlakSpout/Resources/Fixup.shader.meta b/_Package/KlakSpout/Resources/Fixup.shader.meta new file mode 100644 index 0000000..2a7d508 --- /dev/null +++ b/_Package/KlakSpout/Resources/Fixup.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: eb56c59e60b76874692c486f3bdd860d +timeCreated: 1491925542 +licenseType: Pro +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj.meta b/_Package/KlakSpout/Runtime.meta similarity index 58% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj.meta rename to _Package/KlakSpout/Runtime.meta index 088936b..0fbe191 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/Resources/English.lproj.meta +++ b/_Package/KlakSpout/Runtime.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 -guid: 8ae38fb02e09d4d0ebaf817ab8a68f5e +guid: a9ca729c9d09d03428ab5e26dc0170b2 folderAsset: yes -timeCreated: 1462037991 -licenseType: Pro DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS.meta b/_Package/KlakSpout/Runtime/Internal.meta similarity index 67% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS.meta rename to _Package/KlakSpout/Runtime/Internal.meta index b21e7ed..73fcda7 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Plugins/AVProQuickTime.bundle/Contents/MacOS.meta +++ b/_Package/KlakSpout/Runtime/Internal.meta @@ -1,7 +1,7 @@ fileFormatVersion: 2 -guid: 8dd50417478094d6083a139a4f848c36 +guid: 82c81c4751c9a7145a4d491944d132ab folderAsset: yes -timeCreated: 1462037991 +timeCreated: 1491924284 licenseType: Pro DefaultImporter: userData: diff --git a/_Package/KlakSpout/Runtime/Internal/KlakSpout.dll b/_Package/KlakSpout/Runtime/Internal/KlakSpout.dll new file mode 100644 index 0000000..197cf27 Binary files /dev/null and b/_Package/KlakSpout/Runtime/Internal/KlakSpout.dll differ diff --git a/_Package/KlakSpout/Runtime/Internal/KlakSpout.dll.meta b/_Package/KlakSpout/Runtime/Internal/KlakSpout.dll.meta new file mode 100644 index 0000000..b929284 --- /dev/null +++ b/_Package/KlakSpout/Runtime/Internal/KlakSpout.dll.meta @@ -0,0 +1,139 @@ +fileFormatVersion: 2 +guid: dc935766d7c9fd44181cb4b58ef3627e +timeCreated: 1491793810 +licenseType: Pro +PluginImporter: + serializedVersion: 2 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + data: + first: + '': Any + second: + enabled: 0 + settings: + Exclude Editor: 0 + Exclude Linux: 0 + Exclude Linux64: 0 + Exclude LinuxUniversal: 0 + Exclude OSXIntel: 0 + Exclude OSXIntel64: 0 + Exclude OSXUniversal: 0 + Exclude PS4: 1 + Exclude Win: 1 + Exclude Win64: 0 + Exclude WindowsStoreApps: 1 + data: + first: + '': Editor + second: + enabled: 0 + settings: + CPU: x86_64 + OS: Windows + data: + first: + Any: + second: + enabled: 0 + settings: {} + data: + first: + Editor: Editor + second: + enabled: 1 + settings: + DefaultValueInitialized: true + data: + first: + Facebook: Win + second: + enabled: 0 + settings: + CPU: None + data: + first: + Facebook: Win64 + second: + enabled: 0 + settings: + CPU: AnyCPU + data: + first: + PS4: PS4 + second: + enabled: 0 + settings: {} + data: + first: + Standalone: Linux + second: + enabled: 1 + settings: + CPU: x86 + data: + first: + Standalone: Linux64 + second: + enabled: 1 + settings: + CPU: x86_64 + data: + first: + Standalone: LinuxUniversal + second: + enabled: 1 + settings: + CPU: AnyCPU + data: + first: + Standalone: OSXIntel + second: + enabled: 1 + settings: + CPU: AnyCPU + data: + first: + Standalone: OSXIntel64 + second: + enabled: 1 + settings: + CPU: AnyCPU + data: + first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: AnyCPU + data: + first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: None + data: + first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: AnyCPU + data: + first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: + SDK: AnySDK + ScriptingBackend: AnyScriptingBackend + userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Runtime/Internal/PluginEntry.cs b/_Package/KlakSpout/Runtime/Internal/PluginEntry.cs new file mode 100644 index 0000000..5a4a3ad --- /dev/null +++ b/_Package/KlakSpout/Runtime/Internal/PluginEntry.cs @@ -0,0 +1,74 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +using UnityEngine; +using System.Runtime.InteropServices; + +namespace Klak.Spout +{ + public static class PluginEntry + { + #region Plugin polling + + static int _lastUpdateFrame = -1; + + public static void Poll() + { + if (Time.frameCount != _lastUpdateFrame) + { + GL.IssuePluginEvent(GetRenderEventFunc(), 0); + _lastUpdateFrame = Time.frameCount; + } + } + + #endregion + + #region Native plugin interface + + [DllImport("KlakSpout")] + public static extern System.IntPtr GetRenderEventFunc(); + + [DllImport("KlakSpout")] + public static extern System.IntPtr CreateSender(string name, int width, int height); + + [DllImport("KlakSpout")] + public static extern System.IntPtr CreateReceiver(string name); + + [DllImport("KlakSpout")] + public static extern void DestroySharedObject(System.IntPtr ptr); + + [DllImport("KlakSpout")] + public static extern bool DetectDisconnection(System.IntPtr ptr); + + [DllImport("KlakSpout")] + public static extern System.IntPtr GetTexturePointer(System.IntPtr ptr); + + [DllImport("KlakSpout")] + public static extern int GetTextureWidth(System.IntPtr ptr); + + [DllImport("KlakSpout")] + public static extern int GetTextureHeight(System.IntPtr ptr); + + [DllImport("KlakSpout")] + public static extern int CountSharedObjects(); + + [DllImport("KlakSpout")] + public static extern System.IntPtr GetSharedObjectName(int index); + + public static string GetSharedObjectNameString(int index) + { + var ptr = GetSharedObjectName(index); + return ptr != System.IntPtr.Zero ? Marshal.PtrToStringAnsi(ptr) : null; + } + + [DllImport("KlakSpout")] + public static extern System.IntPtr SearchSharedObjectName(string keyword); + + public static string SearchSharedObjectNameString(string keyword) + { + var ptr = SearchSharedObjectName(keyword); + return ptr != System.IntPtr.Zero ? Marshal.PtrToStringAnsi(ptr) : null; + } + + #endregion + } +} diff --git a/_Package/KlakSpout/Runtime/Internal/PluginEntry.cs.meta b/_Package/KlakSpout/Runtime/Internal/PluginEntry.cs.meta new file mode 100644 index 0000000..0b4efa5 --- /dev/null +++ b/_Package/KlakSpout/Runtime/Internal/PluginEntry.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5833bfa0ae0a90e478f1f90a455ee667 +timeCreated: 1491903743 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Runtime/SpoutReceiver.cs b/_Package/KlakSpout/Runtime/SpoutReceiver.cs new file mode 100644 index 0000000..743b787 --- /dev/null +++ b/_Package/KlakSpout/Runtime/SpoutReceiver.cs @@ -0,0 +1,161 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +using UnityEngine; + +namespace Klak.Spout +{ + /// Spout receiver class + [AddComponentMenu("Klak/Spout/Spout Receiver")] + public class SpoutReceiver : MonoBehaviour + { + #region Editable properties + + [SerializeField] string _nameFilter; + + public string nameFilter { + get { return _nameFilter; } + set { _nameFilter = value; } + } + + [SerializeField] RenderTexture _targetTexture; + + public RenderTexture targetTexture { + get { return _targetTexture; } + set { _targetTexture = value; } + } + + [SerializeField] Renderer _targetRenderer; + + public Renderer targetRenderer { + get { return _targetRenderer; } + set { _targetRenderer = value; } + } + + [SerializeField] string _targetMaterialProperty; + + public string targetMaterialProperty { + get { return _targetMaterialProperty; } + set { targetMaterialProperty = value; } + } + + #endregion + + #region Public property + + Texture2D _sharedTexture; + RenderTexture _fixedTexture; + + public Texture receivedTexture { + get { return _targetTexture != null ? _targetTexture : _fixedTexture; } + } + + #endregion + + #region Private variables + + System.IntPtr _receiver; + Material _fixupMaterial; + MaterialPropertyBlock _propertyBlock; + + // Search the texture list and create a receiver when found one. + void SearchAndCreateTexture() + { + var name = PluginEntry.SearchSharedObjectNameString(_nameFilter); + if (name != null) _receiver = PluginEntry.CreateReceiver(name); + } + + #endregion + + #region MonoBehaviour functions + + void Start() + { + _fixupMaterial = new Material(Shader.Find("Hidden/Spout/Fixup")); + _propertyBlock = new MaterialPropertyBlock(); + + // Initial search. + SearchAndCreateTexture(); + } + + void OnDestroy() + { + if (_receiver != System.IntPtr.Zero) + { + PluginEntry.DestroySharedObject(_receiver); + _receiver = System.IntPtr.Zero; + } + + if (_sharedTexture != null) + { + Destroy(_sharedTexture); + _sharedTexture = null; + } + + if (_fixedTexture != null) + { + Destroy(_fixedTexture); + _fixedTexture = null; + } + } + + void Update() + { + PluginEntry.Poll(); + + if (_receiver == System.IntPtr.Zero) + { + // The receiver hasn't been set up yet; try to get one. + SearchAndCreateTexture(); + } + else + { + // We've received textures via this receiver + // but now it's disconnected from the sender -> Destroy it. + if (PluginEntry.GetTexturePointer(_receiver) != System.IntPtr.Zero && + PluginEntry.DetectDisconnection(_receiver)) + { + OnDestroy(); + } + } + + if (_receiver != System.IntPtr.Zero) + { + if (_sharedTexture == null) + { + // Try to initialize the shared texture. + var ptr = PluginEntry.GetTexturePointer(_receiver); + if (ptr != System.IntPtr.Zero) + { + _sharedTexture = Texture2D.CreateExternalTexture( + PluginEntry.GetTextureWidth(_receiver), + PluginEntry.GetTextureHeight(_receiver), + TextureFormat.ARGB32, false, false, ptr + ); + } + } + else + { + // Update external objects. + if (_targetTexture != null) + { + Graphics.Blit(_sharedTexture, _targetTexture, _fixupMaterial, 1); + } + else + { + if (_fixedTexture == null) + _fixedTexture = new RenderTexture(_sharedTexture.width, _sharedTexture.height, 0); + Graphics.Blit(_sharedTexture, _fixedTexture, _fixupMaterial, 1); + } + + if (_targetRenderer != null) + { + _propertyBlock.SetTexture(_targetMaterialProperty, receivedTexture); + _targetRenderer.SetPropertyBlock(_propertyBlock); + } + } + } + } + + #endregion + } +} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutReceiver.cs.meta b/_Package/KlakSpout/Runtime/SpoutReceiver.cs.meta similarity index 53% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutReceiver.cs.meta rename to _Package/KlakSpout/Runtime/SpoutReceiver.cs.meta index 5fe40c6..b2a596f 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutReceiver.cs.meta +++ b/_Package/KlakSpout/Runtime/SpoutReceiver.cs.meta @@ -1,8 +1,12 @@ fileFormatVersion: 2 -guid: 846b026f9a6af4049ae8cbc3b560f976 +guid: 62f7dec0b00674947bc631624c21970a +timeCreated: 1491895289 +licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Runtime/SpoutSender.cs b/_Package/KlakSpout/Runtime/SpoutSender.cs new file mode 100644 index 0000000..0ac79a1 --- /dev/null +++ b/_Package/KlakSpout/Runtime/SpoutSender.cs @@ -0,0 +1,106 @@ +// KlakSpout - Spout realtime video sharing plugin for Unity +// https://github.com/keijiro/KlakSpout +using UnityEngine; + +namespace Klak.Spout +{ + /// Spout sender class + [AddComponentMenu("Klak/Spout/Spout Sender")] + [RequireComponent(typeof(Camera))] + [ExecuteInEditMode] + public class SpoutSender : MonoBehaviour + { + #region Editable properties + + [SerializeField] bool _clearAlpha = true; + + public bool clearAlpha { + get { return _clearAlpha; } + set { _clearAlpha = value; } + } + + #endregion + + #region Private members + + System.IntPtr _sender; + Texture2D _sharedTexture; + Material _fixupMaterial; + + #endregion + + #region MonoBehaviour functions + + void OnEnable() + { + var camera = GetComponent(); + _sender = PluginEntry.CreateSender(name, camera.pixelWidth, camera.pixelHeight); + } + + void OnDisable() + { + if (_sender != System.IntPtr.Zero) + { + PluginEntry.DestroySharedObject(_sender); + _sender = System.IntPtr.Zero; + } + + if (_sharedTexture != null) + { + if (Application.isPlaying) + Destroy(_sharedTexture); + else + DestroyImmediate(_sharedTexture); + _sharedTexture = null; + } + } + + void Update() + { + PluginEntry.Poll(); + } + + void OnRenderImage(RenderTexture source, RenderTexture destination) + { + // Lazy initialization for the shared texture. + if (_sharedTexture == null) + { + var ptr = PluginEntry.GetTexturePointer(_sender); + if (ptr != System.IntPtr.Zero) + { + _sharedTexture = Texture2D.CreateExternalTexture( + PluginEntry.GetTextureWidth(_sender), + PluginEntry.GetTextureHeight(_sender), + TextureFormat.ARGB32, false, false, ptr + ); + } + } + + // Update the shared texture. + if (_sharedTexture != null) + { + // Lazy initialization for the fix-up shader. + if (_fixupMaterial == null) + _fixupMaterial = new Material(Shader.Find("Hidden/Spout/Fixup")); + + // Parameters for the fix-up shader. + _fixupMaterial.SetFloat("_ClearAlpha", _clearAlpha ? 1 : 0); + + // Apply the fix-up shader. + var tempRT = RenderTexture.GetTemporary(_sharedTexture.width, _sharedTexture.height); + Graphics.Blit(source, tempRT, _fixupMaterial, 0); + + // Copy the result to the shared texture. + Graphics.CopyTexture(tempRT, _sharedTexture); + + // Release temporaries. + RenderTexture.ReleaseTemporary(tempRT); + } + + // Just transfer the source to the destination. + Graphics.Blit(source, destination); + } + + #endregion + } +} diff --git a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutSender.cs.meta b/_Package/KlakSpout/Runtime/SpoutSender.cs.meta similarity index 53% rename from Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutSender.cs.meta rename to _Package/KlakSpout/Runtime/SpoutSender.cs.meta index 5419970..2ebfc50 100644 --- a/Unity-19050-05-BallPool/Assets/UnityUtils/3rdParty/Spout/Scripts/SpoutSender.cs.meta +++ b/_Package/KlakSpout/Runtime/SpoutSender.cs.meta @@ -1,8 +1,12 @@ fileFormatVersion: 2 -guid: 6a2582b4147ea6e4ebf31586d3c7d730 +guid: 45099d624c1e6c14e9514f4e5ea1ed9c +timeCreated: 1491793847 +licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/Runtime/jp.keijiro.klak.spout.Runtime.asmdef b/_Package/KlakSpout/Runtime/jp.keijiro.klak.spout.Runtime.asmdef new file mode 100644 index 0000000..e34064e --- /dev/null +++ b/_Package/KlakSpout/Runtime/jp.keijiro.klak.spout.Runtime.asmdef @@ -0,0 +1,3 @@ +{ + "name": "jp.keijiro.klak.spout.Runtime" +} diff --git a/_Package/KlakSpout/Runtime/jp.keijiro.klak.spout.Runtime.asmdef.meta b/_Package/KlakSpout/Runtime/jp.keijiro.klak.spout.Runtime.asmdef.meta new file mode 100644 index 0000000..969e4dc --- /dev/null +++ b/_Package/KlakSpout/Runtime/jp.keijiro.klak.spout.Runtime.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7cdfac5ef1f961d4ebfe51361a2020bd +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/_Package/KlakSpout/package.json b/_Package/KlakSpout/package.json new file mode 100644 index 0000000..f7773eb --- /dev/null +++ b/_Package/KlakSpout/package.json @@ -0,0 +1,8 @@ +{ + "name": "jp.keijiro.klak.spout", + "displayName": "KlakSpout", + "version": "0.0.1", + "unity": "2018.1", + "description": "KlakSpout is a Unity plugin that allows sharing rendered frames with other applications with using the Spout protocol.", + "dependencies": { } +} diff --git a/_Package/KlakSpout/package.json.meta b/_Package/KlakSpout/package.json.meta new file mode 100644 index 0000000..c881615 --- /dev/null +++ b/_Package/KlakSpout/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 46d658811c8e74d42a9b9d2ee0dd286a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: