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
+=========
+
+
+
+**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
+
+
+
+**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
+
+
+
+**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
+------------------
+
+
+
+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: