From 405354d73e835768144fa0c15208cdbeb240be99 Mon Sep 17 00:00:00 2001 From: desktop-maesty/steve Date: Sat, 2 Jun 2018 07:50:37 +1000 Subject: [PATCH] Added standard assets for First person and Prototyping --- Assets/FungusExamples/FirstPerson.meta | 8 + .../FirstPerson/FirstPersonDemo.unity | 305 ++++++ .../FirstPerson/FirstPersonDemo.unity.meta | 7 + Assets/Standard Assets.meta | 8 + Assets/Standard Assets/Characters.meta | 6 + .../Characters/FirstPersonCharacter.meta | 6 + .../FirstPersonCharacter/Audio.meta | 6 + .../FirstPersonCharacter/Audio/Footstep01.wav | Bin 0 -> 49372 bytes .../Audio/Footstep01.wav.meta | 16 + .../FirstPersonCharacter/Audio/Footstep02.wav | Bin 0 -> 51060 bytes .../Audio/Footstep02.wav.meta | 16 + .../FirstPersonCharacter/Audio/Footstep03.wav | Bin 0 -> 54208 bytes .../Audio/Footstep03.wav.meta | 16 + .../FirstPersonCharacter/Audio/Footstep04.wav | Bin 0 -> 39646 bytes .../Audio/Footstep04.wav.meta | 16 + .../FirstPersonCharacter/Audio/Jump.wav | Bin 0 -> 22370 bytes .../FirstPersonCharacter/Audio/Jump.wav.meta | 16 + .../FirstPersonCharacter/Audio/Land.wav | Bin 0 -> 45462 bytes .../FirstPersonCharacter/Audio/Land.wav.meta | 16 + .../FirstPersonCharacterGuidelines.txt | 18 + .../FirstPersonCharacterGuidelines.txt.meta | 5 + .../FirstPersonCharacter/Prefabs.meta | 6 + .../Prefabs/FPSController.prefab | 324 ++++++ .../Prefabs/FPSController.prefab.meta | 5 + .../Prefabs/RigidBodyFPSController.prefab | 260 +++++ .../RigidBodyFPSController.prefab.meta | 5 + .../FirstPersonCharacter/Scripts.meta | 6 + .../Scripts/FirstPersonController.cs | 259 +++++ .../Scripts/FirstPersonController.cs.meta | 9 + .../FirstPersonCharacter/Scripts/HeadBob.cs | 55 + .../Scripts/HeadBob.cs.meta | 9 + .../FirstPersonCharacter/Scripts/MouseLook.cs | 115 +++ .../Scripts/MouseLook.cs.meta | 9 + .../Scripts/RigidbodyFirstPersonController.cs | 265 +++++ .../RigidbodyFirstPersonController.cs.meta | 9 + .../Standard Assets/CrossPlatformInput.meta | 9 + .../CrossPlatformInputGuidelines.txt | 32 + .../CrossPlatformInputGuidelines.txt.meta | 5 + .../CrossPlatformInput/Prefabs.meta | 9 + .../Prefabs/CarTiltControls.prefab | 461 +++++++++ .../Prefabs/CarTiltControls.prefab.meta | 5 + .../Prefabs/DualTouchControls.prefab | 578 +++++++++++ .../Prefabs/DualTouchControls.prefab.meta | 5 + .../Prefabs/MobileAircraftControls.prefab | 972 ++++++++++++++++++ .../MobileAircraftControls.prefab.meta | 5 + .../Prefabs/MobileSingleStickControl.prefab | 376 +++++++ .../MobileSingleStickControl.prefab.meta | 5 + .../Prefabs/MobileTiltControlRig.prefab | 144 +++ .../Prefabs/MobileTiltControlRig.prefab.meta | 5 + .../CrossPlatformInput/Scripts.meta | 9 + .../Scripts/AxisTouchButton.cs | 75 ++ .../Scripts/AxisTouchButton.cs.meta | 9 + .../Scripts/ButtonHandler.cs | 50 + .../Scripts/ButtonHandler.cs.meta | 9 + .../Scripts/CrossPlatformInputManager.cs | 318 ++++++ .../Scripts/CrossPlatformInputManager.cs.meta | 11 + .../Scripts/InputAxisScrollbar.cs | 17 + .../Scripts/InputAxisScrollbar.cs.meta | 9 + .../CrossPlatformInput/Scripts/Joystick.cs | 118 +++ .../Scripts/Joystick.cs.meta | 9 + .../Scripts/MobileControlRig.cs | 102 ++ .../Scripts/MobileControlRig.cs.meta | 9 + .../Scripts/PlatformSpecific.meta | 9 + .../Scripts/PlatformSpecific/MobileInput.cs | 133 +++ .../PlatformSpecific/MobileInput.cs.meta | 9 + .../PlatformSpecific/StandaloneInput.cs | 79 ++ .../PlatformSpecific/StandaloneInput.cs.meta | 9 + .../CrossPlatformInput/Scripts/TiltInput.cs | 145 +++ .../Scripts/TiltInput.cs.meta | 13 + .../CrossPlatformInput/Scripts/TouchPad.cs | 156 +++ .../Scripts/TouchPad.cs.meta | 9 + .../Scripts/VirtualInput.cs | 134 +++ .../Scripts/VirtualInput.cs.meta | 9 + .../CrossPlatformInput/Sprites.meta | 9 + .../Sprites/ButtonAcceleratorOverSprite.png | Bin 0 -> 10618 bytes .../ButtonAcceleratorOverSprite.png.meta | 52 + .../Sprites/ButtonAcceleratorUpSprite.png | Bin 0 -> 10747 bytes .../ButtonAcceleratorUpSprite.png.meta | 52 + .../Sprites/ButtonArrowOverSprite.png | Bin 0 -> 8229 bytes .../Sprites/ButtonArrowOverSprite.png.meta | 52 + .../Sprites/ButtonArrowUpSprite.png | Bin 0 -> 8376 bytes .../Sprites/ButtonArrowUpSprite.png.meta | 52 + .../Sprites/ButtonBrakeOverSprite.png | Bin 0 -> 5818 bytes .../Sprites/ButtonBrakeOverSprite.png.meta | 52 + .../Sprites/ButtonBrakeUpSprite.png | Bin 0 -> 5873 bytes .../Sprites/ButtonBrakeUpSprite.png.meta | 52 + .../Sprites/ButtonCameraCycleUpSprite.png | Bin 0 -> 5764 bytes .../ButtonCameraCycleUpSprite.png.meta | 52 + .../Sprites/ButtonResetSprite.png | Bin 0 -> 8412 bytes .../Sprites/ButtonResetSprite.png.meta | 53 + .../Sprites/ButtonSpacebarSprite.png | Bin 0 -> 3471 bytes .../Sprites/ButtonSpacebarSprite.png.meta | 53 + .../Sprites/ButtonThumbstickOverSprite.png | Bin 0 -> 8099 bytes .../ButtonThumbstickOverSprite.png.meta | 52 + .../Sprites/ButtonThumbstickUpSprite.png | Bin 0 -> 8278 bytes .../Sprites/ButtonThumbstickUpSprite.png.meta | 52 + .../Sprites/ButtonTimescaleFullUpSprite.png | Bin 0 -> 8409 bytes .../ButtonTimescaleFullUpSprite.png.meta | 52 + .../Sprites/ButtonTimescaleSlowUpSprite.png | Bin 0 -> 9144 bytes .../ButtonTimescaleSlowUpSprite.png.meta | 52 + .../Sprites/SliderBackgroundSprite.png | Bin 0 -> 2309 bytes .../Sprites/SliderBackgroundSprite.png.meta | 53 + .../Sprites/SliderHandleSprite.png | Bin 0 -> 1671 bytes .../Sprites/SliderHandleSprite.png.meta | 52 + .../Sprites/TouchpadSprite.png | Bin 0 -> 3828 bytes .../Sprites/TouchpadSprite.png.meta | 53 + Assets/Standard Assets/Editor.meta | 8 + .../Editor/CrossPlatformInput.meta | 9 + .../CrossPlatformInputInitialize.cs | 137 +++ .../CrossPlatformInputInitialize.cs.meta | 9 + Assets/Standard Assets/PhysicsMaterials.meta | 9 + .../PhysicsMaterials/Bouncy.physicmaterial | 19 + .../Bouncy.physicmaterial.meta | 8 + .../PhysicsMaterials/Ice.physicmaterial | 19 + .../PhysicsMaterials/Ice.physicmaterial.meta | 8 + .../MaxFriction.physicMaterial | 16 + .../MaxFriction.physicMaterial.meta | 8 + .../PhysicsMaterials/Metal.physicmaterial | 19 + .../Metal.physicmaterial.meta | 8 + .../PhysicsMaterials/Rubber.physicmaterial | 19 + .../Rubber.physicmaterial.meta | 8 + .../PhysicsMaterials/Wood.physicmaterial | 19 + .../PhysicsMaterials/Wood.physicmaterial.meta | 8 + .../ZeroFriction.physicMaterial | 16 + .../ZeroFriction.physicMaterial.meta | 8 + Assets/Standard Assets/Prototyping.meta | 6 + .../Prototyping/Materials.meta | 6 + .../Prototyping/Materials/NavyGrid.mat | 181 ++++ .../Prototyping/Materials/NavyGrid.mat.meta | 5 + .../Prototyping/Materials/NavySmooth.mat | 180 ++++ .../Prototyping/Materials/NavySmooth.mat.meta | 5 + .../Prototyping/Materials/PinkGrid.mat | 181 ++++ .../Prototyping/Materials/PinkGrid.mat.meta | 5 + .../Prototyping/Materials/PinkSmooth.mat | 181 ++++ .../Prototyping/Materials/PinkSmooth.mat.meta | 5 + .../Prototyping/Materials/YellowGrid.mat | 181 ++++ .../Prototyping/Materials/YellowGrid.mat.meta | 5 + .../Prototyping/Materials/YellowSmooth.mat | 181 ++++ .../Materials/YellowSmooth.mat.meta | 5 + .../Standard Assets/Prototyping/Models.meta | 6 + .../Models/BlockPrototype04x04x04.fbx | Bin 0 -> 22704 bytes .../Models/BlockPrototype04x04x04.fbx.meta | 71 ++ .../Models/CubePrototype02x02x02.fbx | Bin 0 -> 23568 bytes .../Models/CubePrototype02x02x02.fbx.meta | 71 ++ .../Models/CubePrototype04x04x04.fbx | Bin 0 -> 23568 bytes .../Models/CubePrototype04x04x04.fbx.meta | 71 ++ .../Models/CubePrototype08x08x08.fbx | Bin 0 -> 23248 bytes .../Models/CubePrototype08x08x08.fbx.meta | 71 ++ .../Models/FloorPrototype04x01x04.fbx | Bin 0 -> 23568 bytes .../Models/FloorPrototype04x01x04.fbx.meta | 71 ++ .../Models/FloorPrototype08x01x08.fbx | Bin 0 -> 22704 bytes .../Models/FloorPrototype08x01x08.fbx.meta | 71 ++ .../Models/FloorPrototype64x01x64.fbx | Bin 0 -> 23568 bytes .../Models/FloorPrototype64x01x64.fbx.meta | 71 ++ .../Models/HousePrototype16x16x24.fbx | Bin 0 -> 24016 bytes .../Models/HousePrototype16x16x24.fbx.meta | 71 ++ .../Models/JoinInnerPrototype01x06x01.fbx | Bin 0 -> 23504 bytes .../JoinInnerPrototype01x06x01.fbx.meta | 71 ++ .../Models/JoinMidPrototype04x06x01.fbx | Bin 0 -> 22928 bytes .../Models/JoinMidPrototype04x06x01.fbx.meta | 71 ++ .../Models/JoinOuterPrototype02x06x02.fbx | Bin 0 -> 23328 bytes .../JoinOuterPrototype02x06x02.fbx.meta | 71 ++ .../Models/PickupPrototype01x01x01.fbx | Bin 0 -> 39920 bytes .../Models/PickupPrototype01x01x01.fbx.meta | 72 ++ .../Models/PillarPrototype01x02x01.fbx | Bin 0 -> 22704 bytes .../Models/PillarPrototype01x02x01.fbx.meta | 71 ++ .../Models/PillarPrototype02x08x02.fbx | Bin 0 -> 22832 bytes .../Models/PillarPrototype02x08x02.fbx.meta | 71 ++ .../Models/PlatformPrototype02x01x02.fbx | Bin 0 -> 19920 bytes .../Models/PlatformPrototype02x01x02.fbx.meta | 71 ++ .../Models/PlatformPrototype04x01x04.fbx | Bin 0 -> 23584 bytes .../Models/PlatformPrototype04x01x04.fbx.meta | 71 ++ .../Models/PlatformPrototype08x01x08.fbx | Bin 0 -> 23584 bytes .../Models/PlatformPrototype08x01x08.fbx.meta | 71 ++ .../Models/RampPrototype04x02x02.fbx | Bin 0 -> 22976 bytes .../Models/RampPrototype04x02x02.fbx.meta | 71 ++ .../Models/StepsPrototype04x02x02.fbx | Bin 0 -> 26496 bytes .../Models/StepsPrototype04x02x02.fbx.meta | 71 ++ .../Models/WallPrototype08x08x01.fbx | Bin 0 -> 22432 bytes .../Models/WallPrototype08x08x01.fbx.meta | 71 ++ .../Standard Assets/Prototyping/Prefabs.meta | 6 + .../Prefabs/BlockPrototype04x04x04.prefab | 89 ++ .../BlockPrototype04x04x04.prefab.meta | 5 + .../Prefabs/CubePrototype02x02x02.prefab | 90 ++ .../Prefabs/CubePrototype02x02x02.prefab.meta | 5 + .../Prefabs/CubePrototype04x04x04.prefab | 89 ++ .../Prefabs/CubePrototype04x04x04.prefab.meta | 5 + .../Prefabs/CubePrototype08x08x08.prefab | 89 ++ .../Prefabs/CubePrototype08x08x08.prefab.meta | 5 + .../Prefabs/FloorPrototype04x01x04.prefab | 89 ++ .../FloorPrototype04x01x04.prefab.meta | 5 + .../Prefabs/FloorPrototype08x01x08.prefab | 89 ++ .../FloorPrototype08x01x08.prefab.meta | 5 + .../Prefabs/FloorPrototype64x01x64.prefab | 89 ++ .../FloorPrototype64x01x64.prefab.meta | 5 + .../Prefabs/HousePrototype16x16x24.prefab | 89 ++ .../HousePrototype16x16x24.prefab.meta | 5 + .../Prefabs/JoinInnerPrototype01x06x01.prefab | 89 ++ .../JoinInnerPrototype01x06x01.prefab.meta | 5 + .../Prefabs/JoinMidPrototype04x06x01.prefab | 89 ++ .../JoinMidPrototype04x06x01.prefab.meta | 5 + .../Prefabs/JoinOuterPrototype02x06x02.prefab | 89 ++ .../JoinOuterPrototype02x06x02.prefab.meta | 5 + .../Prefabs/PickupPrototype.prefab | 89 ++ .../Prefabs/PickupPrototype.prefab.meta | 5 + .../Prefabs/PillarPrototype01x02x01.prefab | 89 ++ .../PillarPrototype01x02x01.prefab.meta | 5 + .../Prefabs/PillarPrototype02x08x02.prefab | 89 ++ .../PillarPrototype02x08x02.prefab.meta | 5 + .../Prefabs/PlatformPrototype02x01x02.prefab | 90 ++ .../PlatformPrototype02x01x02.prefab.meta | 5 + .../Prefabs/PlatformPrototype04x01x04.prefab | 89 ++ .../PlatformPrototype04x01x04.prefab.meta | 5 + .../Prefabs/PlatformPrototype08x01x08.prefab | 89 ++ .../PlatformPrototype08x01x08.prefab.meta | 5 + .../Prefabs/RampPrototype04x02x02.prefab | 89 ++ .../Prefabs/RampPrototype04x02x02.prefab.meta | 5 + .../Prefabs/StepsPrototype04x02x02.prefab | 89 ++ .../StepsPrototype04x02x02.prefab.meta | 5 + .../Prefabs/WallPrototype08x08x01.prefab | 89 ++ .../Prefabs/WallPrototype08x08x01.prefab.meta | 5 + .../Standard Assets/Prototyping/Shaders.meta | 6 + .../Shaders/WorldCoordDiffuse.shader | 47 + .../Shaders/WorldCoordDiffuse.shader.meta | 6 + .../Standard Assets/Prototyping/Textures.meta | 6 + .../Prototyping/Textures/GridEmissive.png | Bin 0 -> 21296 bytes .../Textures/GridEmissive.png.meta | 52 + .../Textures/SwatchMauveAlbedo.png | Bin 0 -> 17708 bytes .../Textures/SwatchMauveAlbedo.png.meta | 52 + .../Prototyping/Textures/SwatchNavyAlbedo.png | Bin 0 -> 17708 bytes .../Textures/SwatchNavyAlbedo.png.meta | 52 + .../Textures/SwatchNavyDarkAlbedo.png | Bin 0 -> 17706 bytes .../Textures/SwatchNavyDarkAlbedo.png.meta | 52 + .../Textures/SwatchOrangeAlbedo.png | Bin 0 -> 17706 bytes .../Textures/SwatchOrangeAlbedo.png.meta | 52 + .../Textures/SwatchPinkDAlbedo.png | Bin 0 -> 14602 bytes .../Textures/SwatchPinkDAlbedo.png.meta | 52 + .../Prototyping/Textures/SwatchTealAlbedo.png | Bin 0 -> 17705 bytes .../Textures/SwatchTealAlbedo.png.meta | 52 + .../Textures/SwatchTurquoiseAlbedo.png | Bin 0 -> 17709 bytes .../Textures/SwatchTurquoiseAlbedo.png.meta | 52 + .../Textures/SwatchWhiteAlbedo.png | Bin 0 -> 17704 bytes .../Textures/SwatchWhiteAlbedo.png.meta | 52 + .../Textures/SwatchYellowAlbedo.png | Bin 0 -> 17256 bytes .../Textures/SwatchYellowAlbedo.png.meta | 52 + Assets/Standard Assets/Utility.meta | 9 + .../Utility/ActivateTrigger.cs | 95 ++ .../Utility/ActivateTrigger.cs.meta | 9 + .../Utility/AlphaButtonClickMask.cs | 58 ++ .../Utility/AlphaButtonClickMask.cs.meta | 12 + .../Utility/AutoMobileShaderSwitch.cs | 199 ++++ .../Utility/AutoMobileShaderSwitch.cs.meta | 9 + .../Utility/AutoMoveAndRotate.cs | 41 + .../Utility/AutoMoveAndRotate.cs.meta | 9 + .../Standard Assets/Utility/CameraRefocus.cs | 58 ++ .../Utility/CameraRefocus.cs.meta | 9 + .../Utility/CurveControlledBob.cs | 54 + .../Utility/CurveControlledBob.cs.meta | 9 + .../Standard Assets/Utility/DragRigidbody.cs | 96 ++ .../Utility/DragRigidbody.cs.meta | 9 + .../Utility/DynamicShadowSettings.cs | 51 + .../Utility/DynamicShadowSettings.cs.meta | 9 + .../Utility/EventSystemChecker.cs | 21 + .../Utility/EventSystemChecker.cs.meta | 9 + Assets/Standard Assets/Utility/FOVKick.cs | 73 ++ .../Standard Assets/Utility/FOVKick.cs.meta | 9 + Assets/Standard Assets/Utility/FPSCounter.cs | 38 + .../Utility/FPSCounter.cs.meta | 9 + .../Standard Assets/Utility/FollowTarget.cs | 18 + .../Utility/FollowTarget.cs.meta | 9 + Assets/Standard Assets/Utility/ForcedReset.cs | 18 + .../Utility/ForcedReset.cs.meta | 9 + .../Utility/LerpControlledBob.cs | 45 + .../Utility/LerpControlledBob.cs.meta | 9 + .../Standard Assets/Utility/ObjectResetter.cs | 57 + .../Utility/ObjectResetter.cs.meta | 9 + .../Utility/ParticleSystemDestroyer.cs | 62 ++ .../Utility/ParticleSystemDestroyer.cs.meta | 9 + .../Utility/PlatformSpecificContent.cs | 121 +++ .../Utility/PlatformSpecificContent.cs.meta | 9 + Assets/Standard Assets/Utility/Prefabs.meta | 6 + .../Utility/Prefabs/FramerateCounter.prefab | 183 ++++ .../Prefabs/FramerateCounter.prefab.meta | 5 + .../Utility/SimpleActivatorMenu.cs | 38 + .../Utility/SimpleActivatorMenu.cs.meta | 9 + .../Utility/SimpleMouseRotator.cs | 113 ++ .../Utility/SimpleMouseRotator.cs.meta | 9 + .../Standard Assets/Utility/SmoothFollow.cs | 61 ++ .../Utility/SmoothFollow.cs.meta | 9 + .../Utility/TimedObjectActivator.cs | 216 ++++ .../Utility/TimedObjectActivator.cs.meta | 9 + .../Utility/TimedObjectDestructor.cs | 27 + .../Utility/TimedObjectDestructor.cs.meta | 9 + .../Utility/WaypointCircuit.cs | 384 +++++++ .../Utility/WaypointCircuit.cs.meta | 9 + .../Utility/WaypointProgressTracker.cs | 152 +++ .../Utility/WaypointProgressTracker.cs.meta | 9 + ProjectSettings/ProjectSettings.asset | 66 +- 298 files changed, 14634 insertions(+), 39 deletions(-) create mode 100644 Assets/FungusExamples/FirstPerson.meta create mode 100644 Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity create mode 100644 Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity.meta create mode 100644 Assets/Standard Assets.meta create mode 100644 Assets/Standard Assets/Characters.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep01.wav create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep01.wav.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep02.wav create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep02.wav.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep03.wav create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep03.wav.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep04.wav create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep04.wav.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Jump.wav create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Jump.wav.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Land.wav create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Land.wav.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/FirstPersonCharacterGuidelines.txt create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/FirstPersonCharacterGuidelines.txt.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Prefabs.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Prefabs/FPSController.prefab create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Prefabs/FPSController.prefab.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Prefabs/RigidBodyFPSController.prefab create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Prefabs/RigidBodyFPSController.prefab.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs.meta create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs create mode 100644 Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt create mode 100644 Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonSpacebarSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonSpacebarSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta create mode 100644 Assets/Standard Assets/Editor.meta create mode 100644 Assets/Standard Assets/Editor/CrossPlatformInput.meta create mode 100644 Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs create mode 100644 Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial.meta create mode 100644 Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial create mode 100644 Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial.meta create mode 100644 Assets/Standard Assets/Prototyping.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat create mode 100644 Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat create mode 100644 Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat create mode 100644 Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat create mode 100644 Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat create mode 100644 Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat.meta create mode 100644 Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat create mode 100644 Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat.meta create mode 100644 Assets/Standard Assets/Prototyping/Models.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/CubePrototype02x02x02.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/CubePrototype02x02x02.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/CubePrototype04x04x04.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/CubePrototype04x04x04.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/CubePrototype08x08x08.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/CubePrototype08x08x08.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/FloorPrototype04x01x04.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/FloorPrototype04x01x04.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/FloorPrototype08x01x08.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/FloorPrototype08x01x08.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/FloorPrototype64x01x64.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/FloorPrototype64x01x64.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/HousePrototype16x16x24.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/HousePrototype16x16x24.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/JoinMidPrototype04x06x01.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/JoinMidPrototype04x06x01.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/JoinOuterPrototype02x06x02.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/JoinOuterPrototype02x06x02.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/PickupPrototype01x01x01.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/PickupPrototype01x01x01.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/PillarPrototype01x02x01.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/PillarPrototype01x02x01.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/PillarPrototype02x08x02.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/PillarPrototype02x08x02.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/PlatformPrototype02x01x02.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/PlatformPrototype02x01x02.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Models/WallPrototype08x08x01.fbx create mode 100644 Assets/Standard Assets/Prototyping/Models/WallPrototype08x08x01.fbx.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/BlockPrototype04x04x04.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/BlockPrototype04x04x04.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/CubePrototype02x02x02.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/CubePrototype02x02x02.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/CubePrototype04x04x04.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/CubePrototype04x04x04.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/CubePrototype08x08x08.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/CubePrototype08x08x08.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/FloorPrototype04x01x04.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/FloorPrototype04x01x04.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/FloorPrototype08x01x08.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/FloorPrototype08x01x08.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/FloorPrototype64x01x64.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/FloorPrototype64x01x64.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/HousePrototype16x16x24.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/HousePrototype16x16x24.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/JoinInnerPrototype01x06x01.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/JoinInnerPrototype01x06x01.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/JoinMidPrototype04x06x01.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/JoinMidPrototype04x06x01.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/JoinOuterPrototype02x06x02.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/JoinOuterPrototype02x06x02.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PickupPrototype.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PickupPrototype.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PillarPrototype01x02x01.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PillarPrototype01x02x01.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PillarPrototype02x08x02.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PillarPrototype02x08x02.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PlatformPrototype02x01x02.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PlatformPrototype02x01x02.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PlatformPrototype04x01x04.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PlatformPrototype04x01x04.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PlatformPrototype08x01x08.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/PlatformPrototype08x01x08.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/RampPrototype04x02x02.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/RampPrototype04x02x02.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/StepsPrototype04x02x02.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/StepsPrototype04x02x02.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/WallPrototype08x08x01.prefab create mode 100644 Assets/Standard Assets/Prototyping/Prefabs/WallPrototype08x08x01.prefab.meta create mode 100644 Assets/Standard Assets/Prototyping/Shaders.meta create mode 100644 Assets/Standard Assets/Prototyping/Shaders/WorldCoordDiffuse.shader create mode 100644 Assets/Standard Assets/Prototyping/Shaders/WorldCoordDiffuse.shader.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/GridEmissive.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/GridEmissive.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchMauveAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchMauveAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchOrangeAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchOrangeAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchPinkDAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchPinkDAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png.meta create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png create mode 100644 Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png.meta create mode 100644 Assets/Standard Assets/Utility.meta create mode 100644 Assets/Standard Assets/Utility/ActivateTrigger.cs create mode 100644 Assets/Standard Assets/Utility/ActivateTrigger.cs.meta create mode 100644 Assets/Standard Assets/Utility/AlphaButtonClickMask.cs create mode 100644 Assets/Standard Assets/Utility/AlphaButtonClickMask.cs.meta create mode 100644 Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs create mode 100644 Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs.meta create mode 100644 Assets/Standard Assets/Utility/AutoMoveAndRotate.cs create mode 100644 Assets/Standard Assets/Utility/AutoMoveAndRotate.cs.meta create mode 100644 Assets/Standard Assets/Utility/CameraRefocus.cs create mode 100644 Assets/Standard Assets/Utility/CameraRefocus.cs.meta create mode 100644 Assets/Standard Assets/Utility/CurveControlledBob.cs create mode 100644 Assets/Standard Assets/Utility/CurveControlledBob.cs.meta create mode 100644 Assets/Standard Assets/Utility/DragRigidbody.cs create mode 100644 Assets/Standard Assets/Utility/DragRigidbody.cs.meta create mode 100644 Assets/Standard Assets/Utility/DynamicShadowSettings.cs create mode 100644 Assets/Standard Assets/Utility/DynamicShadowSettings.cs.meta create mode 100644 Assets/Standard Assets/Utility/EventSystemChecker.cs create mode 100644 Assets/Standard Assets/Utility/EventSystemChecker.cs.meta create mode 100644 Assets/Standard Assets/Utility/FOVKick.cs create mode 100644 Assets/Standard Assets/Utility/FOVKick.cs.meta create mode 100644 Assets/Standard Assets/Utility/FPSCounter.cs create mode 100644 Assets/Standard Assets/Utility/FPSCounter.cs.meta create mode 100644 Assets/Standard Assets/Utility/FollowTarget.cs create mode 100644 Assets/Standard Assets/Utility/FollowTarget.cs.meta create mode 100644 Assets/Standard Assets/Utility/ForcedReset.cs create mode 100644 Assets/Standard Assets/Utility/ForcedReset.cs.meta create mode 100644 Assets/Standard Assets/Utility/LerpControlledBob.cs create mode 100644 Assets/Standard Assets/Utility/LerpControlledBob.cs.meta create mode 100644 Assets/Standard Assets/Utility/ObjectResetter.cs create mode 100644 Assets/Standard Assets/Utility/ObjectResetter.cs.meta create mode 100644 Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs create mode 100644 Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs.meta create mode 100644 Assets/Standard Assets/Utility/PlatformSpecificContent.cs create mode 100644 Assets/Standard Assets/Utility/PlatformSpecificContent.cs.meta create mode 100644 Assets/Standard Assets/Utility/Prefabs.meta create mode 100644 Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab create mode 100644 Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab.meta create mode 100644 Assets/Standard Assets/Utility/SimpleActivatorMenu.cs create mode 100644 Assets/Standard Assets/Utility/SimpleActivatorMenu.cs.meta create mode 100644 Assets/Standard Assets/Utility/SimpleMouseRotator.cs create mode 100644 Assets/Standard Assets/Utility/SimpleMouseRotator.cs.meta create mode 100644 Assets/Standard Assets/Utility/SmoothFollow.cs create mode 100644 Assets/Standard Assets/Utility/SmoothFollow.cs.meta create mode 100644 Assets/Standard Assets/Utility/TimedObjectActivator.cs create mode 100644 Assets/Standard Assets/Utility/TimedObjectActivator.cs.meta create mode 100644 Assets/Standard Assets/Utility/TimedObjectDestructor.cs create mode 100644 Assets/Standard Assets/Utility/TimedObjectDestructor.cs.meta create mode 100644 Assets/Standard Assets/Utility/WaypointCircuit.cs create mode 100644 Assets/Standard Assets/Utility/WaypointCircuit.cs.meta create mode 100644 Assets/Standard Assets/Utility/WaypointProgressTracker.cs create mode 100644 Assets/Standard Assets/Utility/WaypointProgressTracker.cs.meta diff --git a/Assets/FungusExamples/FirstPerson.meta b/Assets/FungusExamples/FirstPerson.meta new file mode 100644 index 00000000..28fd27e0 --- /dev/null +++ b/Assets/FungusExamples/FirstPerson.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4fe4a29c877ab7c49a0e3e5715c62819 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity b/Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity new file mode 100644 index 00000000..9908877d --- /dev/null +++ b/Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity @@ -0,0 +1,305 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &428461409 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 428461411} + - component: {fileID: 428461410} + m_Layer: 0 + m_Name: _FungusState + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &428461410 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 428461409} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 61dddfdc5e0e44ca298d8f46f7f5a915, type: 3} + m_Name: + m_EditorClassIdentifier: + selectedFlowchart: {fileID: 0} +--- !u!4 &428461411 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 428461409} + 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: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &692017709 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalPosition.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: 3681543e5b0f59742b73073cb379cdc6, type: 2} + m_IsPrefabParent: 0 +--- !u!1001 &1741904151 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalPosition.x + value: 16.173729 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalPosition.y + value: 1.32 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalPosition.z + value: 6.4740314 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 2} + m_IsPrefabParent: 0 +--- !u!1 &1874215332 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1874215334} + - component: {fileID: 1874215333} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1874215333 +Light: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1874215332} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1874215334 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1874215332} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: -0.5000051, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} diff --git a/Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity.meta b/Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity.meta new file mode 100644 index 00000000..58a2e9fd --- /dev/null +++ b/Assets/FungusExamples/FirstPerson/FirstPersonDemo.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f52a982060cbf1342bcd0c3da0aa9083 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets.meta b/Assets/Standard Assets.meta new file mode 100644 index 00000000..ab0a8338 --- /dev/null +++ b/Assets/Standard Assets.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3364c79b33fa9af4494148e026b0cf49 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Characters.meta b/Assets/Standard Assets/Characters.meta new file mode 100644 index 00000000..f633095b --- /dev/null +++ b/Assets/Standard Assets/Characters.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: 8c32f58513a41ef4dab9cb7704c5fb92 +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter.meta new file mode 100644 index 00000000..d7dcdc3e --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: 943e057eaae705e43b9e9b2e53d6adb0 +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio.meta new file mode 100644 index 00000000..aa7e7f4b --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: 2dac79461900e0f4c93561031c2e6902 +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep01.wav b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep01.wav new file mode 100644 index 0000000000000000000000000000000000000000..6e52e7042ad5d9008c1affc0c0071d37fb514b51 GIT binary patch literal 49372 zcmd?SYgiOlw)kCD-7OFaD2M@sfI>te5Fjw#7#%elF*-16V9@9hmFS?+@q&L18XYw{ z;$`HhqmihiBaTLljz*0J4U7gEh!}||3R11FjsLCp?|-l=un&WmIo`^X zq(A>&mK3Rv^uZsNzAwr*4!5s$yHhI5|3jd(B_Bjh`+sl#w-W9DmvJvhU6s1#D@h8L z0;M31K&~PzP{*EKa(K1?!ltLWPhDuSC zgiAvmH6thwlVWHQE)A2Sxe|Sf)0eV9YQ<1HNE*!VQ2vUmp+E|uG{(_3l2&2TaA^c3 zemsu=lcA2Mq5O)v;*0>6KQR4)?ag0NV-zi;XeVlkvH4Rc1PH$WGlmdHe*^g|+76|+ z2zm+vei(Nl{0(=s3IWP5HG+9M&_M%#Y6)zI(p!Ii2UAnfEQsG<4sj()h5|*SP$s{>*FKYPlEBK?2bg+wAsMOT!L=JDeR!(s0*bez|2{nFPl-ZF5Z5-{s!L#N zk~H0!K6~?P

s8;klD!;aa6kk*s#6S~ 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 vDb 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 YZF==Qru-kiJGFiFrJJwP{cr8~KcI@)XaE2J literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep02.wav.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep02.wav.meta new file mode 100644 index 00000000..08a78503 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep02.wav.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: 8bc94ec6ed537e743b481638bdcd503d +AudioImporter: + serializedVersion: 5 + format: -1 + loadType: 1 + quality: -1 + sampleRate: 0 + forceToMono: 0 + preloadAudioData: 1 + loadInBackground: 0 + overrideSampleRate: 0 + optimizeSampleRate: 0 + 3D: 1 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep03.wav b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Footstep03.wav new file mode 100644 index 0000000000000000000000000000000000000000..f7967493af6782418a84bc7501f6d31233a4e8a9 GIT binary patch literal 54208 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≤|D! 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 Ny>szDVEUei5(*E-R?W4m@Y*Gf{K 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 z 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Jump.wav.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Jump.wav.meta new file mode 100644 index 00000000..d8d8678e --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Jump.wav.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: 5897aeed9b676024fbb8c694b421a861 +AudioImporter: + serializedVersion: 5 + format: -1 + loadType: 1 + quality: -1 + sampleRate: 0 + forceToMono: 0 + preloadAudioData: 1 + loadInBackground: 0 + overrideSampleRate: 0 + optimizeSampleRate: 0 + 3D: 1 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Land.wav b/Assets/Standard Assets/Characters/FirstPersonCharacter/Audio/Land.wav new file mode 100644 index 0000000000000000000000000000000000000000..23d185b61ff395cdf41fb89f7188ff76dd33f522 GIT binary patch literal 45462 zcmZ6z1yozj7ATyAkPt-!354JtB6xxpTBri0g%(O%+EQv%fx1wnrB3CmyE_3|w79#w zCIoi~PICU~z3;y7t$)p$IU{@a?2&WM%$D(5>`;ZRLE7z_pnZsm6v zEM_YlhJeYz0(XV(ItXA|pc<$GYJ&=(a;OkWhJHbrPy&<<{5vQP`T{+LenYRIZ_s<_ zJ`@f`K^LKy&~+#laK*Wpf!*gv=+qI zLVKWtP!MS66yyh;gLVRlFvuJ7gn~hhW6*Js4h0zYf!w_SJ{&p=9RfAHL7hF&RzS;L z=qhOE0-)m%aA5!<0P=;l01R6|t?hu)I{?c)@H_~`fEJL{ximz zPzk905vl@k#b6AQL6{6+GoVy3;=e%7M}X%I^cY~g3LOEI_(Mmb{eX%aU=~84TObSv z;~oR0fVp@F@T7pbr~vIg1NFXwwrjwArh+g7P$2}Z)j*X{6C{BKpcbedK&C?-P!53n z07m~kD2)fHcVKiLf$%k;^9G>$$A4z#JAlfC>Yyh8?hhy_0}!79d>Wur0M!Gm!~el4 z12cpIUw z2oVE_Dd3wB`G{o1J;Y^%EusgW4flgfVEM44Fi(KD94ZApV?b?^TM|71~jmF26;%gcAgZW08b>=w)#&PI4kX&~*T*(e9} zL78OF`;RbOAcnkb8t{Zm`N5yVeBBV%1v^*^% zQW4=rHli@mcTt&WScI9;2QFyl>rDJi|ID%3#M${-tGR=7FXvv(#mx=OG3Tx3H_soL zzdD~b|8YKR9=@=4;n70gLi|GJ!qbJT3oQ#ui`>PZi&{&UmhzUMCDwA-^4sOvWmhpr zd`$dWoGtDUlO;zb(UO~z3<(8N1QgFp$|Xe-fn-)fhcSsS>GqDJ=33G8~zW+$jB4I$pX@dRp2H<%Duaoki_L!BOTY zLlh0Q9~Fu^iV8rTLlvP?Q4dgYAgn`Gqw-OgQ72LUC@<7uR1B&GHHBJ6nW5)VDX3xq z!$Vbp=X+EX>J{n+2=}0F0X!U(2g(#h26(MdC{%`Yxb#u!NNH8+24oI07a5GSK^i03 zNNFTrs!S?QDoX0Al)sdQl%CWWq71B>(+C9O3p^VB2p$e!12=~2fmNpf7sFP-UEqtb zc32MVHS85E5M}}sgY|t6ylZd37p@PC1OXNR+X+@I6DALHgW17!V6w0|NFL@0+Y0l7 zabec5l`twy6~KhScEj>uLRb;31l9%KRW|;p=D%OlFq2UqXlcJ=p59o z&{fp6)ltyis(Fj1rfx-5RU4t0Q7(}0s$?mDCuu1?S5TIZk>wLoaOW_`(8I_!c#WiL zNom1o_TaR^WKq}Q#_u&=oHXYan=KH)8)jgT!oC3F+Qg><2}@TzdHP+hoQxI*}<$E{~h zU?n)fH}96~GU@DZ&uaV7s@js;6xSHk@Vo9$jZ}4M<>iWX<)LMlORGu_l{_h~ElMw{ zDsnB}T;g1Mq%6GLt7227OO<0avBtWlt@>bfX4R#t)GAnYQT2tIBei{Xu?_xBr&_+X zUF>Y&7YNh)Uks^^ZXUOrY@Yfh+C1w!_ig^*qWxA91 z>*NCz?Mdn?cgfk5Hr3B+*Qlq|m1vnXyhez|SIq&f_u4KxtvZ&vr*swcF6j>$-ZI{4 zB1iv5PcR*0#52FMD%oW7YZk{W2P|({;jBMdpSLNuvE!6+SlkpY-j-#XZtG+B&@Ro6 zW^d)t;h5lbc!insjB|!d`AS9C6K>~LJFeNgR%4z2I@$HY^}QSV-J?9pJ)}HqJ)U?R z^C)+Zb6<4#@i6poao64;vmUw5WbKYM2Ua_|S-Wbjf~~A^-oAq6wBYd5-p@|K7S2t! zAzOd8jI+3I{?bgx>?GTs&1SD;-)6sKhp=_nuUNLM5~dEpoq|P|hxWtHQbj0wM!6SVuy?441x|?*xI)`-{wAHoWYi`zfNL#I5 zsOF>EL5@^GC`%Nz6xPXA5O)zEoGY#gJBiVi`HYg4zAmMKNP-zd{^CnZI*SAIzvhx= zZ_kv7c7ShNfask_PxN+LJav02e9CvqW6F9ef6{g`X96}6Hr_F&KbAA}B`2yORk6Sg|Gerq|^V&2l; ze7rfc>2}kJrsl@T#vP4a4F?)7)jz14s%6#c)f}mAtvXsYQMtCVt|FphV}(?OV|i4W zQCVMULh0R7O6k`U_Y$3wuHqZTip46$6-6hDjub5yz9zaYsm-a4 zu4C5M)t_#tY}njb--vE{(xlydx>={?V+*5Itu3o^cW`$2ZSELGN9Rzo(2 zxRy9VI6>G*a3!22Tq5is{6h#OjNnu7m+{7UIlKmbJ3a^h2QS1M5jGP72uA>94B;N( zIiZ~JgP=)B!29ACaACL@EFa^D$(K1PvxxRauR_bB|X3W;Lc-Xu@LqwE*DpWli*5lYjI+188#nl zgqsIAHE>UGGI(#iE#4l#10RhyCWI5-5>^o}%Pz?UD?C<|BVAJ-SH7&GMs^|hlZ{pX zsK%+DRo$cNtvW&ZK)FI8QOqf8DO3ub!l9^8D3o5Z4_T9pARCaK$ll}^a-NJtOTW?IE2bVU>dbrZ38K z%50V0Dyb?3D#~PKGLvjeUP*pJ{zIN3AEZ2>yre8pSgNO0+f?al+tj|PEvN-k3F=gJ zd-Yf9YiUf4=NkT+>$McMdD=uBuFhMX>$)wv0$qxpuihEGP`y~aQoSO*0X>?&h5kW( zzCOvo+2EW(oI$ODzTtYq6vJ6VxY1^#XGYaVl}4pT?#4aFIwr?W9+;$d zHCyhtWLuV5s9NNj?=rtw5n`!mrD#=e>1LH^m0|V9YQoChdY3iBnrba=eacGN>WbxW3vY{b zbGW&`Sti?toyoey>Sm3x7_3g_d1ej+$)K8kq9@T0(6#9#x(q$ZpcD*RRXb?bZ>3Z)Cf+h4v<`1kJk|QMAo871~YpKh!&FQ>sr@ z$0&y>c@#0_EJcR$4$RIsvMw1zKB+RSyiqxXl&$2h^i9!D@sh%n{5Scv@@M7#$j%W* z324FuSoLOD7fi5BIQl#)Rr(gP3~>hT1j~`^7FR9>ElTDc=Dy5Wh{)5MrU;Xf4hjbH`kDRf`!@9+7Cz~z5>N%dyRExsI_la5ZSc0K z7Oj?7&1ai#H(ECCZb+<8smrW2ul266tTwB%s$5+WRKCBgzw|-rV9ENDnc@eIoQfz#)rFWMnM0B?R4*JX2rf`8IF|n^ z51V%>w=l;cr#kys_DGgW*5=I841)}pKN0C2Y3#K7sc9+Xlt;<+NtQ_=zi<6&OI($> zH{oY|2Tze_9(VYs!q1&QqQ1|5)Bh&=V*cgi=bxX-KAL>|=fkh}@$VAe8oaf76Z-ne ztLB#*UZ%VdJ$HNF`7H98#j}S`S3d1~qW>iOalqq=N6#KHAGJJu`q1s6_QT14j{k%I zr}4pq2c{3&?t9*ExVPfo*SnAJZogX+yE%5~&iOm6J5jeyZ?kSU-CA+$!_A#HO>WlR zVBRRY{`~sN>mAo3udTZ#j5!oz9@BNz>FS3oo31QG4@7^C4vDsi?vHvK^(87VDn4pQ zlu}e%WKLvaUGqMsB%y@De7jFPgGB2Pozwg zFmf_-CQ>y@BMKMQ8(9_kE;2MSEwUhTBoZAp5SbnM6}an>D_Rc%|@4UTZ7;7Foc}F(ZEY>^rY3xXBFUcGR6IrQ?;D~s1ZU+27Tf35q*|IM>EeQ$!_PQ49($9~WF zkn+Lpqwy!H&l#UpzvO?3`a1D->8s+m?cd&flYH~|{``CCcj}LQKL&od{`~!u6&D*xCpZ*s9c1uc5(oMdRj82J3(N6u7 zdN|E9-TjY6MqdU$^Gy~hJ33n?=TVMM?yFoVwZN# z)$Z3}*E!p{wJWpBsC!HIzV49jm)#@XQ{6?~E#0zw9sUu1BA+hk6Fl!J6`t?gH*jJ| zepseo)VjO)^zWGuf1aMWFS!vIg$RcMmlNH2wJt_@-QtexlaN>QudTltCAK6(DZ$xm zYj5-@4PTs^l6s)1L6bAyW>xRpykUG};<`sJJJ((H4)7bUxq`04OPOv}aTDL00`Ht%?wfrMH3B=lEpV@`w1w2Ec6Msnot7@y_qdckpNc$%>klaTr z)NM8tnOd1H8pW8Nw}EU&Yy$0qT#DTuuETlfZ|~db8HhUaBy8v$bV&l(L*oDACI5*n zg4AEX3>Q_hA{8&+*BaHqIsuAn*TIX_vF8}NEzy1AxYy5@&cP#&omE=^0nr4Yb|6XJ5yGYlmtM znFL24jy(z;dve_Kgk{KlNb1Sn)9=p^&-I`v3Oy-`V_M zAO2E22mIeT|6hOq?e)L?`+rC7UwnUa|6=&N3jXH)ZzcU(@81^x8~cChk-b!SVcmJN zv*J^!CpUzth8BcmoRB(Rb2RSA{NeD!&B0*va%kv)#euE+^Y(q-*A@f|q6B^1`!euT z;EBN2-E+HQcCX%Jz326A!#%I}9Nn{H&-Xn_ftGdv|*7klC*4pT13N+Y>)szvsR;e9!xtZL{5`yzQ4CaoglJIsd6` z_x#8G&-riikM*zc|LFhOKiA*Xzi1o5pYNaJZ|DDyKY6>}_D$QJcPwu2_kZYb>z}l( za$EkkXMSkEHGbRuy#1Jd`}|h;z46WPP4H#-3b$(ePHaVPUG{1AQQnf|6Y5jpbHYd9 zZRtbv8S}36_VDrWS@zEMcJX%fPT4HKd2v(WCgn|DUgC{wHimdAcrLqt-0<5S=H<9~ z&nDN6?w%CSUJtrwwr8zplSh=h|Az1lME6bZ&)mPeC%VVG>$!j5@O6Wt`)zk;_s|WW zH&8)-pl8a)(2ZL>Z9Lz2p7fOQJm`7K)7KNRaf6r8tJkaE%frjb%iSx$tIbP$6MNGK zuY!%i8)rR{o;;5-k53-*9`D?z-Ge=TxntbFY$#rTaedJG<#p%RX{w!UgH_+1cLN%z0#m>k88q^G+Wen;giFnvQM`LH03rB)jXj0o(_i zH=ILPXMeC!@(=O4<)YqxM zr;e$$tD&ho)po1KQU=JQDu2M~;i&RIBn~N4$yn*2VuM1WLXX04g_Q~p@(4L4*_*_# zM5OE`q8jm{Y%6gT%aO^GVPV%`;aF2F3X_JC0vxy`R0hfzHHVyX)?n-j9WD<~BB3hV`L0$0HZ|2F>&|2W@*FU7Cz4(zt+Ms|CEe|vh@>aK{cgI)SvR$cX- zGF?+${H_h%0sI^M7yNJmp~n*N!4d>#1p$I4!BWo=p{wvR;G4w=BZVnKonF`8cHuMO zZQ+72ve%`T)@#xG5IBKwSU3Ull6y6JKM2Q!t-?OxsBlpDk8qXni14vcOL(Zqu;+cx z>7FlwUxILfkRQh9@Ui^M-Pv7!T^GCPUAH>no#h=x9TOeZ9WOhaI!fBjJDzpWIxlvz zI*)hsw{ttbb(D4(briJkZRfO;+6~%|wx4TX+fHm(ZdYg@ZsW8cYG2>()n3$Q(dOM2 z+}755x;3`-O>0~0@7Cw7t6D#{q_v1zpq7c2r!CuB=9)cQ&a}9;+-#|ANo@&f{oH!A zWm8K*OL|LOOHvE2^?d88)+Zo$sC8A_pEl37fVS+mJ8jJNSMA#Eg>8jx6>T5eJKHfG zWgVj(wH@)D4?6ujR&_k=+}!Qb{iqAs72SEc^JJG}H>+EH@|tt~IdrN6Yn=vn~5t4z*lrA+*#tcQn6kj%|L?{JuG=IjGsQ zS+9AvX{2ekiPsd=bfqb-$-9Zt^sDio#v6^XjU|n@8iyJL4b2Ur29?Ik4e*B8`iOe> zy8X4jwfk#URKu&ERryxlt?;QBF4rr+SB5IHDJ?A#6!#Rx7tIuHDB4#TT~MDtnfE!5 zlXoX~b?&a5!0hTQkE~0XYcgPe&ZO6*xuj;KxTZ`c#U?o`3@9ut2O(6B0gGF}m!7|+N5il-$UOE{CT zD#0(|Y(hywXM#)Ouf)}f%89;-j)^N0w*ya2GyrL2qFf>&(Kyi}QIJrcKm>W>1Z3j+ zM3cmO31y%bCNVpqD&a-~ETJ>LEM6+1KfWq{N4#_VOAv~9L%jX*?(wX6@A$p(>*Dp| zRYBW5@uK(>@er>bjKdu7Hg65jis!*Q#Cyei&-=tH19`@v4ko^q$BggiedbN`IPr($ z%>g!5;DdN)cwxL%yeQsHo;L_T^9*pyaL`g zP~!kEfu|X-7QZGwJU%vFE8z&}d2m91!b}1^aZ}=4V*Ia|Us1o%zd!umon)B&IeAOU za7urQQ)*qRR+>_pAoWw4e|lJY9XJ&g{u%q@opCcGGs8WzDKkIwTIOu##jL@s&Doc- zN!j%5oNRW^_Z<1$v$_1-y?H}EuP1~BMn-8@V zwrp(8Y-P7yXnWUY-9F#GzTj} z9Yc?yThS<)OET)1W00RfctBSzlzVoqY1wWW<)1qDDer=kJw3M z%W`D5$~nkK%0HGLk@r#9sYq1{QOZ_=k=BuXNF5{_VQ;(&eq_1c2#(-{^XSigTWhgK-F`^o+GV(AAFya|y8ciF$ zGS)NMY7${mYNAPJ(sk)@da4PPev0k`oF#qU#Fy@9nr%8{I%SGroM)6U_A>2RYguPm zg)E45o}JHLX?D--j+vj?Q?tjwe={2}vohane#?Bx{G>&wMY4s7rLpCL#gs*xg}mie z%gt5|RvlJh*0a{fZ8~lEHu*M=91dsRrq5=;#)8vp^V$Yy(`-$)fvo4PTdlLL18kHy z8#((qhFpj{z%AfraA&v@?isEkSBcAQocoA-kGqc>$2rI;=KKQtN)?U~r_<()jV|Xp zCz6xQ`OJC3p>x%3o48lGx!mvEK<+NC7uS|s!%^aJIgXsYoO2u#&XkQd#|%6v93;JX>QsH#>E^ zdv@b?^L9Ateu`+lkFYbD1bA_*2s2|+sG~BYJ+q= zm&)}6<7j6)$~CurWb11yXS>NZ&i0M1zwK9U1Q^{&E|S)!GLJPcHeUd-7V{(K z@6B_~pPH{T&oNtXHq4G<+p@*1eXK34J*;BpX69+;8D<1Cgz3Y)$NY!c#cW}=GZ8Ff zRvyUP&YWQI8I6qBj2Y8hu<~+D<4m0xMT|JcN~ShzGs}>r!ZKmKV)ikN811ILbS3(z z$qN%3lTl+o6HodR`Z4-x)8nR6rYB9+O<&Uu=x+3Ox`HXy)Xr4L^fA5OB+P_s5@g~D zYTPl|VDiBvjK0m3z-TeuZ+gMB%Cy=v!Bl~{m->i46C#(moUJxs0aoAz(ZR{X+AmHV%VSBPq zvRl}pY&YOE*n_O&EJpzO8~7yFDDcayvuta&8T&4~mi?K1j@{2*W#(!YY4*#EX6|L~ zW^QE8G50W6F&{7^1J1vaMJ9MReatE5+UBa}%I0Zic4ohTlwg(>3TCE=Da%Y_tY@e* z*bI3_rfDhQ?c?an#`laj8K)ZQ8xSvc9U~nFofkT~IvLu0?R(mG+8ecRXa{NIwXbXK)4Hk^skK&XLUUTPQ}dFhyQZF| zwkBWWfCfclf%ciUleUj`g62$XP~WJ&UmceId!=d zSvhc4QzE7lRuP8rZ}BhiSMbBQ`#4Qp4)z8%2)i0b0~Uki?w@x*AHz3MnJ0PQ*_{00M@12)Bp-f!V+sfR>d|@==l?5s6obb;KphZOek? zh-K39%u>~o*OJmw{o?1vnT6*IXBQIZ#dBqIhvx*dYi9q<=*-*^>5INjznjjUzB|pB z9++yFa-AxeOqo1AIW|F^a2_X)zaBd^7BN;ix-e2UGC6X21Us@}cAy^>y?*_udE2x;Ix?Dn$223Dtn+ z!6D&FaC$QlvV>VZk9+R*Bm&mBc@Md#PViDd6EyO-^OXU|wXGY|O$VIVh;F^^Yh4aq ztGb3e&vj~dc679KWOW?s@adp;ya%VCuy(h0T>GK6<8ABPB&}VopIUuebz0L~_Ov9n z+-UJ_VYCc3=L2qULi3a6Kh4q2xaN;Q=4{^7+t}Qg)A*oqMWcV?%0>y`3}0_})6fO{ zlZImrIt|!{@%oYaPxY2y2V_$JxL&8>Lc_j>%MG_1t~69P$Tn^Q^>#NNZ#>ZWsByZ{ zsfpd>*A&v^*~Dzx(i92K0Joa_o1&Xe0qJpkQ&m$&Q)rWXlR;BvlTP!|=8Mf+o9{KZ zf^$Si^Ga~`ifWN*J=VIb)f$}J3R|t)eA+N=Ds4O37;U<3(QSL$JleLkt!cZ`_7$8> zezuLZjkZO$*R)H45!ltSr{i(QC*W#3COd*V<2&0rIbCnN^t;=;_keR$kRV6!Lr^R* z=-JxS(bLm2)?+Bl7qWUQgatzL-r8PP-?P5?zVLqAfwTel!RkSsA&ucn!ykqYA{MdNHxZ}iI;KnE7!EWix)Tb%dbUoM!Ws7#r zq|cblmIAFO!Q78|wS~Ldgbk^HR^k{9M7T*-XRq*wovpq$&PX z+;r(o)?CMesdx~UF3rS!mJ3&|q!M&K8fq~R78f`uht9lcyL8tCMZ9~lhb#Jxfl+!8&B#P1lg-SUGSsh|0 z{sArxTaM|KNs$rC_{iKr|3uHC&16DlT4l~)w6VR|Cpc%kEMYZ}ZP&|LDfB9klpc{v zl~1W0Ag57|t7@wqRx4B6MWw6nQV&z7(zG?EHH@|7v^}+N=(OrO={?rlsz0pHF^Dp- zHcU3`G#oILGEy>fFnVuv-RP9j4Wl_D7vtZ?!^U041||t6JLnN~XVasM3(Q%jEo+u_ zi=D`}2m7Uc=6fyFEGsRutOz##94&4(ch>g3y};qLh!}g#)07Q#eUFk4E*uCxYxNDt|sT9ji1dr zn@84FKx%y7vf2V=;ckA=>^HlC<;2QjK48c&_@;+U^T5B&*JPuKl*tpLQ-)H80|t8x zGW3o02lPtxj_Q&1w&|VJ>(H&!9nc-rE!Nf1{i@TW)1hOm^IQ9tj+d^fE?#$oZk4XJ z9#*eS_kf9S)s82N**4Hpt+*rkU z#>m^a-uQ|!%J?GKkqQkh4Eqcs4U+U}`bl~07|E9U4kpQoNp6pfXQAcu1L9s6X2B0jczd#9kivMr<4xdm#%G&waY zHk8*5)pBdcs~=P?R@zjymrs|W%Ztm5%ifhPl^iQ6DNZjwQ2eTpTws`Qk*AfroP92f zm}!@h_a`y^XxiJsa5pl_LC4`tUcu2gnBgmh@d(e<|kT zrwhIpD$eJfUw!_{Iq})FGpA3dp7K8xa55z9S?JjihZ8!-yN~jZ2!Ry9{;+m%?ZKD> zFZaLN=M^Lg+_A@ScV7T~XZrS={#AZXzF)Ua`Y^l~Hof+$^i=Vm%xyxzN(bVyg{X@Isw#PZEZHU%~El13+nmMqOnbW4`^h3saM#hF6`qFyabX2up zYFcUFX>HW&YWAxAZidOb>8`jONK{2t5} zS`g z!?J}^tI}?uO>nrFQ2eq8S#%BP3Y;hmC~PTMUm(oy&gbW^%|Di>lJ`A#RqmGDQ@Lij zc{#~Bb2&=6U@hiM=7@4QxhHdSvInvsW!Gl^&VHUv%_+$~lpUMBm`%%p=a6!wa#rQ= zbJpjQa*c9-=33E=HByEg2|@ER`w?EE_7@ zSI(@USH@HltCFfzs;^ZW*Q~59uXU*_svE8QQs3CX0RQ$iP2}cp&Hc^MEdi~Atr2Z8 z?OQu6I+acJ@LlFu?)d|v!gyd-`o@rFhq7uY;36Mhvj zj);;XBcqU}K$q%@Gy-VC%AnVy-=G`O)-stglQLGA1k57F4jYK2;f?}5s43he?mV7N zs3Ig1>;OlfD|<^eSk6SAEw3woME_u+5^BPfT{JVHmP=~nyYP83sWmqGoc=!GN>!5epDao zeQFutANW#jsB+YHwJ9|ZswMR-^%wOIwU4@5{iFH?pzWlk4pUcB4^cm)zCcB*v(yKv zZ>i-}L-kwKP>w@y-3|ig;TSDmXs+~g?e5MsaC3*1}Itv^lb#XUJuES z$Z5dYlV!;jKHPw*m?<1_Gs_$2%${4DM)E*mF{HwXG_+wnNO5AHCo5w``u7axPefW1m8 z_A@pcTaRU8A7E}_7?|Uj0ZbX@5atYsy~cdTT*pjdo?`!Cm9W<^YeBjOtd(%=G3-rH z?;2JPyA69C?02Rxnpgz31eBLyWU%^JGprBxHZ}^ZDHc`-i^f_5`2AQ4wh_~e$-x}J z_+er(n=m&pUYH3PvCK})e#|;dCN>G%0dx*CuzA>YtSW9RE*AF=?5ui#2HrA`jX#JN z;ME8S0uJa89w8ne<`NZU*T`;{wUs>}dq?)R>`_^oY&$WN$dNrH>n|HC8!kI2`$di@ z?=Rmd|5|~kh*Jts(gFH#IV5T2MCA|_d9nq0H@T6lO9`bA0C(x2YO1P@+FP|oHB0JG zY6;aqy-YoTHcs==(9k%gaaY4bLrt?o(@yJ+7DnrX<^xSnO;w<`b(MCKcAVA$^yBua z+o|_b!>E8^L`AASqnx04Q@kkF6fTgRJyJC>0-Sp8Zk4f8!#PPy0>#_LJUn94NR}8%y zEE#C(f8KYfcdJkZ$Tq%qyLFxH)a~Gdv&y5Ep{56ooCb$_ue#+L*&1!Ybv<8aQkz=7 zuP{B=Dn~cFE#pwSVv13sE>GoW^0$wl;qR_J|M3uiS9k*z^C)_ER8@pHygFPaA}%5* zLhUk8jSv5;gYws-fKLg39LbE)y`6Nw>XGQ#gV#Cl7eA-|yq}=@`%y||hF*SpscOyZ zhRBwb4kJNJf9L3x>CJPe=Pxa?#U>IdhzCC@y$h31&{5DJ4Jj9sRa6Zr3X~zTnTn%I zAb6)jl^>H*NU@4HczF8lBm^xCN3%s>|%dJIHI094HtXMyJZ)n@K+Nro{!D65IVwpH`~7`K;x-Kizn8 z^JO2yt%<%pe&@FD3&`AceYa${OQ6->(!H00a)NaCE$`dCKXqUDKJvbwL2*H5L3Vqm z16u>#_muBS4;b0`We3jxov-s&7oX8hGaE-d6x|2bIjr$;>snRgQoJI=@tb`<*UhHc z3T^3S7Q|X)xX_;)E$i>n4br}%8AW?c?V;RJVUTnbEaa+*`w6;u7FJy*4rL+zQ_3De zht*1wB|P!yQtjgLg@E~&bMdq3qS~o%6PWQQqpl8%8M zg8~6ZP{#KZ$OUWJA>mx0YgzkL&M1<=SJycm1CF*@r2D} z?c|B6o~ev!eNm&RY-aUr>g?=n^6c~3g_#{QmuGxtqD9No4%13g4wEM)j3@fW9mY3} zogTe5k~cg&BpBR3FxdCBS5+7%SS|RtYT;19=7Qa<(MvaaKf@C6IHW zvIa7}v&5OXnUc)jOutOWjCbkp(i8sd`Xfnun&z7(ofe%onMO+&r|G6YOgH=U?2l#! zDKjmTl$DpIp3|SBoX5%6Em%{ySh%A2P^o6Qbwyvrr%LPU=d~Z}D;q?O`huYNlfbKN~q~Hn#%Ezmw>#?oYlI5Qv; zi^fImqAw!s%$k{1Gw_)WqQ>c&>51v)>AC6hX`gAGX}9T}z}Ex$gE5etFH9{>{h1O@ z*-rONX-(TqyH02K3CKzqi_ms!l5)!h5J&N=q{gL(CZoCW2@&5N~*6H8~8 z6~#EoxI`V;%uGUjV7>PVl7-DcMbK54DLe?a9SQ>*>}1Jm2~lD$k(S&8R#VZ-y~`@% z%H`k7CzpGc-YtDyN?(d!5-)9ArYzeozg#}I9JO4uj2C-|^~D(RSuszn2_zqZPykF1 zehR(;@mXpNnJm2qZ~zL>1dJTE8Y_=KO?XCJASTORl|#$DlKm|EP3xx@VEQM5sdx{H+JI9S>c+HNv;o>pjeZTH zCZs{vY}9zKVW}yvc^Lf53Ta)m%^CvQDjJ723^_o(Ztmr#qTm0*`; zKy{^VR~uHXR^6#ON^zkikUx@R$ftnryQWHnGFtgQsgJZ(`2vXvWIhL!ER@ugQWSj^ z0~NO_CMrZKNaUS?Ml(TfN!CVIjhID<1Ap})!WROca1`(?>j^mo7U2=z3SWTRi_^kC z#s}f)_(=R1n4wLC3cNM20e}ODY{E<8I$0+1EuoO;E2}B%CA&)Y7}0=uml!Mi8gM{$ zh<3!YLm#nvcU6#?4qoj+*-Noa`SR_@(c26il-EJD7Gku zD_N0ZNgkw)q?05#>6(%$X^XO>@*C1F<>$(elwT=lD9flYRGzA=2ChTp2boF1Q~Fg3 zRnC)NlEZ)%Kss54VoYfxn^BS}B1$4fhjM_@Pf1m^0IYSaDn~6r%^i&45Oq+!jg~_z zr0HsW(umOX)~p8BMG;zev|P3Ibxd>ub>wv)1G!d%ZiU`z{c*iR`iuH^43rEn8lEt$ zGJI)hVRVANiT=?zg1(FHLFbspm{J)frZ<={_9Sy7)7s3-48sg$eP`FRx3kJjia=ySO(Z9f({A&Q6TxY*?y$je?%Q0o(c;W=?sD#O zVYchI&uu;Ii|l^brr1u}y|MSQ-)H~A{+B({p}=9MW0IqeW3WTN!#|D;Ct0T{M~TxN zr*Dq8oqnx|1{@#siZG|@6$#Eqot0O-beeUHbX?)|+R@SBrvuXQoPDodl>Lysoc$F$ zxcyVxn_L~+Rkr82VO*@Owe3pocFt{%F6XVyNgKM2y*12=Xk~5n)l%Lv&7#o!uvspU z7924<$aY{qXHNjh%wraZWySo5@rm)Aq0g8#-EOL6$}(*=Eig4SO{Q3c>WolGA!#WNn6P5{e*9i}Dp$EG2s!zSNM96-qi zlL+H_qaq`$ak9}}qgg{)zz6zmxWTZ)z{wz9zZvj~4D?)dc{+b|nzad9$F=megfs@N zOP#4cLe-)QREsG)DZZ5RGXx8Z1@eh%EDzg-ox|2(KVrwRCV=Ov zgA-x3a5lJIxb1*H`vdnHcNupRmySDyyYnBro*5vK&c=Pf)!~|f<*gpx0PhK`a9MbH zd?rqS!{U|ki#U0F5wQNL0Vm*WTq~{?#|O|jJRbiBAkqV8mk``eoEaE@E#O>mK{#KWGKlGd`PcwpcH*|+ zIJiTAS_Vk%z^%gV1KeX(+*MpC2;so1;f!&ESOUNW!_8o`up`)I>=?EbtAw+{$$|b( zVGVE;TtCQzumX^p$Liw_;w(WcPPhYr3%vn%4EGFBoB`-h$9)AJhnK~x4qB@JefseJyKH zRe1tHTqDL1Hv)ei)ILYFA<7eX63vKOL>zG?(GjHSL~npe6Qp$jrsF_!Adq+&z^o>2 z1?juMog(@INL`{Wus@S0DiD7YJ`&Ohj|jI27YNq@jrR$`go}g?1bc!B0Z&i`y;29U zQG6W!JH8G76u$<40sjQg$Cu#W;9ug4z$y7L{v`ek{uq86ek&+d!!yC?VDL_0jf~-P zzE*={UPQh!iSFmp26wC&v-!@>K#==Tr1z^QyV7fuL z9}|w*h&hajzyxAKF=`mTOrp$fnFlgyV7*gb<2-H{9Yg8_( z1|>k<1o4lk)u?DxIIxv=M^RBTKwsknu%wHTJ|}G_y+PVh8ZSME>;){RQDh%73z>@i zg=|LFBEKR(f>a)|0C^hZl_1N2MfOebcJD{tLq;HftC9! zVC&v5P8Hu2hl*o>-zIhuuLHT!;#K0kVh6Fm*iGyMc9N@rUA(T?NbDz$5?>Kt6o-g! zh||Px#Sg?k#5v;M;^*QjaUS5$g^Ei6?)Ty+!1Kg&VuXY*o(1PzZHb%21ngoXB?lz; zB=05XCBA_EeUd^+o1_|~??|pl-br3df&oOhBn0&EAIS&F8xT*G)Js|=0w*g=pkg~h>muqUv+uv_4^hAdbt z!14%o3U(Nz(?R?P>=VHJ53Ck;4|WOQ%Z63JLSctModYl*(84Q#uL9&I0{0A9+kb;S z26s1n2G;TfcrJkd0q%dOg#CiufIS7P=OV!I59};3i1`P&Y(P;wsB;J8z6Li(@BoIJ z09yyF35J2o!^dEqut^vN?grO~TLGs6*M%#>*>H2Ql!MDK~a9g-D zSiKwJq3|={?`aHQhB3jvbPc#2;2iuUSlg%J$KfIHv!Hwxd?(=EoPx99hXHfsIau#I z;Suof0PZ^cCj1M$5B>>gT&2SQz)Rs`;OgNca0re^^uvX4HbM*00Pd)0h3CU7K;AsO z1Kep*1Rn?QQ9DR4z*iwwBIpP%LLR(dDhLb2UPKszjj%$Pf!wtSd+_$fAbb!e2y=us z!UGYE*a`ma4&c4K1j1#w140i`4o?KQ8sNk5G58RmA_veh3flV!{|Wm027VOu#24-W z4}^Pzn>GH91s+ZYz3GQ7!}?)!Fd`fYM}ylplE7>y!(M<TNK+Inh=M4Hf=ZVrz4wq%L+>>}AfY6LmIMO1Np9JFKi^&azt29~ zrkpu*=FDj`cdr#~ndVJ+{3$EfJja(fHk((?T)suI8EJ6HTx9-b{=w||(R`n|^_TfE z^J%#GiP;4y(VJawkCOf+XFIc@+1RXSmNQG6h0M_9k*!F870l@6kzL4u8IehmRm|>J zBdsIfMY={BMT|&cI23LcDH{odi^EI9tHLY7e}wymf9Go%UBmB$%Z1+vcL?_gcMLZV zzZ`B9J`hR@?F-EgEecHx^$&d%`Zn||-xH}GdW`Ri#Dxljr-D<0y*WM(4iA1BjFglK z`hsWKv$v{bPRZJmX(c_`_x=tm*66j&127&sP44QvUxi|%6oez~H!qMAk3_~J=I(fu5)i(UuwRz+_VbuJoP z^jA^eqLiX_e97cy(fOi;;ts{Fir*^kR{Tfty5jv%Bf7*>l3naCsZmm`q!Cp5UrGCt z*GnezeUs58%Suv9PL`yV>?&DN5-h10bOoyiTL)hX4h~L+=G%hl!HnQt>{qE7suCI& z`Ytpgv^2CkbS<=#(+brNHwix({w(};xL0^VI4OKOd@!6A&SLC4M;b=zq6MZzjwA8+ zM-qugR7Af#!xvJ1LsI{3E;LikOXh99mD1FD+-iqBZq4^WM)M_}BbMJ)+LaB5TUJxo zNMu$=jxMg2NZYqvFCz7RLvH?nY&^mDKyqD{tI$=&T@9(!#{C|1^jG)C?y2sv$dLo? z4em5%akQtEr?e;0Q_<7X)6Fx=^OI+QXE;)#hvyH^ZqHUvz;n`b%k!YOy0^b~fOnL4 zEw+8C_kuUqTibZnxXY+zJa2R`zA`2odyLaYi4o^}-1oGviLW)k#~5s6H zhhv$aDs7Z`1lz1ZnE_??W4rAslZeOPg>MW@X2ohUs{?1tR>tCNjuqO1eNIiVJQu{i z7yBo+W1rZCvEyTR#hS5&u@A-F6IUay4=V-R;-cg8&Hz9haV-bI||k%W#3HQ7OBBs`r^E1?vt3Y`*qnK(J|%fv4dze*gKI5Kg3;^@S=iQlky>jb~D`GfqA69*^0L%q2?wNHFG@j;*s zCH=+3E*u>bn}nM z_&xD!;#b5^jvpUCDt;jMnemH>U@eOOJ$^82Qsd+M#kY?yAMc7U7hgI4N}M~sAnsON zUfj~Sl(=JYTjKtWTOM~XE-mh_xNqWm#MO&y%?eKCxT;*;#9+?H9*%XzU5GspyCrsK z?6TN7cnAYxr^Zgf{(lIMpmc0pY-ZU*Ww-MEi2h|iDf?#Gaa>=<-glRcVlUfeR=vhz z;r~N4sDGKyvEb{JXmw~1?=0H7Fh3XV(P`j#GH-39UT+1IeJ2L_vlX1AHvIx zqNAhJu-pIeKkt9n{~H{CpMQDOSmwausDV+Pm=oQi>SKeS@L9gYSm8hWKKAwVHT1>$ zd_J#lt1+MN9(Bat{@Uoz^-UwjC~X|~?)PrP$4>PQ_x8Zsej3aAN$;cH2HqN8%Tva? z-*dpT!?VycjQw}xJYRb{d!9gl-;FPS1G``sI()r*k~;;9 zes?MNE%fy^Y@~H)=P%LCA7WK~#kYuxESKxHW$;a+%Y3a!Ut^oi7rOfLRj$71*s|6E zzU{Q%+>1_4GB==6=VEz&X?}+;ZDO`HhnlZpNoPf(%p;LA*t9nyhayv1k4{00j*5H| zX@=EYAyO~W0vVYbHp4~X&Edny&s@HpwG~M^C_FVhK0G=+3fbB<{0O?T53$+?;ZMRZ zqCffdZ+LL{E%p-L7k&jz`gXW(xCUS3DjO~i#fL+oHKF;Te?rH(CLyoeg*t?u4|NYc zfegPtR5w&96bQOPMZs{eIG7dO6wD7sf)|6?!E?b~K^Fgm8-iM58f2$zz=IBhh9h z^C9yo^GP$&j6qL5!neG7nQ!7TRWRG5ul8|lF(;axNc+KDZRVH&mB5A$Wc zXZXg~(`d0S_!_U5;RV&(cx2u#Z(RG*0kImP{Rh{RcRS9kP zGB)CP*HG-kw&=KJ=(Z%+LDy_ovg?+smd&wcuqU&5yUTsAyE$Ir^X`i7Zt(O#_hk1_ z?C_pg)kCqdKX8BT{sud{KX&Q}_jD}jbH4}g7Eu=(4zHIgm zWA_tYVFgC+VOMj;GQnl?MZXn%=Whz%3!DfK%*U>2ikJBkobiHH(YlV@xP@hY6d7^= zz8Z=ZKE<5My3N0E)p9JPb>>P^2V;LXG~YAdGUMRN)scU(xyP_VGd;2)vMw?dFZ{>I z@W?`*H$@iUKffQT$!|t|$dq;AxG}@cpF(Yf&I;0kVpe~>q*%$w6caaW`*YgVI7jq6S)z-5pK_HY>o^}0N0lI z4ZVp1{6I9|SY$pk@_ghJM_!~L5{~$YMRYYgny;9HSk)TGJe&pH0#Gc~+y?bLmcF#- zw@Tyb)VCh9o@55d1^sCIML+Xh$?y4Qc9?Ju%3=%RJQ z${~`H=n7ePF&pC;#TQ&vT($Z7Tq(w~4rBX2j;{D{W0{dVT_;`Vn4hQNj8m=x{Nrf6 z;z!(N(JamI1fSs>cn`r-vF-<%p|#l$UZ3|q?kC-i;l38`dRVIOGf$`3(VZ#G%%yPW zRQEsb1Dr-CS#NK7e=o zn&&<2+DV>8p5HwGdNz9IdNzAD5OGTP6nk<#RlT**o7MTIVjJ&Q?4bA)J9oTy4z})g zzB_o(yT!Z1yUx4Vd)T|xd&qmld*16Y?ln%6m*=f+JYm#Jr!BT$5H_*4lx6ha9OTuD4 z<=g3-;hW&w>RU*3{CD37-|N0!zUf5fKIH8e-!y(-b%4^heHp%+K3CLYUy3iychr~7 zk-!%V8%E^;X{T?JZ;@|+?;GD3pbhbL^F8Zp>3a}-p5zD`I;zlqLojOL>i~uw!MTO6 zhwo+IOYGurj1B*^?mNObar_#nnZ;{t+?DSqCF8H0duXhN) z9_#CU$J@gDl(#-#QGDCmi}N#YC(h5jFY!&qio^?>cpv1bbj^vz8 z^e~4g;x^9&q84vq-eX~uhg_WbR620nO~2uGNB$$sQqZ}+3_+r)CN zyE0uj&>q!^pZ-t9`5dZr*bGct=z5Q z+sa7BDEDR8MKsfX*9A1x4*aiQ@Wn=8JM}_)bs;wPG101Vu6E3z#zZOKC(7|4-*|k2 zBi>bwsO5v`z>rnJRm)Yz6^*1kN6hV_b(2}Rk*C#2%2|Bzb~6^&?|cXK2WIam=5#Z@ z6x#q9+6hhjxRsCQy~OOlWtOviRv9bKy3eYF{_SFQw0aQp`;_Nri1yu!Y$z}bi5V`% zO1pyGki5+`OUxTYMRQEWNzNi~vng|&>o!U)Gn4s(=VjnuHP`U8*W6{!BhvUgR^Cjr z2T_w`^RRi{+-?rxTb~omw~X+P_C+p5%JOs#$z~wQ46`Uw z7>P6QHycqljX0;*v?6YDB3OxmNGoViXtxry6;I=hiLT0{a_A&p&*Pe|=S%hUe#9VAH!0S%MUY(7u z`5uikgFf%2&)c{zFgHSn4dhKE#=3-@D^Mwq__5y#K#3E?jgFJE3LP~bDLfX43!%p^ zz+G-mGAE<4j#Ga%T5TV}m)BJx)xgIMw>=4pE4vdUwpy-LitvQ@|!o<;{xH9JGM8bl_l zGIn>{bgjX?4ylhp-BQ?uji6=&bkOTOSE0n)VAS1gMoM3zXrrhIJdty-0+9 zM&$9x5w!K?aBA2W8AO~dFY+9CK2N!S8Ltd_6o!7Kt(ttD_*Wu<{}45t$Lv|cw}(ga z-Q}10zVc^$bM*`6(E%daxmcf%5j$ys^;w76Sc#Zpg6mmyTqW22XutotK4RvM#TPn( zjtjafV`V-?jI$LM(r@lRkOS+m!Y*Pjmd3Yw7Tc^UHeN4uO+Qve|MblA4CYI=Q$1Te zhtW7U`K{~&-ZIF!HpsLmydAwCct7$!?`?(;H^kf1+sFGZ((hBEEx&rlp?7Y2KGSNC|$mX!|7~1Adbi{byY~L~8316x& zix|vm?sI&beN#zI=4~t2RJ6n?JkCtt15uAeHIHf>74lv7MST7!S5#uu6H$-yHI4>R z?eI>A^7Y(zqCQ|1>4m7CtQdXAS97ODos3G0x*C-q<@R5WDvr7lbuQ{||5N_f{%)*A z{q3LYpUmpi-~I*umHu!2E&M(FpZR8yNR_FtmZdjDBJ z!LjJ`{t|v~TfhFWsP}; ze>S+TrR}Mdn&kh&{|j}8`TNqJI_$EH;p@vDR?@adO<)aeThtgb_FGOye(($woic!+$h}8e@$=Suq>I%6Ko* zTI1jMGTt?s5>0!OYXzga5ocWTp7x%>=9r9r{MI|rJCpkW?;GAP@b%lz_cs<^| ze4%;`YiVOWLp{s!BDQ*x@g6?%yovYF81Lh8t`$7dp0b`>_%(T0Qu|pISj#%v2<)z| zSpD7HZL!0;W0zHN7q}j9htOhI(TYKr-yPt3jkTDau0v?G4faY&U)O8I?-vjg_>FI2 zkLK*=>dv~%Cw!f_6*H)_t0(%clj}KF;qK#0+4s2$uqt=p>1FfX?@XR9T2buMN+wnM z?1B}+2i(K=!Z%=*e!!ef#xt0WfAAr?>I>^T&NrCB!?9hrQDz37<6@%ziLPsw$NoC< zA>K~dUpwE$%-+Ly%QNj-lYr67dW9L^5y@B!E%`Q|U+Rjl(G`i;mTNzbk$eGt9J^(I z;7j6DSmm0GZ#vskTG~a)(&2wW?o<-s|<-H?X^&#x+M_5~Y z2;G{24Sv(K%s4FYt9S`o*+1mF@#Cy7 zu@2@#gRi-NMM^KE-6vQOOX=MTB%;<(wsRi0$K^QhT3y*;U11tsWuyXDv6Y8pti(EM z6;}Q3;XCTDV!gb{_odtNmFZ!Oa955Ft~VI(S2$ZU>W#@6NSQ&dF|5Un!5&&f1Zf|u zW;yWCLDzBD6^=Y?uBxn;HA0TQ0q4Ev9`2roA3g=U>jbiN3x4SwR(+R}I-j+#Uaa`e zbPr=?Y#ysjd)@JH_Cr|q)re*lyIwtLKzwkLNU&TS$lTh= z+d9e~@SO3K^2T|ik=|v9veozcy@|x!?(*7rd`fwvG2qEZ&C9>(9Kyyz{&xye-iS?U~^%y^Xy0dLLrl z{C=RA;2iQ)^d=D9b9tphN_k6r%hF~GZx!IXy)j@F?JY+HaJ%O?xSsVS@_x;8j-LI= zH_3P5^X#PWqp*YfLzfv`--B{3@s%DWuFx2op6AQ!ZnRjgJDWI2h;KVwU_Eg!vBEj{ zVyJ)0A-cNa42-sK+=MsdoveVjQH zg;i^z+izhdoy7J^BKoutyXr6Ou02>8ldz{YVSW8UjNk(zkH28=wJ|@(%IJ^X_bwL1 zKy0T^I9|nKebs!{tW6A|3D?KXd)NU`6U)Ynec8bDn^9&mR?>mU8je(U0{k19%Y9em zcOsSjusnuF`Vc7_j5XDlRs2zrj*(Y*`aLp`v_3=}`b55u{7hV}Cl=SYSS`=68rT8* z>lIdjo{l_mjXst+@NF4hGYH~h8 zZu!W=#0Q?@=u7+W1Gy_Le9Bwz$cMmrkNPc%>Zz5sk@nHTQ+`%AX%V(e?7l{md z%<9;JvDo)zi4E2wvfIUc0z14RvB1ty^bP(O;YaA*nHAH%#0H0(qwL5{J8aXr=6tNW zRJ@f_*qdjt@4QIO%GjZ9D+?)DV7@}6;uGQ)O^9H0XE*Pkw%_w7@@qLqGXEZN4k?vm z#}1>h*B<6O`gQn5ely}vRb4Nkg{ou2JweJ?*B3~n*NGqwMs|ITS2mvS<)^w16QRgO zChcT*ftxk`yNGTzB~DQv%dS6hhCc33-0kr3Cfh4!yOBm~i40oqx~z~l$ItxS)7A4n z(q$NHW&MfUy@s_n8{c#@{~xiDh~GYB%1xpRmdC>8tIuri#LSLC4)pN;Oq5|VI{jDg z=h%HI-hIRyR(m&)x|HWF?3ualP4k{4+K}l@_wFRtU&L3?D&cE4G)fV3sBN@i{cRL0 zZ{HYS8qj((LG~#NNIDwTldoFON2gjZ&1ZM*P4sZjcsBejZPShTC_}SZVAq zEb3)ZdnY@K{JyJ(X&f+4a2zEqmpH>RFgj=KvSSY0!0m*w#>gpASQfKd{z%LE$c>w`DYH8_yW^iE}g|t`TEAVAN%F z9^=~w5h5U$y?YqT6z_WPKi&o272avy>8zg)^Y%v8e~G0((vEd>KqvI}cE$&2iB71A z25}+9y-4({M5nTl*$0r`%iyw6o)JWj-zC!A6wZ4FEm+%gpQk!p}eEdRT%_Vza%E&s+t|sRuivo+A$39s95y7SteYsh*VSKxDcj z7G7J@^#44cVpsiwy*LGHY6Qnn?A39^v={P!G)L@RQtAAY$7R;YVp*q;a^bl|=0nYv*;z`X{(W@F@2HLhKeR4)(+DAAi&fRs9-B{y zAbo)C^$6?zuk!RKlI=@Y`-ig=V2Qn3YAJH<9A0WN`)gLPJ8BZUo6a!Kb9i5k?Y;!- zeJan3*cqPjdodLBn4H^@bOD z`K?Uw%()015E-{Zo#53cGW?nUG zAzjKaqw|P077(qxjubdSWNfA#)%ys`?prL4U$8fRVzuZ;;*j4HMfwVhV>Y%(AEH&= z*~!(LxKdB{NWR6&W+SYaPFRWB&-Ea7OIad|K4OwNkp%3Tn~^H!RsO^1CKl1I$o0sr zNQ_y`^QlN0D@$V{~(dCgH zL{8ILJI}-xyI^B=i}$10tLf}3Iu|KtmM4N5AkLc3F4Du1(~(j{OkJ$KE4t=0_fytS zO!i??Oma`qs~GILE>IwzwY9cH@!CR>I%a|yU|*}EeNA{PLz!o=loL!hF@67sZEI3)*}*EmzZG#cBKwrr(8!OfL~&1Kg09ujEgM7H(9gl$+%2s90v0A9jjP9 zvE7GZsgEGC`5q&;gDB~AEXbL}W=AkmUlD0mRCx^NY_!8BeB^(y^Z#IE=P}}6VPk$z z`DN&bc|=!_p-0Z!oRP(o-^wN~eG+c+@^lFAdLJcMaIJ*4C~F1GAi8G-yyl0ug6Nr> zW(ZEa3ZLD;|Gq}Ndn0!0Rd_BJo7Kce4-*G=!;RI^Ah&tXphkeUia4UJJoKA(7++ys zE}!>{;FV698(@`5J7@9sj}rGyL~~^jWnW3Oc{6yqt-H}$w`spTaBC4i@Nut<9h`t| zd^d4|eDEuxXNS=vOQ$ zRiR}f788UG;q0Tn? zehn+?Ae1YjmmA=!EGRPxzw8oLQ~)k_F$#t7dmQ8FVO-pdOB8XhO7P@OoBwXW4Pt9e;g%NIO)p?qJ&Ihf#F#h1g6aV;)x@9w97}2lx?w0b*xPVP zC+x^Ja7tUAdh_%Knqx4fzUS>*?9EBU@uy*h{>*Ci2L7jTIWhg&#P|DRgRa6GTu01r zJo@Dww9EqD<`Xy2zZ)LIOH889WJ>ETh289_=&3RMkKqB^gG|Q0oytEIW)lxPLp&^v zNaAtwHWP<9X4gN*%0Uv*#dX#p`yUNY0p)jMYvX}Ak*MT4qHN#U|39f{<}6C>r(PPd zjJ?Fw=Ha_8#Co1X$;se45gqwE{Th#c{DHS!#49hMVV44}4}G0Wz3t$-4jsFUT8f2E z1iJo_aSSoKoutg*)NdQk6Zbqz{4|I98JwqR`#Ardc>tIhtl?j^LhRLwVaHZB@w@<< zJYSA7rr zxEEIJ94y-JfY5;BP12fE_bpajza&EWA->E9)Ov;WoyWniJTYngO5`KTK1IaxLt>R( zxc0zK8iu9)5w_8%+_oR*9^rCJ!>^mL6wA3T*}N!UCyMGL09Yw-{3?6**bMB=Nz9<_ z%$fPfknfQUYnio0K-d4quH}6wb2^22{ws5>H}d6OOji(M3?oY<`>Aq4rsM@K&^$h{4%TbHIa@D$R7@l z9|LVPt$YV2y}|fPtmu1K;V(yTOxt04!yP!ql0kZU!xdZ9l1qKEyV zT36onzq)TwzXz?>q*Q&d?|~lpz{chS%KZezCqe;fix1cZ@gu&5)^%RvI-Ic>kLTV2 z9n_Q2{nZ}JU!lq%aDEbv@DB9*oOqg^CJ;lJPLGDcr}Cb*+B#_~d?<}Ji~B~n`3zX>MxyUyPOha)5;<$p2;$Zy z%*;QT6?1^Lo|HArxD9arI&!u!2ePS`N(^0EVmX-YCM}ix1Jv2XxrnEe%&c5A$0_EU zB=#0?*#*Yu&{`|u_wjJw6dmo%>x|NG$h5WeEC-wq+E^c^ z2jy+wR{s~h9bB?#X&d?5cwR@l>%s0KGV3}iNnm#q3ay6{|ANPId;B-jret3Vn4gD| zA!;2)&TXXJB3s^G2KQ;ua4Tb|-Y=x=Nb075@kuysCsfM-vVq36kdZ!@$CZxcT}9ci zIDV&pbGUvB75|2}KgXY51XTrL23RhHkLQDrR#un6S~xC=Yr78EOis>{JM2@FeEue|_XmgPlT&v9%&!oAjAsdL zc+rG4iMSP@eby-$J{-j;3vnPHx1Gt31kF!8%GL5)zB` zQ;D*bc&o!Iwu?U914el^Po814!(iz`?^Xn>yRn~C`)+ndDz;}(I>@-Xp+g6c6t8Ii#_x@f-_%DpN~6DTnp;I5tr;a;j3IHuh9| z?1mob`uB(zHXyYk_EaOZe_P6_c0=Bpa`5#=Y>B4WJkOKT*tQd7Ykh|O(H_gRt+&ILQaq{&HQNLGNhtM{9sO)ZjhA?T zk^7_cvN^Rn(YAK!)SzTPsMnb~^(fzjo;^cZ_4Y|dv=J0;0G4lnMPCcA$cjbC(F<7Im$>F2pARwvgK*seB*_uxdKyo=nO*alg%g=)Q;`mm?8&^( zVNPvAa;@Z9QeFRLE{kX$^K%svL=r%9aRTw?3CyPbq>p4?O+g;bxBr8EAhPZgWJE{% z|K|Il!(T<4wnndhht%kacC1CY{^-bh=>2=~pKD+Tv>>%SRz-Dmd_#0)ORR?0NY)q7 z!%eYd+7PenjUN3NeXZXE--RwO4}?aPYr%Uh>O4i6R%rd&z-@r-5hUVKK%Au^OvAs=r`CIYf zk5m2_Ug}0X_aj98FLR{f#~#Fw&9WmZ*N7Dy=lz0NinW6?tPrG9Vjrz!aNkdaCmHXT z#VG4I{;l>uhJcaBnNN!sh{+r?wIl8n`|^&1Zy}METlmR2z`X&4EMhmiiQ-%}qv@Ac zpyex@;IiK?w~r{oHgHX)9czNP~?hZ4K&2vRnE*bR(B90%;)pC&?dg#PTI-XY={>e)UpH>}fOb&XnC+_w<1 zSWfRw(E57t`G?5aDm?sk980OOjuHomi-|I)fP0&ICwX!+8kx}IAaRq6Too%zVx4^p zPe*{Xf}X6QU#a#uoPlnqD0Kq-4?^`*^l}$it+dy3^6AT7J9c)Sw4?MZpNK=T>9N$B z$tYZeFK&bH74W_W76wr$KU94T4vi*)6+?z%)p=V{C^^^A9L(C^2#7He8{o_B+kdyw9>c&mvlua1m=0I6~>PY9r)S&Sz4p~Y?> zlk(A$7I$e+dGsdl*T^X#CLcy>S=ttYCNXVItmo@!y<5nr613GN@&nYg&`I+0J;*N$ z2$#^hMMx{{%esID%g2(D=a$afG2Ra&wK6zP^L7Y1b`)FY68Tw3v|~K)CGRNjhpBfQ zTVNfsX&bh~A_OsfBsGP)%aNF}L{^iw5}Rp_owmW=uPKXR zInr$|l%9rUn~Ie(5gTX%?|);P_eT!?h$SyN#@e&wFUD*X z=kJW9JceI6XL8JDFD7*=d4DsK^BD0djO9jqLHl#nrM`Jm@2aBIc9ZgARrRpcJ9B5-L5Az$^ z`i8u*Tu1Z%Ej88R-?TUh7=MA&ueO(=lxgtuUzC={o=IQ+rnP_J?n&_GWJ>)>&P=e> zj^rs^=Ygd#pGK(}_R~cAKASv8|0gjkb~6i>0Ao5i+Pk+5>tHrD7E(hwYwfwShV)eC z-U@oX1lwRUGi(hrO2=U=bwwf9P0_?_a~X{@)|F2T(swM z8l}(T1)N}pry~c>0OvSm&r?d?!C8*e_&FJ*oU^Zz3mHhIYsj5kTdo9=Sf#O>3bF5R zVH@3~l>%ha7248yf$~>@CYajGBMbZ*`MJoZn>-g_+v|uRnIcHTe0C)2tr&=Ic7K-P z8!u&nAK~o=lI|8IE&?+HDRmua*KNqfTyFu-MU3heF#XtTg|tyX-5WrZG>yh%&~Gh@ zfN-7q`QYY8O6pMWPjcoU^AwGeM|F@gr-8c{3h?Q3QuadWeKtLJ@O}WQ$u~N0m%0q) z(mAuCX%>{c0PQYuX4*A(GiLJ6Q<0C`871u@NTc>nVD4tLl8~9J$=l4BCs8VeCwb4i zY#(hu5_c~nEuVE6e6k8jy9PT_w&Y4iek(P0fXzzeu=dw&vAJapWt5Xj?X6(DlbjUN zR@xq360nv7OB|@QrPLI^E+k!CrX8e;3e12X<=;((r{{Al;+O#sPO&+3G0%(O*CgJS z(#|q^p`E+4sWq2#0qF}!QJsmv{F_-J|9Xx+gJ*IV4s)obc*#7jYk{-gF0+o*^^~1U z`oCZ}kDU3ObC@T8QBo0re`s+g*sLReF}W+KBM)~CJ>5i)MbVYy%7$J9-E^*j7Aep| zp7KWCR8}hiqTUM1E(WIPv7To|Wm3u84ee#`AEfR{#^f+*+oAJru16W0{fzt}IA=4Q zBae9(Z+q+~Y0?c>A!mopqx;D}4OT~iqCLMGfx4Oem2llw?mNNp7-bGnUfTX3 zCDsCGGtXOTU2Scol_T6!!EH0;wt#IiG+9QDqPwE0qA2U3=MqvDk)n}Y45b%A|0R@N zP0A9E)r{d1I6|YS63ZCrHKZ+tHxye|^k*^e{{m|nu>R#bmz-6kt{{CG5SNm^(9TyY zl5}%veHE}ZMq9Wq<0*waMSHZ4qmdTRtmP>Q+?BQ*iYz2W(WF(BUQ5aX-j;EwR}MtQ z(>8PHn@Gu|Zh#`IDZicPU8HCxs-z;-YiLpZSjEWbmnJ(X<5*D#p!|L?lLfVjxqb*~ zavZuJg#JzpYCCzFl?Nzwg!;!An_WCB-f;p*yQrtUz0h1^pt$`G%I^c3Vk4WWahRtQ zZH zZ9V;yOqj=Pn{LnUdAzUUeGy}|2->Z+XWn9atd~$nu~Weng?DpTibi7@Tp)Qc6)1lI zYZCSTWh9pXOZt2+IrAwg&e3?U;ry3bzMOQ`)5uE}X#~YF3n(o;IURke{rr+L6Tnix zb`>OHBwkTJ#brzEQqw3i6MI7uVrk-kDgPTebC6AvT#JD|n_9wIW4nxV5fFvxY+6th zO}wm}CD3I9ci|!4U&6CA_y)TNGiW`ToFvj6xgu=;u`!+k4(gR8@Ot2_pf&Bbk$lpq zte~8F`M2GBNjuS7ZK&-<)SL%S(`>pep+)VcUO~Ddi_XfaB;`!{CQIr!`YJ1DD(3{! zXHk1KbkUB#)f}2>qJ%6DVW{~#7ie?9W)Y_}jijRbt9E9RI}O+~v3e9|*Dw8-07aOu z<;fW*{lY^MK-g;B)CWPG3%%xXYJ_IkSc_holj2E@|7v($Ggkb%9d4BLRcw0?d@dcl z7Oq|apROl=6S-^1kpx@I+XjvuJZ~XQoPUTza{CPDZc>ghV|JpMkJ`44Y$KI8&Kx|= zU9)bRJ$EnBA7N#BNZdo- zUdih;?y9SKFR8vCX#0V*kNZ|?Xx1z35GiRK=fV04_p{s;y+3VR4$>V z>^O1SQ7E~OQ~Lgp&BM|hJ18mpOICxdG+7{;>1%9yt$-rZF5m9!%ApG;T|F4EI0xQd^&daxY~HH$T)wdS*$I+Ei{krK10 zEs3RHcS!i+F1e28MYLj2%MR~Tn;4J7LviT zA!MnD`rb&}80MY5OGJLwjAO`7GaxUM5lW4@lYH747jZ8F@M0v6(PS=N%08z`av zX(VNhBmqg3m#v^&L6J?l$}Xw(vJ^^av_zLwu-Oi5!Poe2p#Cy)*4kVwZN3+*Pr{|* zH+f>|(BU*~W$>)^`?EIBiNE&SxNQZ_X5dRQNqT7Jsht!cucL)6+?^S%nJDR%N@+(* zYR2z}BC;#i&{ugDvUFt=$==yU`bN@a`N-ng$$JVAx54S#d6t#z@ThhRtb*>MsHh;C zOD<@}YHmnc?k824iqkg$Z>v35G;0He1u0+fGzJbY$w$?Cu4a(vqt#Vu#S}O~JiErmNt_@lrdca5Y9%Gq zSJe_Nw~*`jAF@6*LaRtyXLG6~@^-jnAM!KSN8F?m-e(~D~sS5`HG;P zwl#MKSH(om*>BP%!tW#{k8_o_*S@mTJfGoumaF2g>A<_dUHR#h&mjL4aJ7d(5t>8f z?zP{K@+3%#-JGDb;y#K-WZLN$c|K!9%_K$pg)Z3mWRiM{L$-``vhX>|lPsH)9O>li zJDi6pa|Eb+cvFe9b}!VHtUc2D;-@I3sI$Ch zrEA4kaTRBm-cg`9eO3LFz}iPC(M;Bk#zHpIVf!j+qR~9c$R6b`%R<({PRefwuH)0_ zS$raic>taiXUdk49VGi~8_zqyNP8ay#oa? z7oBGe#UYC9XOXTb-+A5@-#?A*bA|Up;O5xloJXmPc1%iRb&2yl?VJRL!(GRKk;Zx6 zhAulY%^uwx($cY}vhGChvTS(SKu~l~oTU|oOuMGmN1aGwCU|Sk9V11&rBvxPag^qa z#`qBMHRcXyiTh>YimGR9YDf!;f3rD77vXc#KDDPM8`v54DW29mNCyXJMmY25AT*Gz zru{D`!1@@_E>luH(zj(#5+PK&gY|jaTD(Y4GVC;m&S_BbBs~|EG|zPv-wUen%e2Q# zc&X>Iy%qV(0=v^tD1*E9RcM^jxoajWnwr6zzWyRhT`*+BYy4%iU*JitDeoNj6TF?V zPkjwnGwckIb2+lWEt8QsK`b+qmNf1f53TiFq&Jty*NA6f3FnZb`K~foc)QA>U4x3o z7E<<#9gWp)p?u!7uQZQmeIH6IQ2D&wrc41jx2P8ZYMxzEDL3phpPVA<1#R54TjCm} z6!BGA!B=EhyFaoyuTWNL*MK5>J)4pjfTVqkSAgKOeU+RXPNfL1d~)-6&jP|(N@tOF z)$ZSU(naqJ_9$Jo`>J&;@n#P7&r(azs-Z6wXboSuiH2(XlAWS7$@1&aS-*?PVl1vh zZ^`U)loRi0Y!opTUG)pqbClQ26K82wXw21)S`fvRrxDbOo8rlu1=4pH88>MR#n=@K z7N<&XXvQm=sF>n@a(3C$Lb6kGS$>H4Pc!!z@Q(uRFp#x>N4i1f4s+@*2=YrEStTth z9eIGeWKb6O4DM%X;S}Yh1?3?hw4Ve)ewk#q^jId+?2=ttno9ep{_X{|=`K|CedA*xAYiYnoLY&|O0~`__83TRU89sEr8Ki8LA2g;m2_P%kaCV^joDeAHBzEv z9x0L!k|3Jdxpqt0qzPgU?^o*}lIt)7HQu3bLQma4gTp;zZR_r|ag{ew!{wGHINW*P8okQPN($bL4^W6EBJf)2VSD%!R#r zt~6mPnyC%dRvQkkdJ-Lkm9(b#QF2{WQi`O#)>O5EC=HU!a}IZnvp7nesJg;PebJl4 zmHFVUbxe&>j*YeE-!<@73@evsXD&GN#F-0@PLYICt7jMo$r9Nz+Kr}h6O|n*uF|FA8sVzBrglVIioL!78u1?1)PB&$HP z(uug`@vJA&KzY*cDkWZ)P2p&EakX%9uyJ&~=8)Epv+Pouf712(Rl#N2l=jzLylF$p zv++_H%{ZmW^3d+ho0QaVTW@k|wiI#~eg%}(EXpBAHpq3#X|Ct6rkq2mtE8z;Avrhh z)E3UdB0y_}c8`U#Y?uP*q*fhzI8?kry85G2m^-vlsT-7Y`r+WDb#mc&$!=fPm8hu_ z8i7J6P{gPek}q1zLK1z|dxxIt^?!8HXgYLtq?99zoKa8@B}*j1gsbc?r)5bfjks() z*^!cNs-t#n&1+dm(rIVy4JW2~pbR%4JuWass5Py!KfX@TOg6H@WBA=WX6^*_M1UwMuw% z@(W4Lr;b{PkfU7L`-PObW_tx{Mf=f2r2uK7qRQpiWrdYmchW_F^;Ubhi%1itHPQ~= z`LubP)`TB_D#=y7)aYr%G)78QZ}rCCQrLLut5(8L7%4@&)(h==#X#2n5n*3o_g-}! z$TztMfFHJTRd0)J_`;=t9_H~bT=f*T@esv?QxI$dHXQXv&!Xag7>d&ze$rm|Yj>cE zh9&kXstSK$;?&eA=yzHgGqvHsc1q}a;|?}zMZIvw(t)AA@JAdR+M8Z-2a@*Ggn%Ym zh)T|({scKoNYftXFlUL~OT7i}qzi{)yA|bYCt=Z@TDR=dqNnI9eiBFNS_0G}N~^~j zg(CYZZqiv~pVn70slI*NG{j;dz@PkDO(uP1^~0zLGL0rf_>2?y<# z)PA8`KvItI`>*97&khbM7rOH%9Mntwt|E_`*O@0b?xZ*rbExHTnQ#y-oH-moV^9p3g=ALG9`)$YHLc zm)cgIFi{&$T7(qIqj&v@`RDMf+^w;iijfV4V+Hb(); + m_Camera = Camera.main; + m_OriginalCameraPosition = m_Camera.transform.localPosition; + m_FovKick.Setup(m_Camera); + m_HeadBob.Setup(m_Camera, m_StepInterval); + m_StepCycle = 0f; + m_NextStep = m_StepCycle/2f; + m_Jumping = false; + m_AudioSource = GetComponent(); + m_MouseLook.Init(transform , m_Camera.transform); + } + + + // Update is called once per frame + private void Update() + { + RotateView(); + // the jump state needs to read here to make sure it is not missed + if (!m_Jump) + { + m_Jump = CrossPlatformInputManager.GetButtonDown("Jump"); + } + + if (!m_PreviouslyGrounded && m_CharacterController.isGrounded) + { + StartCoroutine(m_JumpBob.DoBobCycle()); + PlayLandingSound(); + m_MoveDir.y = 0f; + m_Jumping = false; + } + if (!m_CharacterController.isGrounded && !m_Jumping && m_PreviouslyGrounded) + { + m_MoveDir.y = 0f; + } + + m_PreviouslyGrounded = m_CharacterController.isGrounded; + } + + + private void PlayLandingSound() + { + m_AudioSource.clip = m_LandSound; + m_AudioSource.Play(); + m_NextStep = m_StepCycle + .5f; + } + + + private void FixedUpdate() + { + float speed; + GetInput(out speed); + // always move along the camera forward as it is the direction that it being aimed at + Vector3 desiredMove = transform.forward*m_Input.y + transform.right*m_Input.x; + + // get a normal for the surface that is being touched to move along it + RaycastHit hitInfo; + Physics.SphereCast(transform.position, m_CharacterController.radius, Vector3.down, out hitInfo, + m_CharacterController.height/2f, Physics.AllLayers, QueryTriggerInteraction.Ignore); + desiredMove = Vector3.ProjectOnPlane(desiredMove, hitInfo.normal).normalized; + + m_MoveDir.x = desiredMove.x*speed; + m_MoveDir.z = desiredMove.z*speed; + + + if (m_CharacterController.isGrounded) + { + m_MoveDir.y = -m_StickToGroundForce; + + if (m_Jump) + { + m_MoveDir.y = m_JumpSpeed; + PlayJumpSound(); + m_Jump = false; + m_Jumping = true; + } + } + else + { + m_MoveDir += Physics.gravity*m_GravityMultiplier*Time.fixedDeltaTime; + } + m_CollisionFlags = m_CharacterController.Move(m_MoveDir*Time.fixedDeltaTime); + + ProgressStepCycle(speed); + UpdateCameraPosition(speed); + + m_MouseLook.UpdateCursorLock(); + } + + + private void PlayJumpSound() + { + m_AudioSource.clip = m_JumpSound; + m_AudioSource.Play(); + } + + + private void ProgressStepCycle(float speed) + { + if (m_CharacterController.velocity.sqrMagnitude > 0 && (m_Input.x != 0 || m_Input.y != 0)) + { + m_StepCycle += (m_CharacterController.velocity.magnitude + (speed*(m_IsWalking ? 1f : m_RunstepLenghten)))* + Time.fixedDeltaTime; + } + + if (!(m_StepCycle > m_NextStep)) + { + return; + } + + m_NextStep = m_StepCycle + m_StepInterval; + + PlayFootStepAudio(); + } + + + private void PlayFootStepAudio() + { + if (!m_CharacterController.isGrounded) + { + return; + } + // pick & play a random footstep sound from the array, + // excluding sound at index 0 + int n = Random.Range(1, m_FootstepSounds.Length); + m_AudioSource.clip = m_FootstepSounds[n]; + m_AudioSource.PlayOneShot(m_AudioSource.clip); + // move picked sound to index 0 so it's not picked next time + m_FootstepSounds[n] = m_FootstepSounds[0]; + m_FootstepSounds[0] = m_AudioSource.clip; + } + + + private void UpdateCameraPosition(float speed) + { + Vector3 newCameraPosition; + if (!m_UseHeadBob) + { + return; + } + if (m_CharacterController.velocity.magnitude > 0 && m_CharacterController.isGrounded) + { + m_Camera.transform.localPosition = + m_HeadBob.DoHeadBob(m_CharacterController.velocity.magnitude + + (speed*(m_IsWalking ? 1f : m_RunstepLenghten))); + newCameraPosition = m_Camera.transform.localPosition; + newCameraPosition.y = m_Camera.transform.localPosition.y - m_JumpBob.Offset(); + } + else + { + newCameraPosition = m_Camera.transform.localPosition; + newCameraPosition.y = m_OriginalCameraPosition.y - m_JumpBob.Offset(); + } + m_Camera.transform.localPosition = newCameraPosition; + } + + + private void GetInput(out float speed) + { + // Read input + float horizontal = CrossPlatformInputManager.GetAxis("Horizontal"); + float vertical = CrossPlatformInputManager.GetAxis("Vertical"); + + bool waswalking = m_IsWalking; + +#if !MOBILE_INPUT + // On standalone builds, walk/run speed is modified by a key press. + // keep track of whether or not the character is walking or running + m_IsWalking = !Input.GetKey(KeyCode.LeftShift); +#endif + // set the desired speed to be walking or running + speed = m_IsWalking ? m_WalkSpeed : m_RunSpeed; + m_Input = new Vector2(horizontal, vertical); + + // normalize input if it exceeds 1 in combined length: + if (m_Input.sqrMagnitude > 1) + { + m_Input.Normalize(); + } + + // handle speed change to give an fov kick + // only if the player is going to a run, is running and the fovkick is to be used + if (m_IsWalking != waswalking && m_UseFovKick && m_CharacterController.velocity.sqrMagnitude > 0) + { + StopAllCoroutines(); + StartCoroutine(!m_IsWalking ? m_FovKick.FOVKickUp() : m_FovKick.FOVKickDown()); + } + } + + + private void RotateView() + { + m_MouseLook.LookRotation (transform, m_Camera.transform); + } + + + private void OnControllerColliderHit(ControllerColliderHit hit) + { + Rigidbody body = hit.collider.attachedRigidbody; + //dont move the rigidbody if the character is on top of it + if (m_CollisionFlags == CollisionFlags.Below) + { + return; + } + + if (body == null || body.isKinematic) + { + return; + } + body.AddForceAtPosition(m_CharacterController.velocity*0.1f, hit.point, ForceMode.Impulse); + } + } +} diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs.meta new file mode 100644 index 00000000..437171c5 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 05ec5cf00ca181d45a42ba1870e148c3 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs new file mode 100644 index 00000000..06ddecc5 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs @@ -0,0 +1,55 @@ +using System; +using UnityEngine; +using UnityStandardAssets.Utility; + +namespace UnityStandardAssets.Characters.FirstPerson +{ + public class HeadBob : MonoBehaviour + { + public Camera Camera; + public CurveControlledBob motionBob = new CurveControlledBob(); + public LerpControlledBob jumpAndLandingBob = new LerpControlledBob(); + public RigidbodyFirstPersonController rigidbodyFirstPersonController; + public float StrideInterval; + [Range(0f, 1f)] public float RunningStrideLengthen; + + // private CameraRefocus m_CameraRefocus; + private bool m_PreviouslyGrounded; + private Vector3 m_OriginalCameraPosition; + + + private void Start() + { + motionBob.Setup(Camera, StrideInterval); + m_OriginalCameraPosition = Camera.transform.localPosition; + // m_CameraRefocus = new CameraRefocus(Camera, transform.root.transform, Camera.transform.localPosition); + } + + + private void Update() + { + // m_CameraRefocus.GetFocusPoint(); + Vector3 newCameraPosition; + if (rigidbodyFirstPersonController.Velocity.magnitude > 0 && rigidbodyFirstPersonController.Grounded) + { + Camera.transform.localPosition = motionBob.DoHeadBob(rigidbodyFirstPersonController.Velocity.magnitude*(rigidbodyFirstPersonController.Running ? RunningStrideLengthen : 1f)); + newCameraPosition = Camera.transform.localPosition; + newCameraPosition.y = Camera.transform.localPosition.y - jumpAndLandingBob.Offset(); + } + else + { + newCameraPosition = Camera.transform.localPosition; + newCameraPosition.y = m_OriginalCameraPosition.y - jumpAndLandingBob.Offset(); + } + Camera.transform.localPosition = newCameraPosition; + + if (!m_PreviouslyGrounded && rigidbodyFirstPersonController.Grounded) + { + StartCoroutine(jumpAndLandingBob.DoBobCycle()); + } + + m_PreviouslyGrounded = rigidbodyFirstPersonController.Grounded; + // m_CameraRefocus.SetFocusPoint(); + } + } +} diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs.meta new file mode 100644 index 00000000..4cff284c --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/HeadBob.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 83c81407209f85e4c87c0cda8b32868e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs new file mode 100644 index 00000000..79c3aa20 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs @@ -0,0 +1,115 @@ +using System; +using UnityEngine; +using UnityStandardAssets.CrossPlatformInput; + +namespace UnityStandardAssets.Characters.FirstPerson +{ + [Serializable] + public class MouseLook + { + public float XSensitivity = 2f; + public float YSensitivity = 2f; + public bool clampVerticalRotation = true; + public float MinimumX = -90F; + public float MaximumX = 90F; + public bool smooth; + public float smoothTime = 5f; + public bool lockCursor = true; + + + private Quaternion m_CharacterTargetRot; + private Quaternion m_CameraTargetRot; + private bool m_cursorIsLocked = true; + + public void Init(Transform character, Transform camera) + { + m_CharacterTargetRot = character.localRotation; + m_CameraTargetRot = camera.localRotation; + } + + + public void LookRotation(Transform character, Transform camera) + { + float yRot = CrossPlatformInputManager.GetAxis("Mouse X") * XSensitivity; + float xRot = CrossPlatformInputManager.GetAxis("Mouse Y") * YSensitivity; + + m_CharacterTargetRot *= Quaternion.Euler (0f, yRot, 0f); + m_CameraTargetRot *= Quaternion.Euler (-xRot, 0f, 0f); + + if(clampVerticalRotation) + m_CameraTargetRot = ClampRotationAroundXAxis (m_CameraTargetRot); + + if(smooth) + { + character.localRotation = Quaternion.Slerp (character.localRotation, m_CharacterTargetRot, + smoothTime * Time.deltaTime); + camera.localRotation = Quaternion.Slerp (camera.localRotation, m_CameraTargetRot, + smoothTime * Time.deltaTime); + } + else + { + character.localRotation = m_CharacterTargetRot; + camera.localRotation = m_CameraTargetRot; + } + + UpdateCursorLock(); + } + + public void SetCursorLock(bool value) + { + lockCursor = value; + if(!lockCursor) + {//we force unlock the cursor if the user disable the cursor locking helper + Cursor.lockState = CursorLockMode.None; + Cursor.visible = true; + } + } + + public void UpdateCursorLock() + { + //if the user set "lockCursor" we check & properly lock the cursos + if (lockCursor) + InternalLockUpdate(); + } + + private void InternalLockUpdate() + { + if(Input.GetKeyUp(KeyCode.Escape)) + { + m_cursorIsLocked = false; + } + else if(Input.GetMouseButtonUp(0)) + { + m_cursorIsLocked = true; + } + + if (m_cursorIsLocked) + { + Cursor.lockState = CursorLockMode.Locked; + Cursor.visible = false; + } + else if (!m_cursorIsLocked) + { + Cursor.lockState = CursorLockMode.None; + Cursor.visible = true; + } + } + + Quaternion ClampRotationAroundXAxis(Quaternion q) + { + q.x /= q.w; + q.y /= q.w; + q.z /= q.w; + q.w = 1.0f; + + float angleX = 2.0f * Mathf.Rad2Deg * Mathf.Atan (q.x); + + angleX = Mathf.Clamp (angleX, MinimumX, MaximumX); + + q.x = Mathf.Tan (0.5f * Mathf.Deg2Rad * angleX); + + return q; + } + + } +} diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs.meta new file mode 100644 index 00000000..2e6a76f5 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/MouseLook.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 37e60a97f2c87ae41b6cdc1055d78cb9 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs new file mode 100644 index 00000000..9caa5ef1 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs @@ -0,0 +1,265 @@ +using System; +using UnityEngine; +using UnityStandardAssets.CrossPlatformInput; + +namespace UnityStandardAssets.Characters.FirstPerson +{ + [RequireComponent(typeof (Rigidbody))] + [RequireComponent(typeof (CapsuleCollider))] + public class RigidbodyFirstPersonController : MonoBehaviour + { + [Serializable] + public class MovementSettings + { + public float ForwardSpeed = 8.0f; // Speed when walking forward + public float BackwardSpeed = 4.0f; // Speed when walking backwards + public float StrafeSpeed = 4.0f; // Speed when walking sideways + public float RunMultiplier = 2.0f; // Speed when sprinting + public KeyCode RunKey = KeyCode.LeftShift; + public float JumpForce = 30f; + public AnimationCurve SlopeCurveModifier = new AnimationCurve(new Keyframe(-90.0f, 1.0f), new Keyframe(0.0f, 1.0f), new Keyframe(90.0f, 0.0f)); + [HideInInspector] public float CurrentTargetSpeed = 8f; + +#if !MOBILE_INPUT + private bool m_Running; +#endif + + public void UpdateDesiredTargetSpeed(Vector2 input) + { + if (input == Vector2.zero) return; + if (input.x > 0 || input.x < 0) + { + //strafe + CurrentTargetSpeed = StrafeSpeed; + } + if (input.y < 0) + { + //backwards + CurrentTargetSpeed = BackwardSpeed; + } + if (input.y > 0) + { + //forwards + //handled last as if strafing and moving forward at the same time forwards speed should take precedence + CurrentTargetSpeed = ForwardSpeed; + } +#if !MOBILE_INPUT + if (Input.GetKey(RunKey)) + { + CurrentTargetSpeed *= RunMultiplier; + m_Running = true; + } + else + { + m_Running = false; + } +#endif + } + +#if !MOBILE_INPUT + public bool Running + { + get { return m_Running; } + } +#endif + } + + + [Serializable] + public class AdvancedSettings + { + public float groundCheckDistance = 0.01f; // distance for checking if the controller is grounded ( 0.01f seems to work best for this ) + public float stickToGroundHelperDistance = 0.5f; // stops the character + public float slowDownRate = 20f; // rate at which the controller comes to a stop when there is no input + public bool airControl; // can the user control the direction that is being moved in the air + [Tooltip("set it to 0.1 or more if you get stuck in wall")] + public float shellOffset; //reduce the radius by that ratio to avoid getting stuck in wall (a value of 0.1f is nice) + } + + + public Camera cam; + public MovementSettings movementSettings = new MovementSettings(); + public MouseLook mouseLook = new MouseLook(); + public AdvancedSettings advancedSettings = new AdvancedSettings(); + + + private Rigidbody m_RigidBody; + private CapsuleCollider m_Capsule; + private float m_YRotation; + private Vector3 m_GroundContactNormal; + private bool m_Jump, m_PreviouslyGrounded, m_Jumping, m_IsGrounded; + + + public Vector3 Velocity + { + get { return m_RigidBody.velocity; } + } + + public bool Grounded + { + get { return m_IsGrounded; } + } + + public bool Jumping + { + get { return m_Jumping; } + } + + public bool Running + { + get + { + #if !MOBILE_INPUT + return movementSettings.Running; +#else + return false; +#endif + } + } + + + private void Start() + { + m_RigidBody = GetComponent(); + m_Capsule = GetComponent(); + mouseLook.Init (transform, cam.transform); + } + + + private void Update() + { + RotateView(); + + if (CrossPlatformInputManager.GetButtonDown("Jump") && !m_Jump) + { + m_Jump = true; + } + } + + + private void FixedUpdate() + { + GroundCheck(); + Vector2 input = GetInput(); + + if ((Mathf.Abs(input.x) > float.Epsilon || Mathf.Abs(input.y) > float.Epsilon) && (advancedSettings.airControl || m_IsGrounded)) + { + // always move along the camera forward as it is the direction that it being aimed at + Vector3 desiredMove = cam.transform.forward*input.y + cam.transform.right*input.x; + desiredMove = Vector3.ProjectOnPlane(desiredMove, m_GroundContactNormal).normalized; + + desiredMove.x = desiredMove.x*movementSettings.CurrentTargetSpeed; + desiredMove.z = desiredMove.z*movementSettings.CurrentTargetSpeed; + desiredMove.y = desiredMove.y*movementSettings.CurrentTargetSpeed; + if (m_RigidBody.velocity.sqrMagnitude < + (movementSettings.CurrentTargetSpeed*movementSettings.CurrentTargetSpeed)) + { + m_RigidBody.AddForce(desiredMove*SlopeMultiplier(), ForceMode.Impulse); + } + } + + if (m_IsGrounded) + { + m_RigidBody.drag = 5f; + + if (m_Jump) + { + m_RigidBody.drag = 0f; + m_RigidBody.velocity = new Vector3(m_RigidBody.velocity.x, 0f, m_RigidBody.velocity.z); + m_RigidBody.AddForce(new Vector3(0f, movementSettings.JumpForce, 0f), ForceMode.Impulse); + m_Jumping = true; + } + + if (!m_Jumping && Mathf.Abs(input.x) < float.Epsilon && Mathf.Abs(input.y) < float.Epsilon && m_RigidBody.velocity.magnitude < 1f) + { + m_RigidBody.Sleep(); + } + } + else + { + m_RigidBody.drag = 0f; + if (m_PreviouslyGrounded && !m_Jumping) + { + StickToGroundHelper(); + } + } + m_Jump = false; + } + + + private float SlopeMultiplier() + { + float angle = Vector3.Angle(m_GroundContactNormal, Vector3.up); + return movementSettings.SlopeCurveModifier.Evaluate(angle); + } + + + private void StickToGroundHelper() + { + RaycastHit hitInfo; + if (Physics.SphereCast(transform.position, m_Capsule.radius * (1.0f - advancedSettings.shellOffset), Vector3.down, out hitInfo, + ((m_Capsule.height/2f) - m_Capsule.radius) + + advancedSettings.stickToGroundHelperDistance, Physics.AllLayers, QueryTriggerInteraction.Ignore)) + { + if (Mathf.Abs(Vector3.Angle(hitInfo.normal, Vector3.up)) < 85f) + { + m_RigidBody.velocity = Vector3.ProjectOnPlane(m_RigidBody.velocity, hitInfo.normal); + } + } + } + + + private Vector2 GetInput() + { + + Vector2 input = new Vector2 + { + x = CrossPlatformInputManager.GetAxis("Horizontal"), + y = CrossPlatformInputManager.GetAxis("Vertical") + }; + movementSettings.UpdateDesiredTargetSpeed(input); + return input; + } + + + private void RotateView() + { + //avoids the mouse looking if the game is effectively paused + if (Mathf.Abs(Time.timeScale) < float.Epsilon) return; + + // get the rotation before it's changed + float oldYRotation = transform.eulerAngles.y; + + mouseLook.LookRotation (transform, cam.transform); + + if (m_IsGrounded || advancedSettings.airControl) + { + // Rotate the rigidbody velocity to match the new direction that the character is looking + Quaternion velRotation = Quaternion.AngleAxis(transform.eulerAngles.y - oldYRotation, Vector3.up); + m_RigidBody.velocity = velRotation*m_RigidBody.velocity; + } + } + + /// sphere cast down just beyond the bottom of the capsule to see if the capsule is colliding round the bottom + private void GroundCheck() + { + m_PreviouslyGrounded = m_IsGrounded; + RaycastHit hitInfo; + if (Physics.SphereCast(transform.position, m_Capsule.radius * (1.0f - advancedSettings.shellOffset), Vector3.down, out hitInfo, + ((m_Capsule.height/2f) - m_Capsule.radius) + advancedSettings.groundCheckDistance, Physics.AllLayers, QueryTriggerInteraction.Ignore)) + { + m_IsGrounded = true; + m_GroundContactNormal = hitInfo.normal; + } + else + { + m_IsGrounded = false; + m_GroundContactNormal = Vector3.up; + } + if (!m_PreviouslyGrounded && m_IsGrounded && m_Jumping) + { + m_Jumping = false; + } + } + } +} diff --git a/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs.meta b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs.meta new file mode 100644 index 00000000..cad56370 --- /dev/null +++ b/Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/RigidbodyFirstPersonController.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 81c9795a96c094f4cbde4d65546aa9b2 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput.meta b/Assets/Standard Assets/CrossPlatformInput.meta new file mode 100644 index 00000000..bc1c7386 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 710bc43f80d178548bd226c252c8e65b +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt new file mode 100644 index 00000000..461c8df4 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt @@ -0,0 +1,32 @@ + +Importing the CrossPlatformInput package adds a menu item to Unity, "CrossPlatformInput", which allows you to enable or disable the CrossPlatformInput in the editor. You must enable the CrossPlatformInput in order to see the control rigs in the editor, and to start using Unity Remote to control your game. + +The CrossPlatformInput sample assets contains two main sections. + +1) The folder of prefabs provide a variety of ready-to-use "MobileControlRigs". Each control rig is suitable for a different purpose, and each implements the touch or tilt-based equivalent of some of the default standalone axes or buttons. These are ready to drop into your scene, and to use them you simply need to read the axes via the CrossPlatformInput class, rather than Unity's regular Input class. + +2) The set of scripts provided are the scripts we used to put together the control rigs prefabs. They provide a simplified way of reading basic mobile input, such as tilt, taps and swipe gestures. They are designed so that various mobile controls can be read in the same way as regular Unity axes and buttons. You can use these scripts to build your own MobileControlRigs. + + + +For example the Car control rig feeds the tilt input of the mobile device to the "Horizontal" axis, and has an accelerator and brake touch button which are fed as a pair into the "Vertical" axis. These are virtual equivalents of the real "Horizontal" and "Vertical" axes defined in Unity's Input Manager. + +Therefore when you read CrossPlatformInput.GetAxis("Horizontal"), you will either get the "real" input value - if your build target is non-mobile, or the value from the mobile control rig - if your build target is set to a mobile platform. + +The CrossPlatformInput scripts and prefabs are provided together as an example of how you can implement a cross-platform control solution in Unity. They also allow us to provide our other sample scenes in a form that can be published as standalone or to mobile targets with no modification. + +To use the CrossPlatformInput, you need to drop a "Mobile Control Rig" into your scene (or create your own), and then make calls to CrossPlatformInput functions, referring to the axes and buttons that the Rig implements. + +When reading input from the CrossPlatformInput class, the values returned will be taken either from Unity's Input Manager settings, or from the mobile-specific controls set up, depending on which build target you have selected. + +The CrossPlatformInput class is designed to be called instead of Unity's own Input class, and so mirrors certain parts of the Input API - specifically the functions relating to Axes and Buttons: + GetAxis, GetAxisRaw + GetButton, GetButtonDown, GetButtonUp + +Notes for coders: +This package sets two compiler define symbols. One is always set automatically, the other is optionally set from a menu item. + +Importing the "CrossPlatformInput" package will automatically add a compiler define symbol, "CROSS_PLATFORM_INPUT". This enables the CrossPlatformInput functions defined in some of the other Sample Asset packages (such as the Characters, Planes, etc). Without this symbol defined, those packages use Unity's regular Input class, which means they can be imported alone and still work without the CrossPlatformInput package. + +The optional define (which is set by default, but can be disabled using the "Mobile Input" menu), is "MOBILE_INPUT". This causes the MobileControlRigs to become active when a mobile build target is selected. It also enables certain mobile-specific control nuances in some of the packages, which make more sense when the character or vehicle is being controlled using mobile input (such as auto-leveling the character's look direction). This define is optional because some developers prefer to use standalone input methods instead of the Unity Remote app, when testing mobile apps in the editor's play mode. + diff --git a/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta new file mode 100644 index 00000000..bc74ece8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: a3b997593a4f12c4c991490593f3b513 +TextScriptImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs.meta new file mode 100644 index 00000000..4d92b2eb --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5d3fb8e05edcf4b41aef584ca1b0d06f +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab new file mode 100644 index 00000000..9f5e2f2b --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab @@ -0,0 +1,461 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400002} + - 114: {fileID: 11400000} + m_Layer: 5 + m_Name: CarTiltControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200002} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + m_Layer: 5 + m_Name: LookUpAndDownTouchpad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400000} + - 114: {fileID: 11400012} + m_Layer: 0 + m_Name: TiltSteerInput + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + - 222: {fileID: 22200004} + - 114: {fileID: 11400016} + - 114: {fileID: 11400014} + - 114: {fileID: 11436680} + m_Layer: 5 + m_Name: Brake + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100008 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200000} + - 114: {fileID: 11400006} + - 114: {fileID: 11400004} + - 114: {fileID: 11455192} + m_Layer: 5 + m_Name: Accelerator + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -118.998169, y: -211.682297, z: -502.618439} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 2 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Priority: 3 + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9ab98b66288df7b4fa182075f2f12bd6, type: 3} + m_Name: + m_EditorClassIdentifier: + axisName: Vertical + axisValue: 1 + responseSpeed: 999 + returnToCentreSpeed: 3 +--- !u!114 &11400006 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: f588d850485d0ae479d73cf3bd0b7b00, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1caf40fc8bebb6b43b2550c05ca791d6, type: 3} + m_Name: + m_EditorClassIdentifier: + axesToUse: 0 + controlStyle: 2 + horizontalAxisName: Mouse X + verticalAxisName: Mouse Y + Xsensitivity: 1 + Ysensitivity: 1 +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Horizontal + tiltAroundAxis: 0 + fullTiltAngle: 50 + centreAngleOffset: 0 +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9ab98b66288df7b4fa182075f2f12bd6, type: 3} + m_Name: + m_EditorClassIdentifier: + axisName: Vertical + axisValue: -1 + responseSpeed: 999 + returnToCentreSpeed: 3 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: 827c9cd4a3943534f909ac6473e17288, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11436680 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: 5b1a64ea234fb2343b8d0686c51280de, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: 5b1a64ea234fb2343b8d0686c51280de, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400016} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11455192 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: eb5f6e2757c821940b69cf1456f7865a, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: eb5f6e2757c821940b69cf1456f7865a, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400006} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400006} + - {fileID: 22400004} + - {fileID: 400000} + - {fileID: 22400002} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400000} + m_RootOrder: 3 + m_AnchorMin: {x: .200000003, y: .300000012} + m_AnchorMax: {x: .800000012, y: .800000012} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .0199999996, y: .0299999993} + m_AnchorMax: {x: .0799999982, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + 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: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .920000017, y: .0299999993} + m_AnchorMax: {x: .980000019, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta new file mode 100644 index 00000000..6c763912 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 174090ae7f9eff84abe76f0ff062efac +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab new file mode 100644 index 00000000..50de5213 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab @@ -0,0 +1,578 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400002} + - 114: {fileID: 11400000} + m_Layer: 5 + m_Name: DualTouchControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200002} + - 114: {fileID: 11400006} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + - 222: {fileID: 22200000} + - 114: {fileID: 11400004} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200004} + - 114: {fileID: 11400012} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + m_Layer: 5 + m_Name: Jump + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100008 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400008} + - 222: {fileID: 22200008} + - 114: {fileID: 11400022} + - 114: {fileID: 11400020} + m_Layer: 5 + m_Name: TurnAndLookTouchpad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100010 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400010} + - 222: {fileID: 22200006} + - 114: {fileID: 11400016} + - 114: {fileID: 11400014} + m_Layer: 5 + m_Name: MoveTouchpad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100012 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400012} + - 222: {fileID: 22200010} + - 114: {fileID: 11400026} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Priority: 3 + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .227450982} + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Turn/Look Touch Area +--- !u!114 &11400006 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .227450982} + m_FontData: + m_Font: {fileID: 12800000, guid: b51a3e520f9164da198dc59c8acfccd6, type: 3} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Move Touch Area +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Jump +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1caf40fc8bebb6b43b2550c05ca791d6, type: 3} + m_Name: + m_EditorClassIdentifier: + axesToUse: 0 + controlStyle: 0 + horizontalAxisName: Horizontal + verticalAxisName: Vertical + Xsensitivity: 1 + Ysensitivity: 1 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400020 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1caf40fc8bebb6b43b2550c05ca791d6, type: 3} + m_Name: + m_EditorClassIdentifier: + axesToUse: 0 + controlStyle: 2 + horizontalAxisName: Mouse X + verticalAxisName: Mouse Y + Xsensitivity: 1 + Ysensitivity: 1 +--- !u!114 &11400022 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400026 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .188235298} + m_FontData: + m_Font: {fileID: 12800000, guid: 01cd679a1b9ee48bf9c546f6ce2cb97e, type: 3} + m_FontSize: 26 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: JUMP +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!222 &22200006 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} +--- !u!222 &22200008 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} +--- !u!222 &22200010 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400010} + - {fileID: 22400008} + - {fileID: 22400006} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400010} + m_RootOrder: 0 + m_AnchorMin: {x: .100000001, y: .419999987} + m_AnchorMax: {x: .899999976, y: .579999983} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + 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: 22400008} + m_RootOrder: 0 + m_AnchorMin: {x: .100000001, y: .419999987} + m_AnchorMax: {x: .899999976, y: .579999983} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: + - {fileID: 22400012} + m_Father: {fileID: 22400000} + m_RootOrder: 2 + m_AnchorMin: {x: .540000021, y: .0199999996} + m_AnchorMax: {x: .959999979, y: .170000002} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400008 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + 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: + - {fileID: 22400004} + m_Father: {fileID: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .504999995, y: .200000003} + m_AnchorMax: {x: .99000001, y: .899999976} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400010 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + 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: + - {fileID: 22400002} + m_Father: {fileID: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .00999999978, y: .200000003} + m_AnchorMax: {x: .495000005, y: .899999976} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400012 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + 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: 22400006} + m_RootOrder: 0 + m_AnchorMin: {x: .0500000007, y: .180000007} + m_AnchorMax: {x: .949999988, y: .819999993} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta new file mode 100644 index 00000000..d70a960d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 2169821f0567671499a5c10104c69c24 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab new file mode 100644 index 00000000..caac4186 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab @@ -0,0 +1,972 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400000} + - 114: {fileID: 11400030} + m_Layer: 5 + m_Name: MobileAircraftControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200000} + - 114: {fileID: 11400002} + m_Layer: 5 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + m_Layer: 5 + m_Name: Sliding Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200002} + - 114: {fileID: 11400004} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100008 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400000} + - 114: {fileID: 11400014} + m_Layer: 0 + m_Name: TiltSteerInputH + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100010 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400002} + - 114: {fileID: 11400028} + m_Layer: 0 + m_Name: TiltSteerInputV + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100012 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400008} + - 114: {fileID: 11494550} + - 114: {fileID: 11483774} + m_Layer: 5 + m_Name: Throttle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100014 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400010} + - 222: {fileID: 22200006} + - 114: {fileID: 11400020} + - 114: {fileID: 11400018} + - 114: {fileID: 11400016} + m_Layer: 5 + m_Name: Brake + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100016 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400012} + - 222: {fileID: 22200004} + - 114: {fileID: 11400012} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + - 114: {fileID: 11424508} + m_Layer: 5 + m_Name: Right + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100018 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400014} + - 222: {fileID: 22200008} + - 114: {fileID: 11400026} + - 114: {fileID: 11400024} + - 114: {fileID: 11400022} + - 114: {fileID: 11443148} + m_Layer: 5 + m_Name: Left + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100020 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400016} + - 222: {fileID: 22200010} + - 114: {fileID: 11400032} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -542.68457, y: -205.718719, z: -62.2698517} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 5 +--- !u!4 &400002 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -542.68457, y: -205.718719, z: -62.2698517} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 4 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Priority: 3 + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: ea5873cfd9158664f89459f0c9e1d853, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Horizontal +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetAxisPositiveState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 1 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetAxisNeutralState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .588} + m_Sprite: {fileID: 21300000, guid: 4db017495c69e8140a56a0e2b669e3f8, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Mouse X + tiltAroundAxis: 0 + fullTiltAngle: 50 + centreAngleOffset: 0 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Fire1 +--- !u!114 &11400018 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400016} + m_MethodName: SetAxisPositiveState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 1 + m_FloatArgument: 0 + m_StringArgument: Fire1 + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400016} + m_MethodName: SetAxisNegativeState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Fire1 + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400020 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400022 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Horizontal +--- !u!114 &11400024 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400022} + m_MethodName: SetAxisNegativeState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: -1 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400022} + m_MethodName: SetAxisNeutralState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400026 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .588} + m_Sprite: {fileID: 21300000, guid: 4db017495c69e8140a56a0e2b669e3f8, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400028 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Mouse Y + tiltAroundAxis: 1 + fullTiltAngle: -35 + centreAngleOffset: 45 +--- !u!114 &11400030 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400032 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100020} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .635294139} + m_FontData: + m_Font: {fileID: 12800000, guid: 01cd679a1b9ee48bf9c546f6ce2cb97e, type: 3} + m_FontSize: 26 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: BRAKE +--- !u!114 &11424508 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400012} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11443148 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400026} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11483774 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -2061169968, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 0} + m_HandleRect: {fileID: 22400002} + m_Direction: 2 + m_Value: .5 + m_Size: .200000003 + m_NumberOfSteps: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11494550} + m_MethodName: HandleInput + m_Mode: 0 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.UI.Scrollbar+ScrollEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11494550 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7d3269566d48b8447bb48d2259e28f8b, type: 3} + m_Name: + m_EditorClassIdentifier: + axis: Vertical +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} +--- !u!222 &22200006 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} +--- !u!222 &22200008 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} +--- !u!222 &22200010 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100020} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400014} + - {fileID: 22400012} + - {fileID: 22400010} + - {fileID: 22400008} + - {fileID: 400002} + - {fileID: 400000} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400004} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + 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: + - {fileID: 22400002} + m_Father: {fileID: 22400006} + m_RootOrder: 0 + m_AnchorMin: {x: .0900000036, y: 0} + m_AnchorMax: {x: .870000005, y: 1} + m_AnchoredPosition: {x: 2, y: 0} + m_SizeDelta: {x: -2, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: + - {fileID: 22400004} + m_Father: {fileID: 22400008} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400008 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + 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: + - {fileID: 22400006} + m_Father: {fileID: 22400000} + m_RootOrder: 3 + m_AnchorMin: {x: .0199999996, y: .256999999} + m_AnchorMax: {x: .0799999982, y: .860000014} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400010 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + 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: + - {fileID: 22400016} + m_Father: {fileID: 22400000} + m_RootOrder: 2 + m_AnchorMin: {x: .349999994, y: .0299999993} + m_AnchorMax: {x: .649999976, y: .129999995} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400012 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + 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: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .920000017, y: .0299999993} + m_AnchorMax: {x: .980000019, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400014 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_LocalRotation: {x: 0, y: 0, z: 1, w: -1.62920685e-07} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .0199999996, y: .0299999993} + m_AnchorMax: {x: .0799999982, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400016 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100020} + 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: 22400010} + m_RootOrder: 0 + m_AnchorMin: {x: .0199999996, y: .140000001} + m_AnchorMax: {x: .980000019, y: .860000014} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta new file mode 100644 index 00000000..6576b7ad --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 3369231b1ed7ad34e84d9240a571db81 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab new file mode 100644 index 00000000..1b677f85 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab @@ -0,0 +1,376 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400000} + - 114: {fileID: 11400012} + m_Layer: 5 + m_Name: MobileSingleStickControl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200002} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + m_Layer: 5 + m_Name: MobileJoystick + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + - 222: {fileID: 22200000} + - 114: {fileID: 11400006} + - 114: {fileID: 11400004} + - 114: {fileID: 11400002} + m_Layer: 5 + m_Name: JumpButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200004} + - 114: {fileID: 11400016} + - 114: {fileID: 11400014} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Jump +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400002} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400002} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400006 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 00c3c865782347f41b6358d9fba14b48, type: 3} + m_Name: + m_EditorClassIdentifier: + MovementRange: 100 + axesToUse: 0 + horizontalAxisName: Horizontal + verticalAxisName: Vertical +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: 9866a92691696b346901281f2b329034, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1573420865, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: .125490203} + m_EffectDistance: {x: 2, y: -2} + m_UseGraphicAlpha: 1 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .643137276} + m_FontData: + m_Font: {fileID: 12800000, guid: 01cd679a1b9ee48bf9c546f6ce2cb97e, type: 3} + m_FontSize: 26 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Jump +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400004} + - {fileID: 22400002} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .160000011, y: .200000003} + m_AnchorMax: {x: .160000011, y: .200000003} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 80, y: 80} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + 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: + - {fileID: 22400006} + m_Father: {fileID: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .779999971, y: .00999999978} + m_AnchorMax: {x: .99000001, y: .150000006} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: 22400004} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta new file mode 100644 index 00000000..8d63434e --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 9529ecc3d479da5499993355e6c2cb4f +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab new file mode 100644 index 00000000..5356909b --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab @@ -0,0 +1,144 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400000} + - 114: {fileID: 11400004} + m_Layer: 0 + m_Name: MobileTiltControlRig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400002} + - 114: {fileID: 11400000} + m_Layer: 0 + m_Name: TiltSteerInputH + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400004} + - 114: {fileID: 11400002} + m_Layer: 0 + m_Name: TiltSteerInputV + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 385.509033, y: 268.018066, z: -62.2695312} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 400004} + - {fileID: 400002} + m_Father: {fileID: 0} + m_RootOrder: 0 +--- !u!4 &400002 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -928.193604, y: -473.736786, z: -.00032043457} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 400000} + m_RootOrder: 1 +--- !u!4 &400004 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -928.193604, y: -473.736786, z: -.00032043457} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 400000} + m_RootOrder: 0 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Horizontal + tiltAroundAxis: 0 + fullTiltAngle: 50 + centreAngleOffset: 0 +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Vertical + tiltAroundAxis: 1 + fullTiltAngle: -35 + centreAngleOffset: 45 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta new file mode 100644 index 00000000..271d5a2d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 999388b68bb99b44099461bfbed94358 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts.meta new file mode 100644 index 00000000..5da31e9a --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3f66eeca8ac36914e9ec9a716a9d9f73 +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs new file mode 100644 index 00000000..622138b3 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs @@ -0,0 +1,75 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class AxisTouchButton : MonoBehaviour, IPointerDownHandler, IPointerUpHandler + { + // designed to work in a pair with another axis touch button + // (typically with one having -1 and one having 1 axisValues) + public string axisName = "Horizontal"; // The name of the axis + public float axisValue = 1; // The axis that the value has + public float responseSpeed = 3; // The speed at which the axis touch button responds + public float returnToCentreSpeed = 3; // The speed at which the button will return to its centre + + AxisTouchButton m_PairedWith; // Which button this one is paired with + CrossPlatformInputManager.VirtualAxis m_Axis; // A reference to the virtual axis as it is in the cross platform input + + void OnEnable() + { + if (!CrossPlatformInputManager.AxisExists(axisName)) + { + // if the axis doesnt exist create a new one in cross platform input + m_Axis = new CrossPlatformInputManager.VirtualAxis(axisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_Axis); + } + else + { + m_Axis = CrossPlatformInputManager.VirtualAxisReference(axisName); + } + FindPairedButton(); + } + + void FindPairedButton() + { + // find the other button witch which this button should be paired + // (it should have the same axisName) + var otherAxisButtons = FindObjectsOfType(typeof(AxisTouchButton)) as AxisTouchButton[]; + + if (otherAxisButtons != null) + { + for (int i = 0; i < otherAxisButtons.Length; i++) + { + if (otherAxisButtons[i].axisName == axisName && otherAxisButtons[i] != this) + { + m_PairedWith = otherAxisButtons[i]; + } + } + } + } + + void OnDisable() + { + // The object is disabled so remove it from the cross platform input system + m_Axis.Remove(); + } + + + public void OnPointerDown(PointerEventData data) + { + if (m_PairedWith == null) + { + FindPairedButton(); + } + // update the axis and record that the button has been pressed this frame + m_Axis.Update(Mathf.MoveTowards(m_Axis.GetValue, axisValue, responseSpeed * Time.deltaTime)); + } + + + public void OnPointerUp(PointerEventData data) + { + m_Axis.Update(Mathf.MoveTowards(m_Axis.GetValue, 0, responseSpeed * Time.deltaTime)); + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta new file mode 100644 index 00000000..241497f0 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9ab98b66288df7b4fa182075f2f12bd6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs new file mode 100644 index 00000000..3b48f25b --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs @@ -0,0 +1,50 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class ButtonHandler : MonoBehaviour + { + + public string Name; + + void OnEnable() + { + + } + + public void SetDownState() + { + CrossPlatformInputManager.SetButtonDown(Name); + } + + + public void SetUpState() + { + CrossPlatformInputManager.SetButtonUp(Name); + } + + + public void SetAxisPositiveState() + { + CrossPlatformInputManager.SetAxisPositive(Name); + } + + + public void SetAxisNeutralState() + { + CrossPlatformInputManager.SetAxisZero(Name); + } + + + public void SetAxisNegativeState() + { + CrossPlatformInputManager.SetAxisNegative(Name); + } + + public void Update() + { + + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta new file mode 100644 index 00000000..1aadb06d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 85bf3be603548374ca46f521a3aa7fda +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs new file mode 100644 index 00000000..9d368c8a --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs @@ -0,0 +1,318 @@ +using System; +using UnityEngine; +using UnityStandardAssets.CrossPlatformInput.PlatformSpecific; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public static class CrossPlatformInputManager + { + public enum ActiveInputMethod + { + Hardware, + Touch + } + + + private static VirtualInput activeInput; + + private static VirtualInput s_TouchInput; + private static VirtualInput s_HardwareInput; + + + static CrossPlatformInputManager() + { + s_TouchInput = new MobileInput(); + s_HardwareInput = new StandaloneInput(); +#if MOBILE_INPUT + activeInput = s_TouchInput; +#else + activeInput = s_HardwareInput; +#endif + } + + public static void SwitchActiveInputMethod(ActiveInputMethod activeInputMethod) + { + switch (activeInputMethod) + { + case ActiveInputMethod.Hardware: + activeInput = s_HardwareInput; + break; + + case ActiveInputMethod.Touch: + activeInput = s_TouchInput; + break; + } + } + + public static bool AxisExists(string name) + { + return activeInput.AxisExists(name); + } + + public static bool ButtonExists(string name) + { + return activeInput.ButtonExists(name); + } + + public static void RegisterVirtualAxis(VirtualAxis axis) + { + activeInput.RegisterVirtualAxis(axis); + } + + + public static void RegisterVirtualButton(VirtualButton button) + { + activeInput.RegisterVirtualButton(button); + } + + + public static void UnRegisterVirtualAxis(string name) + { + if (name == null) + { + throw new ArgumentNullException("name"); + } + activeInput.UnRegisterVirtualAxis(name); + } + + + public static void UnRegisterVirtualButton(string name) + { + activeInput.UnRegisterVirtualButton(name); + } + + + // returns a reference to a named virtual axis if it exists otherwise null + public static VirtualAxis VirtualAxisReference(string name) + { + return activeInput.VirtualAxisReference(name); + } + + + // returns the platform appropriate axis for the given name + public static float GetAxis(string name) + { + return GetAxis(name, false); + } + + + public static float GetAxisRaw(string name) + { + return GetAxis(name, true); + } + + + // private function handles both types of axis (raw and not raw) + private static float GetAxis(string name, bool raw) + { + return activeInput.GetAxis(name, raw); + } + + + // -- Button handling -- + public static bool GetButton(string name) + { + return activeInput.GetButton(name); + } + + + public static bool GetButtonDown(string name) + { + return activeInput.GetButtonDown(name); + } + + + public static bool GetButtonUp(string name) + { + return activeInput.GetButtonUp(name); + } + + + public static void SetButtonDown(string name) + { + activeInput.SetButtonDown(name); + } + + + public static void SetButtonUp(string name) + { + activeInput.SetButtonUp(name); + } + + + public static void SetAxisPositive(string name) + { + activeInput.SetAxisPositive(name); + } + + + public static void SetAxisNegative(string name) + { + activeInput.SetAxisNegative(name); + } + + + public static void SetAxisZero(string name) + { + activeInput.SetAxisZero(name); + } + + + public static void SetAxis(string name, float value) + { + activeInput.SetAxis(name, value); + } + + + public static Vector3 mousePosition + { + get { return activeInput.MousePosition(); } + } + + + public static void SetVirtualMousePositionX(float f) + { + activeInput.SetVirtualMousePositionX(f); + } + + + public static void SetVirtualMousePositionY(float f) + { + activeInput.SetVirtualMousePositionY(f); + } + + + public static void SetVirtualMousePositionZ(float f) + { + activeInput.SetVirtualMousePositionZ(f); + } + + + // virtual axis and button classes - applies to mobile input + // Can be mapped to touch joysticks, tilt, gyro, etc, depending on desired implementation. + // Could also be implemented by other input devices - kinect, electronic sensors, etc + public class VirtualAxis + { + public string name { get; private set; } + private float m_Value; + public bool matchWithInputManager { get; private set; } + + + public VirtualAxis(string name) + : this(name, true) + { + } + + + public VirtualAxis(string name, bool matchToInputSettings) + { + this.name = name; + matchWithInputManager = matchToInputSettings; + } + + + // removes an axes from the cross platform input system + public void Remove() + { + UnRegisterVirtualAxis(name); + } + + + // a controller gameobject (eg. a virtual thumbstick) should update this class + public void Update(float value) + { + m_Value = value; + } + + + public float GetValue + { + get { return m_Value; } + } + + + public float GetValueRaw + { + get { return m_Value; } + } + } + + // a controller gameobject (eg. a virtual GUI button) should call the + // 'pressed' function of this class. Other objects can then read the + // Get/Down/Up state of this button. + public class VirtualButton + { + public string name { get; private set; } + public bool matchWithInputManager { get; private set; } + + private int m_LastPressedFrame = -5; + private int m_ReleasedFrame = -5; + private bool m_Pressed; + + + public VirtualButton(string name) + : this(name, true) + { + } + + + public VirtualButton(string name, bool matchToInputSettings) + { + this.name = name; + matchWithInputManager = matchToInputSettings; + } + + + // A controller gameobject should call this function when the button is pressed down + public void Pressed() + { + if (m_Pressed) + { + return; + } + m_Pressed = true; + m_LastPressedFrame = Time.frameCount; + } + + + // A controller gameobject should call this function when the button is released + public void Released() + { + m_Pressed = false; + m_ReleasedFrame = Time.frameCount; + } + + + // the controller gameobject should call Remove when the button is destroyed or disabled + public void Remove() + { + UnRegisterVirtualButton(name); + } + + + // these are the states of the button which can be read via the cross platform input system + public bool GetButton + { + get { return m_Pressed; } + } + + + public bool GetButtonDown + { + get + { + return m_LastPressedFrame - Time.frameCount == -1; + } + } + + + public bool GetButtonUp + { + get + { + return (m_ReleasedFrame == Time.frameCount - 1); + } + } + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta new file mode 100644 index 00000000..ea900aa2 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6ac1ce5a5adfd9f46adbf5b6f752a47c +labels: +- Done +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: -1010 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs new file mode 100644 index 00000000..c524fc25 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs @@ -0,0 +1,17 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class InputAxisScrollbar : MonoBehaviour + { + public string axis; + + void Update() { } + + public void HandleInput(float value) + { + CrossPlatformInputManager.SetAxis(axis, (value*2f) - 1f); + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta new file mode 100644 index 00000000..956782c7 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 7d3269566d48b8447bb48d2259e28f8b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs new file mode 100644 index 00000000..b01f5ef8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs @@ -0,0 +1,118 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class Joystick : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler + { + public enum AxisOption + { + // Options for which axes to use + Both, // Use both + OnlyHorizontal, // Only horizontal + OnlyVertical // Only vertical + } + + public int MovementRange = 100; + public AxisOption axesToUse = AxisOption.Both; // The options for the axes that the still will use + public string horizontalAxisName = "Horizontal"; // The name given to the horizontal axis for the cross platform input + public string verticalAxisName = "Vertical"; // The name given to the vertical axis for the cross platform input + + Vector3 m_StartPos; + bool m_UseX; // Toggle for using the x axis + bool m_UseY; // Toggle for using the Y axis + CrossPlatformInputManager.VirtualAxis m_HorizontalVirtualAxis; // Reference to the joystick in the cross platform input + CrossPlatformInputManager.VirtualAxis m_VerticalVirtualAxis; // Reference to the joystick in the cross platform input + + void OnEnable() + { + CreateVirtualAxes(); + } + + void Start() + { + m_StartPos = transform.position; + } + + void UpdateVirtualAxes(Vector3 value) + { + var delta = m_StartPos - value; + delta.y = -delta.y; + delta /= MovementRange; + if (m_UseX) + { + m_HorizontalVirtualAxis.Update(-delta.x); + } + + if (m_UseY) + { + m_VerticalVirtualAxis.Update(delta.y); + } + } + + void CreateVirtualAxes() + { + // set axes to use + m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal); + m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical); + + // create new axes based on axes to use + if (m_UseX) + { + m_HorizontalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(horizontalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); + } + if (m_UseY) + { + m_VerticalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(verticalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); + } + } + + + public void OnDrag(PointerEventData data) + { + Vector3 newPos = Vector3.zero; + + if (m_UseX) + { + int delta = (int)(data.position.x - m_StartPos.x); + delta = Mathf.Clamp(delta, - MovementRange, MovementRange); + newPos.x = delta; + } + + if (m_UseY) + { + int delta = (int)(data.position.y - m_StartPos.y); + delta = Mathf.Clamp(delta, -MovementRange, MovementRange); + newPos.y = delta; + } + transform.position = new Vector3(m_StartPos.x + newPos.x, m_StartPos.y + newPos.y, m_StartPos.z + newPos.z); + UpdateVirtualAxes(transform.position); + } + + + public void OnPointerUp(PointerEventData data) + { + transform.position = m_StartPos; + UpdateVirtualAxes(m_StartPos); + } + + + public void OnPointerDown(PointerEventData data) { } + + void OnDisable() + { + // remove the joysticks from the cross platform input + if (m_UseX) + { + m_HorizontalVirtualAxis.Remove(); + } + if (m_UseY) + { + m_VerticalVirtualAxis.Remove(); + } + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta new file mode 100644 index 00000000..aaac7672 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 00c3c865782347f41b6358d9fba14b48 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs new file mode 100644 index 00000000..b3520837 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs @@ -0,0 +1,102 @@ +using System; +#if UNITY_EDITOR +using UnityEditor; +#endif +using UnityEngine; + + +namespace UnityStandardAssets.CrossPlatformInput +{ + [ExecuteInEditMode] + public class MobileControlRig : MonoBehaviour +#if UNITY_EDITOR + , UnityEditor.Build.IActiveBuildTargetChanged +#endif + { + // this script enables or disables the child objects of a control rig + // depending on whether the USE_MOBILE_INPUT define is declared. + + // This define is set or unset by a menu item that is included with + // the Cross Platform Input package. + + +#if !UNITY_EDITOR + void OnEnable() + { + CheckEnableControlRig(); + } +#else + public int callbackOrder + { + get + { + return 1; + } + } +#endif + + private void Start() + { +#if UNITY_EDITOR + if (Application.isPlaying) //if in the editor, need to check if we are playing, as start is also called just after exiting play +#endif + { + UnityEngine.EventSystems.EventSystem system = GameObject.FindObjectOfType(); + + if (system == null) + {//the scene have no event system, spawn one + GameObject o = new GameObject("EventSystem"); + + o.AddComponent(); + o.AddComponent(); + } + } + } + +#if UNITY_EDITOR + + private void OnEnable() + { + EditorApplication.update += Update; + } + + + private void OnDisable() + { + EditorApplication.update -= Update; + } + + + private void Update() + { + CheckEnableControlRig(); + } +#endif + + + private void CheckEnableControlRig() + { +#if MOBILE_INPUT + EnableControlRig(true); + #else + EnableControlRig(false); +#endif + } + + + private void EnableControlRig(bool enabled) + { + foreach (Transform t in transform) + { + t.gameObject.SetActive(enabled); + } + } + +#if UNITY_EDITOR + public void OnActiveBuildTargetChanged(BuildTarget previousTarget, BuildTarget newTarget) + { + CheckEnableControlRig(); + } +#endif + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta new file mode 100644 index 00000000..0ee49e89 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 71398ce7fbc3a5b4fa50b50bd54317a7 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta new file mode 100644 index 00000000..f88be49e --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0bc72db1e9dcb9647818df5a07871127 +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs new file mode 100644 index 00000000..0416715e --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs @@ -0,0 +1,133 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput.PlatformSpecific +{ + public class MobileInput : VirtualInput + { + private void AddButton(string name) + { + // we have not registered this button yet so add it, happens in the constructor + CrossPlatformInputManager.RegisterVirtualButton(new CrossPlatformInputManager.VirtualButton(name)); + } + + + private void AddAxes(string name) + { + // we have not registered this button yet so add it, happens in the constructor + CrossPlatformInputManager.RegisterVirtualAxis(new CrossPlatformInputManager.VirtualAxis(name)); + } + + + public override float GetAxis(string name, bool raw) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + return m_VirtualAxes[name].GetValue; + } + + + public override void SetButtonDown(string name) + { + if (!m_VirtualButtons.ContainsKey(name)) + { + AddButton(name); + } + m_VirtualButtons[name].Pressed(); + } + + + public override void SetButtonUp(string name) + { + if (!m_VirtualButtons.ContainsKey(name)) + { + AddButton(name); + } + m_VirtualButtons[name].Released(); + } + + + public override void SetAxisPositive(string name) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(1f); + } + + + public override void SetAxisNegative(string name) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(-1f); + } + + + public override void SetAxisZero(string name) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(0f); + } + + + public override void SetAxis(string name, float value) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(value); + } + + + public override bool GetButtonDown(string name) + { + if (m_VirtualButtons.ContainsKey(name)) + { + return m_VirtualButtons[name].GetButtonDown; + } + + AddButton(name); + return m_VirtualButtons[name].GetButtonDown; + } + + + public override bool GetButtonUp(string name) + { + if (m_VirtualButtons.ContainsKey(name)) + { + return m_VirtualButtons[name].GetButtonUp; + } + + AddButton(name); + return m_VirtualButtons[name].GetButtonUp; + } + + + public override bool GetButton(string name) + { + if (m_VirtualButtons.ContainsKey(name)) + { + return m_VirtualButtons[name].GetButton; + } + + AddButton(name); + return m_VirtualButtons[name].GetButton; + } + + + public override Vector3 MousePosition() + { + return virtualMousePosition; + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta new file mode 100644 index 00000000..e0ffb749 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9703d53e47195aa4190acd11369ccd1b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs new file mode 100644 index 00000000..374a1f5d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs @@ -0,0 +1,79 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput.PlatformSpecific +{ + public class StandaloneInput : VirtualInput + { + public override float GetAxis(string name, bool raw) + { + return raw ? Input.GetAxisRaw(name) : Input.GetAxis(name); + } + + + public override bool GetButton(string name) + { + return Input.GetButton(name); + } + + + public override bool GetButtonDown(string name) + { + return Input.GetButtonDown(name); + } + + + public override bool GetButtonUp(string name) + { + return Input.GetButtonUp(name); + } + + + public override void SetButtonDown(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetButtonUp(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxisPositive(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxisNegative(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxisZero(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxis(string name, float value) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override Vector3 MousePosition() + { + return Input.mousePosition; + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta new file mode 100644 index 00000000..d4c99a61 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9961032f4f02c4f41997c3ea399d2f22 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs new file mode 100644 index 00000000..658fddd8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs @@ -0,0 +1,145 @@ +using System; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace UnityStandardAssets.CrossPlatformInput +{ + // helps with managing tilt input on mobile devices + public class TiltInput : MonoBehaviour + { + // options for the various orientations + public enum AxisOptions + { + ForwardAxis, + SidewaysAxis, + } + + + [Serializable] + public class AxisMapping + { + public enum MappingType + { + NamedAxis, + MousePositionX, + MousePositionY, + MousePositionZ + }; + + + public MappingType type; + public string axisName; + } + + + public AxisMapping mapping; + public AxisOptions tiltAroundAxis = AxisOptions.ForwardAxis; + public float fullTiltAngle = 25; + public float centreAngleOffset = 0; + + + private CrossPlatformInputManager.VirtualAxis m_SteerAxis; + + + private void OnEnable() + { + if (mapping.type == AxisMapping.MappingType.NamedAxis) + { + m_SteerAxis = new CrossPlatformInputManager.VirtualAxis(mapping.axisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_SteerAxis); + } + } + + + private void Update() + { + float angle = 0; + if (Input.acceleration != Vector3.zero) + { + switch (tiltAroundAxis) + { + case AxisOptions.ForwardAxis: + angle = Mathf.Atan2(Input.acceleration.x, -Input.acceleration.y)*Mathf.Rad2Deg + + centreAngleOffset; + break; + case AxisOptions.SidewaysAxis: + angle = Mathf.Atan2(Input.acceleration.z, -Input.acceleration.y)*Mathf.Rad2Deg + + centreAngleOffset; + break; + } + } + + float axisValue = Mathf.InverseLerp(-fullTiltAngle, fullTiltAngle, angle)*2 - 1; + switch (mapping.type) + { + case AxisMapping.MappingType.NamedAxis: + m_SteerAxis.Update(axisValue); + break; + case AxisMapping.MappingType.MousePositionX: + CrossPlatformInputManager.SetVirtualMousePositionX(axisValue*Screen.width); + break; + case AxisMapping.MappingType.MousePositionY: + CrossPlatformInputManager.SetVirtualMousePositionY(axisValue*Screen.width); + break; + case AxisMapping.MappingType.MousePositionZ: + CrossPlatformInputManager.SetVirtualMousePositionZ(axisValue*Screen.width); + break; + } + } + + + private void OnDisable() + { + m_SteerAxis.Remove(); + } + } +} + + +namespace UnityStandardAssets.CrossPlatformInput.Inspector +{ +#if UNITY_EDITOR + [CustomPropertyDrawer(typeof (TiltInput.AxisMapping))] + public class TiltInputAxisStylePropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + EditorGUI.BeginProperty(position, label, property); + + float x = position.x; + float y = position.y; + float inspectorWidth = position.width; + + // Don't make child fields be indented + var indent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + var props = new[] {"type", "axisName"}; + var widths = new[] {.4f, .6f}; + if (property.FindPropertyRelative("type").enumValueIndex > 0) + { + // hide name if not a named axis + props = new[] {"type"}; + widths = new[] {1f}; + } + const float lineHeight = 18; + for (int n = 0; n < props.Length; ++n) + { + float w = widths[n]*inspectorWidth; + + // Calculate rects + Rect rect = new Rect(x, y, w, lineHeight); + x += w; + + EditorGUI.PropertyField(rect, property.FindPropertyRelative(props[n]), GUIContent.none); + } + + // Set indent back to what it was + EditorGUI.indentLevel = indent; + EditorGUI.EndProperty(); + } + } +#endif +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta new file mode 100644 index 00000000..93f79bf1 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 5c2d84226fbbaf94e9c1451f1c39b06a +labels: +- Not +- Fully +- Implemented +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: -1001 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs new file mode 100644 index 00000000..4012331e --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs @@ -0,0 +1,156 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI; + +namespace UnityStandardAssets.CrossPlatformInput +{ + [RequireComponent(typeof(Image))] + public class TouchPad : MonoBehaviour, IPointerDownHandler, IPointerUpHandler + { + // Options for which axes to use + public enum AxisOption + { + Both, // Use both + OnlyHorizontal, // Only horizontal + OnlyVertical // Only vertical + } + + + public enum ControlStyle + { + Absolute, // operates from teh center of the image + Relative, // operates from the center of the initial touch + Swipe, // swipe to touch touch no maintained center + } + + + public AxisOption axesToUse = AxisOption.Both; // The options for the axes that the still will use + public ControlStyle controlStyle = ControlStyle.Absolute; // control style to use + public string horizontalAxisName = "Horizontal"; // The name given to the horizontal axis for the cross platform input + public string verticalAxisName = "Vertical"; // The name given to the vertical axis for the cross platform input + public float Xsensitivity = 1f; + public float Ysensitivity = 1f; + + Vector3 m_StartPos; + Vector2 m_PreviousDelta; + Vector3 m_JoytickOutput; + bool m_UseX; // Toggle for using the x axis + bool m_UseY; // Toggle for using the Y axis + CrossPlatformInputManager.VirtualAxis m_HorizontalVirtualAxis; // Reference to the joystick in the cross platform input + CrossPlatformInputManager.VirtualAxis m_VerticalVirtualAxis; // Reference to the joystick in the cross platform input + bool m_Dragging; + int m_Id = -1; + Vector2 m_PreviousTouchPos; // swipe style control touch + + +#if !UNITY_EDITOR + private Vector3 m_Center; + private Image m_Image; +#else + Vector3 m_PreviousMouse; +#endif + + void OnEnable() + { + CreateVirtualAxes(); + } + + void Start() + { +#if !UNITY_EDITOR + m_Image = GetComponent(); + m_Center = m_Image.transform.position; +#endif + } + + void CreateVirtualAxes() + { + // set axes to use + m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal); + m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical); + + // create new axes based on axes to use + if (m_UseX) + { + m_HorizontalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(horizontalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); + } + if (m_UseY) + { + m_VerticalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(verticalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); + } + } + + void UpdateVirtualAxes(Vector3 value) + { + value = value.normalized; + if (m_UseX) + { + m_HorizontalVirtualAxis.Update(value.x); + } + + if (m_UseY) + { + m_VerticalVirtualAxis.Update(value.y); + } + } + + + public void OnPointerDown(PointerEventData data) + { + m_Dragging = true; + m_Id = data.pointerId; +#if !UNITY_EDITOR + if (controlStyle != ControlStyle.Absolute ) + m_Center = data.position; +#endif + } + + void Update() + { + if (!m_Dragging) + { + return; + } + if (Input.touchCount >= m_Id + 1 && m_Id != -1) + { +#if !UNITY_EDITOR + + if (controlStyle == ControlStyle.Swipe) + { + m_Center = m_PreviousTouchPos; + m_PreviousTouchPos = Input.touches[m_Id].position; + } + Vector2 pointerDelta = new Vector2(Input.touches[m_Id].position.x - m_Center.x , Input.touches[m_Id].position.y - m_Center.y).normalized; + pointerDelta.x *= Xsensitivity; + pointerDelta.y *= Ysensitivity; +#else + Vector2 pointerDelta; + pointerDelta.x = Input.mousePosition.x - m_PreviousMouse.x; + pointerDelta.y = Input.mousePosition.y - m_PreviousMouse.y; + m_PreviousMouse = new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0f); +#endif + UpdateVirtualAxes(new Vector3(pointerDelta.x, pointerDelta.y, 0)); + } + } + + + public void OnPointerUp(PointerEventData data) + { + m_Dragging = false; + m_Id = -1; + UpdateVirtualAxes(Vector3.zero); + } + + void OnDisable() + { + if (CrossPlatformInputManager.AxisExists(horizontalAxisName)) + CrossPlatformInputManager.UnRegisterVirtualAxis(horizontalAxisName); + + if (CrossPlatformInputManager.AxisExists(verticalAxisName)) + CrossPlatformInputManager.UnRegisterVirtualAxis(verticalAxisName); + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta new file mode 100644 index 00000000..0b176aa6 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1caf40fc8bebb6b43b2550c05ca791d6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs new file mode 100644 index 00000000..5ffec5a4 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs @@ -0,0 +1,134 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + + +namespace UnityStandardAssets.CrossPlatformInput +{ + public abstract class VirtualInput + { + public Vector3 virtualMousePosition { get; private set; } + + + protected Dictionary m_VirtualAxes = + new Dictionary(); + // Dictionary to store the name relating to the virtual axes + protected Dictionary m_VirtualButtons = + new Dictionary(); + protected List m_AlwaysUseVirtual = new List(); + // list of the axis and button names that have been flagged to always use a virtual axis or button + + + public bool AxisExists(string name) + { + return m_VirtualAxes.ContainsKey(name); + } + + public bool ButtonExists(string name) + { + return m_VirtualButtons.ContainsKey(name); + } + + + public void RegisterVirtualAxis(CrossPlatformInputManager.VirtualAxis axis) + { + // check if we already have an axis with that name and log and error if we do + if (m_VirtualAxes.ContainsKey(axis.name)) + { + Debug.LogError("There is already a virtual axis named " + axis.name + " registered."); + } + else + { + // add any new axes + m_VirtualAxes.Add(axis.name, axis); + + // if we dont want to match with the input manager setting then revert to always using virtual + if (!axis.matchWithInputManager) + { + m_AlwaysUseVirtual.Add(axis.name); + } + } + } + + + public void RegisterVirtualButton(CrossPlatformInputManager.VirtualButton button) + { + // check if already have a buttin with that name and log an error if we do + if (m_VirtualButtons.ContainsKey(button.name)) + { + Debug.LogError("There is already a virtual button named " + button.name + " registered."); + } + else + { + // add any new buttons + m_VirtualButtons.Add(button.name, button); + + // if we dont want to match to the input manager then always use a virtual axis + if (!button.matchWithInputManager) + { + m_AlwaysUseVirtual.Add(button.name); + } + } + } + + + public void UnRegisterVirtualAxis(string name) + { + // if we have an axis with that name then remove it from our dictionary of registered axes + if (m_VirtualAxes.ContainsKey(name)) + { + m_VirtualAxes.Remove(name); + } + } + + + public void UnRegisterVirtualButton(string name) + { + // if we have a button with this name then remove it from our dictionary of registered buttons + if (m_VirtualButtons.ContainsKey(name)) + { + m_VirtualButtons.Remove(name); + } + } + + + // returns a reference to a named virtual axis if it exists otherwise null + public CrossPlatformInputManager.VirtualAxis VirtualAxisReference(string name) + { + return m_VirtualAxes.ContainsKey(name) ? m_VirtualAxes[name] : null; + } + + + public void SetVirtualMousePositionX(float f) + { + virtualMousePosition = new Vector3(f, virtualMousePosition.y, virtualMousePosition.z); + } + + + public void SetVirtualMousePositionY(float f) + { + virtualMousePosition = new Vector3(virtualMousePosition.x, f, virtualMousePosition.z); + } + + + public void SetVirtualMousePositionZ(float f) + { + virtualMousePosition = new Vector3(virtualMousePosition.x, virtualMousePosition.y, f); + } + + + public abstract float GetAxis(string name, bool raw); + + public abstract bool GetButton(string name); + public abstract bool GetButtonDown(string name); + public abstract bool GetButtonUp(string name); + + public abstract void SetButtonDown(string name); + public abstract void SetButtonUp(string name); + public abstract void SetAxisPositive(string name); + public abstract void SetAxisNegative(string name); + public abstract void SetAxisZero(string name); + public abstract void SetAxis(string name, float value); + public abstract Vector3 MousePosition(); + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta new file mode 100644 index 00000000..8f6c44d1 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0f57aeb1b8dce3342bea5c28ac17db24 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites.meta new file mode 100644 index 00000000..ea48469d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1835e4537efbdd94b93c2dd136860f1d +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..ebf8eddcb2bb49819fcd8db35e63830df2ef5282 GIT binary patch literal 10618 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta new file mode 100644 index 00000000..1ec1baac --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: f588d850485d0ae479d73cf3bd0b7b00 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..e8d1848506019b900b22339e49bcf0e3c1d31bc3 GIT binary patch literal 8229 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta new file mode 100644 index 00000000..8af76bc5 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 49b611e658efbf443b686a4036f74fe3 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..11b1e8c90416382b12472be09e9b90d0cc1653a8 GIT binary patch literal 8376 zcmaJ{cRbbq{{Nig$T8xWQR0{p#~#Nxh+}0WBtqt~!og8S;*c33N;Z+bC1htLWzR%5 ziR@#q-|2h5-}}3N+{Zote8&4Vp0D|Ne?G4hp{J{Uk>WB1000*?HPHG103x1(0O$qc z!OSDyj(A}4R5kWAz}k6wS$SZ98@5<$3|!O2${wSSv9k4X@50Cf07wwiyM&}0OS?D-K=aLU_9a07<)%o6z4{LGbh~97R7m2Qb$C`O$FoNsNw5@ zG4RzjwDEmlBV)^{r~sGumL&>s!FXE1yUBoLCr-P@bo2;;~mzS52m$(qt!(LcaMn*_bl!ClTqtOmK12(fPMvSKQx@BDzf2+saK?R7gbF z#pRD(e^KK+^)des@?eiAHe}SA=XGZDldGlGf6aQep^>jqa*`77#hzPpaDwpcG5|DQ1Z%W5>n z!|@TuR?P$J0{_d;vX1`+gPpB}jjffm48q1nQUYNuA|ZmXvbB{)Sc^)FOJGFBr9`d7 zIsfLj{SW{BD^H1ch<3RB14mZI4k?Ne6Bj{9*@;UcL`5+~kv7s22&A;Fh?R{9MiL_` z%_&TTDEudN{v(zCxkb#+Kd1jL4C2MVOAF<S1j*;bd37e78oB44 zk&#X>Ix$#oBE&Ww0){4vjN`Sf)ZCBStA*})&ymo+p(w2uDyr5$D(Ulgdd*NSzcrxj z(qVMe#SKzURE54%f(9}KDrqP$z2Kf!*tj3u%GLIGf6A-x$@%oXQag=060+|JnMzGa?oJC=U~0Qv1(aY5^LBlTGso<3z)pADvguR#uFdM# z(bMX;G22@|7X5@TpdFn%$D=E9Dv^eq-Y}rQ+?Hl`6{zNLu5fDIx1&rb=HWcNRT$(J z>>_MR5vfcXL#9C!KP4TS?|FE_0P6=GeooH%Ds zM-C+m;m-PNa7txHHaaMNB(90n;@UgZ7pdr%T{3RcS<uGM&3{`1A}5Ef2C~i zidO&p_UTVD~y`OiMeYI7?C z-3bS%gCp>Sr+(8%l2h0NTBFJ*-O6qk*73l>^Ma}!R$*Gua0Po&zA!mB zpvK)~>@A++B4jFnY-g~oK-ignQjR6@QUVAXCu9e*89kpynW;s2a-4Om_f4RKv(!*L zQ-rY5d}G%h!{Nrh@2_-h^?PSZ6KHhHRTyxK&O)&HN#vRdchj(PdFa|zrl5E?GDxOE z#I%miNr8r+7Wqe~JJ8-%BCS^h``U^a-MHqsEM;++vE6UCi@$zXJ3|4;%#zWBj5Btq zQ(cVvf>dk%f_Nh z4mIX@z*ugJWMut}v)ayk{i6#*W#b!a%0docRLg(M~It9|5!+@}N0{qhfTcc#@dlzymp{ef*0poo$Ak08;K_+N{ z>^^M6H}s`_SDbMf*^JvW>>+!_DXdSpKeq4N{e>wdwoqV6$G^h;CuOye_x(WXRQt!@ zDXv5nOGDg{0fo`yu_sExb+zfDizaQb7VZdPyS?dai^mFp8V6Hc&+GRJZzMwjYWpiq zXYnEfWPVSPYs)N5f!a{~Ru_BcnDF@bc^Qbp0_ViMAUI5v%+hRIv3JZ|!`~A8y*^!a zG3jNr5_!A@!ve!%dh*OT3GbVT)g;4ooq||%5dQQ zwdTY%i;x8}CdR-!E8^53xA+rlCVjt^HfP21>wR_U?u#a2z+|BD!qbhDmX&V9jE4r6 z(S7(YbYF73rSR+=OcaQn5ewJ!hrk!!XYXwnkAi{8=g7x1{7iwur+0yuh(_zX>{5F` zz}rNZMB!?>%MRvK_ly+P z5pQS2`x<;^DjFMD_(TPISrSw9;slULv@4w)@HsA@QUPwaUYR}yZAN(yexPddS0N^( zv_;3|pRjgXAcmGyb>5rLO+TFj-^TC1(W&7NH1M{+(z>bZsLPe+>PuaB_MM)dRhzuT z^ma`+)M<$OMA6rU6vOB#q?oaXG0#p@Rdq|)4Fz-NF{K0$lj70BDtT*r25&e|ytwS6 z%nZW1=IKQBo0*n63&_t>i@bm|8Lh9kGTsb-xrrRO99{-~LR5d_D+itp45wD{rrO$$ zCR0&a?noCU7;4ivjZKOp5K9Zweo|>h={Iv8ei)lIJT&P8i;OpbXWVobR@K_Oa9|ng z4TW!!cAq-*-|4yJ>Y;$HpO)Z!LZz3Q{Uz0jyH2nKm2H%pGq{(a6EL=i| zgbj7lcMde@UY&LGiMWl^p|AP{LZ%M*>DWXn`CaZM`S`JFw@bYMM`<&8_l~&^uEseV zGi@HUvxxr9@VmDW@BEGcFmWEDerC_AP-*$!(6fX$z7~l~kBBDHa0f}qnzkIX;oHWa zm*sWfLTV*a&)0@hm`*IqZ=J1A4(cawFRICMJaT zPiWbI`3qpKOPoH(-j%nMir89AiAEpzjP>Sf_}`c|Dp`(y(UxxlDD$&`ruM+{mw=p> zYr5OJv5u!li7WnUkJixwb7Wj1+gruSkrya|ffVoK$De}3nTEx`_=#^C`0i(Q(Cn(> z7gk9d9E*ufmL?YY4d&fWZ!Vj(H+7#)0)KyFl<`JfWZrP9L@}8NJ2s#%!sSVG!3K7A zQ{6#rLJIoQtPy`mEPyutqf)7ZNt~~0(qmAxF&|+z5#lShtpL$tb9QoFnIcK-8D&1( ziwbLP%~wr4q*0@wA1O@8OWy=>nyBAg{$@!wy1})TM zT9r98!$5%#J$1zoblT%119X@MX)!Ts@s+hXQ{rLwt;TUTN>j z<~wl|$+G=+)D@rKs5+IN_wJqJ;8B^|N-UOElTGK5sq2%UKq%+oleU3Mv7=v0h?jTo z*+uLTqM~z0veoB?Ii~3{mpmK80F_zs>59h8Si1`7OOu5XnYSvB@9k>HgI7)AfLH~u zTo{wHR_;pjWv!~85s7Ssyjo+(D1o@~pksyv9H!??o4-}9-@liO5+`dPEVHTODsQri zt>@%e_XVs`*QleU$+0=PFXsDif35m?S7qMuQP?AB@m6r*2lG6DDzHp@Z%N)Wu}MDO zE}}ZzAZ$vDS+ftV&QbnJ{H+2QADB#@RQ;HJt=YSa&c%_HRXgCaVklj*q>ANpo@(Oy z&KsTZeBP7!l8IlQy3st}>BnnDWlSK}Z6e<#Vw>Jm66^P7edhW*P1;CD|LqZ@Izjh4 zvlG9V2ZGMTTqPbl4nsdmhE6#}ProCB?|Ec3#Ye~(-@Dlt@IGYwYjK5MKDNk+(Dm8M zn9r8#BazAgIQpo*WRLR)H8$`>e8C!;WTCj^ys{X#kPkn@k4AU_=5wvql_C>@?>04m z3=6LF}#Ek>5r;*ff=7JQ-R8vh1rnkl-_&Ut>ypGghuuL)bIsQ!M-@y7OJHh zM{~8-Z=7z8{NGJT2WGYwp^rN)Wdo+p=y31rl5<^ja^HRUkl=9ZEAMQTQ>*a`V^AT% zcMl8)nC1*sNp&U~UR6GOh8Rc}qNOGLs)YzLh-m=js$aps5khZRQfl<9LL{kKBV2wY zr)G!F4s*CT{?r9T&T61@-zt1eKxJWi0o` z+slzv_C{u`D8>+*>k?Txa-i@~i{g%rK1@H^F^zE+Vs2-qtlZ34AWIaoNzcT3o^bYP z&Qz-^Ct!8d_QAyE8@uTmUSRy$D^;JfRg$Vxzfhj$HEuTe3)m^fHM30}E+V;uqq`&UR^ zYgc}wW6D?m7QOOFo;jqq@HM)Y9+)BfEqFaQDWyhVQ#Gf`#bKJY1O0yP5vavlK+(!Y zSEw<$Dy@*)oNt(VB)E~MI}ON`FJiAanZq3ImZJ2h>XE+kyv#WQjc^7PK&e?rD=&wP zTGMBvQIx9R4+@;blB&lH9LgUyQK5saQ$!$ucMq9+MX5_o@o-hw~@rLAZw(7>GHdy``=`u%SjBzw@i{wyMP?CXVoQgHR4UyLh>~%{?*R zz*g>(DxBcz^(iA+D$w=}_3DrmU$_E`+_QUHW^Uq#t*Vegx$Q}ECB_r$C#*5;^}X}) z)f>L^7fxl?1i`f*;$dbj& zn+aQ#Y0JEpWR5%R`tg`Ora~dixAh?+LEbx_dsa?CnRcZyDA@h?U zkd-PYSMKcQXc6AM-zQ4_2PmXdhh4s-Ea`tXXU$;U}mU?~k3X(SXWf#I4FuX0=NWwllO!!gui-Ib>KJ9DCvXbLWO{M?bMa zyv24_6q!iaj4412Ee4(F@$Z^-8OK>pNtI`Gkum zJ6SqgF^X+bR@T(6ooV`YwR3h`4&ROyTD?dL1T!tUKFhT;gyK##in^lHqq3;jJG;A( zR@!zGziwD4<4=S&(SGhm=PxF0{V8BEpH|;!r!hWF_>efdx_uQCcQp!G^@6!Rl>qJDc`^&lp$GfkZuI5#~bNp0_;#+qVRA1o& z9?xFGiS3>l5k7Hk4c5%xb0^oirJWTitrt3Ixi_i~=tIMT6QgH!QU>Ql$r%I>qnh)7 zDcV1vdt#s;lzI8LuVl?C45-&JG?NDclEQ?ZUmkeoPR=l3d`3Sx{r!E4LUZVxfx-+v zdE((70C_wkjDzb>$v7b&Mn=7CLS(QiC~xFusOvp>I*}R*B&Oz&%sZg-q6cei9;;pG zxp9ZR00QtB`*pAWsEb4FaS&66SNgRb_r|BF=8b&EMBtmtheWbXgrYNxPBWX7;nAao zgoHSh`<23@1OJnZiC8wgCH=|LmASSy$F6S>3UZ3Lx~s27MkKIWbZdgw)%2cxMd3b3 zfetAA#n~!8P0RR8s8&Ef_sZ4p^;-~M7VaB?U@E}xev#O{=RwQZlcku5XK_u4qUiL@ z>D(Nyd|u{|imT4GL>SgdMw}=1tdRjCi5IFIxt_@F`R!lrkx2}~CqG3?zP>U^0&~Wn zN6p%&$@a&iY>0XEVRg(=ZBTc3OPc2WlAAfWJo=)&=&Cl_5{_V&*C1N*`c*tiG(unC zwtg$OVZO}oH$*juem|%bSH2earoAm&G9|u3lsQl6YKDYB^L@S*FO_$qfRA~b*-a;R z`_>0*W&`&8bp*uA;E79Fy^|#|K(T!rr%+lVt4{`DvElq|P1ARtzycXEds*;dHHRo& z)$a#1V5N<4-{aOvMEqlW|L3aNytdiN_4oGy5vqRjiXm)m`;{j`3ybkjCaAj)w7#EW z!+}5BwqJvZqWh|PRc{5(D833Thae`F(WDA=NwE(MJAVhXL6rEp%jx__5)#9i^ryTe zo3|{qZssBmNugOXCcjD#!la47J2#7}s~iW>UyjdCn@+1v1~HKShGDt8tHQvel*FYU zplK&{F7nmm5>(pFW_h2>AH{{`hRsHdfqu&V)R|16U|pI=JU)H8o;~p0=ZR^0&_ODK zQeiZ-^2#=Aun)17q)#Vn`yd;Jx@`+&3ge0PW>sxkADCQu#*=hIxFG*+QpCivu}on{ zN@@pjBR@(46SNTsDQmojP@E?08ygs?G;2)VxU#(s6Tul2F7f^n03MlATcmB)?EmiV zefX+JOq`ufp34 zPae>jcSJP{V$Va;&#d}LTU_Zo8;S$Z8&&*_jyWZJB=!wHwZ*-z<{p^U{|&qjmUI%j zEC^6+WL}y<^$v?0-d;S;u2h9v+?vvSfYYP8msN8vH+2HufV8;Eb&ZXLKlKXFu2e*A zmGo`cnB1f|<(LP9IcbVUSP3tH$rVyV4yLKC39e4_6 z(6*6-(QIfC-xD%;cv@h(KPgL ztEC=!KWCkso``;3)E^NaE-(4>Gb`A#2D7s(9Ui$~T$`%dS2Df)-7j1E?z3l(E1^B5 zGEg{U^KD!&H#oCA7{OSvl`dR~bC^6Y$^LPvX=rT&nd%e5yEXm77+JN6M(aQ{Tr(30JLZ;nhXGH}HH8&LhT*xTy5FRuD z&}k1Up1x(7%Rz9ZNaonHE#I`Mf0WDi;>E+WbL+g>t_Ncd21h!FBVCGIp$jkeB8ugJ{ zW{iG;Jc*rMWhSEODL&I0c`1zX42pJ<>XU?7;^r`|E>+W0hQ7C4;aHy4jb>%C^gp&f4L~Ed;)AfQ@wZXd=0YVzjJe+6qqp?vlx4w z@2`S4RS7KhV?2JfbqBy7aoL^P9IgfE##oe|!)8YHlq6<&+UfBZw&L!0VHaRCxzO-r zPzFaXFdW%8oXYV4if@f{{z+>JI4w3L3)mw5Jkgjw<&BrKUIg}Ee(*qdF-DT(IlR&KdcX z;^4|isl7!PX!{m1yfa!&O;JBV2Q0!xeF}#)03T<0R5=cIKodD^pAH9VU=MrUTcG8# zUp2Fn&+g6CmjUZ;$fpNK{1flIb@8Mo+0n;O{3#-vBtebzpxZZ=*`4FJ8URX;LX2Wt zmxWbm%GRlU%i}&W!&=rHBo)BjoY4)M_tm9$@m>N!jC0 zP%^0B7iR?X^1K8i6-Pgx?BQVoHb?o3OCjyK?bmYuXok`rGP2WC(to zwr@Go?qK*Xd-py|xe#mbxZi2E#2o1fX+`xp=3Vh-5#>%PNqz=2+&tL&qaMAyR||xp z$oxzg^TFx^sS<4(@J&1ntmSG1e_<&@A zO_L5;y&QFIB#bPwWnVW=lg;BdWlqCluWM%+P=N} z=j*g?Aa%HkT)I@9r}PrAqR0&k{B;W%O6AaJUuypq+=cDoX!+3?Sm0-V6ZwkSI}Dk# z&y(G|(gss9rG=@-N49j#%UocC+a2azcE2ec3LH_9qh~@Z8heZaf3gh6Q|ujKiI8GbDDUavMkP+m}6EdkWY5WhX(Peidle!F7uGUd#j1 zu*4w2>JI0x$SvFqahO7@4Er+1&z>Z_} z9(eV@S-?C3Tay+@gk(ntcCY$?95qX|m59(w*A_stlsAf^8^SaZ7#>k@WiA{daq zku$Z|?^WE~^$YTT8tHq;;_T?u%Fb0WHsxA`-h=~67VZwE&jQOIIa}vs8ArlO&R7f1 z47yQh;=r%FM?}T5@9S_zhrf>~Q{QcRvl9d7jK7Suk+& d`uvh5a0wUD=t&6q{O7*}nyR|!Qf14a{{v-8Sd9Px literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta new file mode 100644 index 00000000..05148c9f --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 4db017495c69e8140a56a0e2b669e3f8 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..684d53a48ff0cf6c7ab5c793b85b1e40da7475d6 GIT binary patch literal 5818 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 R8%hAWa25{c_f35h{|B-o8KwXL literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta new file mode 100644 index 00000000..ae89df0f --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 5b1a64ea234fb2343b8d0686c51280de +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..578c00ceb2c2ee4070c96ea58fbd16ad1b3e4120 GIT binary patch literal 5873 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta new file mode 100644 index 00000000..33948856 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: a3983c59ebf804b4abba687bd7c9e92f +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..c5d88d99eba43b8a61f5fbfea115c9a8d2bb39e0 GIT binary patch literal 8412 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta new file mode 100644 index 00000000..11b1a1df --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 5485e2f56028a3c4cb54f5caa167377e +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..0a4df1dd80fe8588d5fc5c90a979dbcdcaee6ef7 GIT binary patch literal 8278 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta new file mode 100644 index 00000000..efb87d8d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 0c6271a290ef75b4c97d58746c86c5b8 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..e14ec79187e517cac99c31e0f37ad4cb2f1eb1bd GIT binary patch literal 9144 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta new file mode 100644 index 00000000..2296fccf --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 9d7c6e4896067aa4fa512a00f692ac1c +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..64db848dfc16fd000f9d1f7db5d149d06753d83a GIT binary patch literal 2309 zcmdT_Yfuwc6uzi{MJU#S9gCyeSX!)I_K}2SBS9d65*4sO#i@vHc5iTTlMR~<1hkl{ z)7B0?rd1oORh(9Hc03ghiX3PR0Kn?>y_aOO|CoZ?huRc=BC@EX8NF}rgK@uyNA!4%9 z1uzTJY-!P67!N?VATDQ=G%9_#juEV}v=0;Ovf5=f0P#aycAA+0CBzI1IGbK^rDm%F z;aI&QSDlWh+YN9$msTdi?6Qm;rfdR3v5FxHNW4oY3s|8L>(K4GB}|^G*m31j?++@w-HiaW4IP0aTKR?YNZY*k+w%6 zXA@bAF3XtOmP=mg72_qzuEVgBl9JdGWvn0;U<5@`7*1j&iOLAnQEHQD7ix11Xjd>o z2P1NJi4$yyPmwkYPD!tjojy8()t;W-A#8KB6-q7{=A!Kw5sPD1tM6QXv_r~*k8L~? z?Z_#$Lo5qA1gFTz_hA{(PL^xed7^e8%XHxEPLcPYlVvc-Lo2jN4%rmpcO*O4Ws019 zfi!Ov7^m;6$*5O2ogAxE8%bPCkt#}=oN7!a2#Qc8Y1I^NR1#`jYtZ_V`2?OM$~&>F z%#9$d#jju-szA;-!@_}_?rWX$>nUUP~sTqyUjMgP~?gsn<@%c#D5(+?ins97^fj{ zHI8cIG-lKcRSZf~7Kq}E*`lSCP(_$=MH`=eqIB&QAW6o|swfg=DHfs@l?tMik~X6n zHKn9*N=rhLRba9ymeEO^#KX3JP2#1ti06DgqvL5?fm|Gvg%;Y$ONxYSo@1eyEKgs7 zC^&6wwq4{T7?1gSljmfzKYFBtJ)!R3exjM%k@AH2!j93D7ahY5ZSq8m^5_n$Dr%5_ z5$2kVNja{TOGk;coT9$luGOf%=-JY;Gb!5s%bB#a<)$4+lOhW3Mf|Gu+XsG`H#I1@ zZXQ1r@0Hg#@ZI1dN2n%yl?lCVW*ExTpWJ?li?}l*IVx`DlJ%_U!Cg~FKpRy z*t=`^&Wc^3b>2Gf`_V^gPI;z!E_-fz4tjPRuAN%AAQv3;{6SnX=YKOfST{`cOx``I z;_keM54Lv2d##PgUORTrj0VqL&krN3y(d1ZzSraYVDZjtV++q88Z+LxtNdtWVrKn0 z4>xhzkfzso;8}7in-n%_YS3R0R8)x$1GgoeV`b&4{9RRJ zBHgFA47uC7GhpzPpIWN(?%&^Mx`A$s`nZ3Hfaou_<^^2Z9oiBeaV)=n#I2CZvsVpV z=(2)`Bsf*vWhuERY}@h=5?54Mx?cS)p)zM*_rbnK&Mwo%t;h9u;u43K@}b zFt`|;i3SL81JDI@?=0A#6dyh=A$se{o4FZ7Zk^s6v-nO#aZuw6p3JRGzjI!uwU_c@ zc5|O|$5C*nUuQzklk90smvMnlZ*^++dBFc!;NMC9XOa>58zN61_}WuVJ!oEh*Xx{F zxH&)bVb$osIalu21cKvTK{wD7B>MizJAzMpy0gD`XHgA7C-%sVHFHfs^Xl-JxnJ=h z?o!vGa6pv%%B_HXUV0=#6LgZoH#IV(M>tbtS_#2KS-o6 z*M-(CRE-UI9rLX1AG2=L?vuiciDuOD>&(j8y_=Nzn=bUOTr$W)S$^J9iH|fdWA?4V zYA>t?dk57odkI_@D1B2wL#zGh)DJ(KIBmY?cI2#=-L<;(#;e0`ZE0OL+HDy?3?tNk zPdn0FF@M&f!ka@c$M@Bi1~)QqFuxBfpWa>iuBHwG#A~h7 z9}t_1!*BnkJzFVWyD@n0_OUal+J?a!hXMDLJA<}?_e$r4uylevH2|1WGK?#e$4&VM D(of}V literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta new file mode 100644 index 00000000..b9d74d96 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: ea5873cfd9158664f89459f0c9e1d853 +TextureImporter: + fileIDToRecycleName: + 21300000: SliderBackground + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 31, y: 15, z: 31, w: 15} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..0dd9c199f361f30893a4b7aaf0d50d287fc22937 GIT binary patch literal 1671 zcmb_dZ%hIYSOZ|`wlj6yXWrW z9bnCc*Z>tto0_6cu^+0`1X4@?1RHy~Yi(=VC^cznQ&a-fLJgp((bg!^cfe6U7(bZq zhuwMa&HQHOH#2WriVI&#Te4~i03fYkld}YX$B+oZi<8m&(wDvQgACo}(YGl+J;qBtgrcD&5&rrZGstdcg>t8iO=VX07GEwCcKaRZhU;t+rz>O2N$4u3+wPlhl zDnV^syiBuMJE1D=gkrv`_^}zDIq3m0&{oj~d5R}&CXpv-6T=WT9+66>M~s=m z=j_G%_?zuhw1e^pB*Nhs-f9wz6ic9#j08S}C`2;eI`_3w zVhiaw3r_)D5H5&(cqBH=`jG34i-3bOGEwR{XOoi+~r~Z=gZiU#?+MT;jWnB z(&DOcexV$D@92W(kFU&VIlJQR;fgE!R;DyW_PWB~wMC0oWsJXBaro~)%0E#1mJKpf zpDx5e7@>m2;8BIxnyK*(@04)I*N*1wYZ~+1@RarR`7?KIIo7jUxOnQ-?{khdjNE=> zAQ-)zjJ7^4Fm#wv4`|at-g5&hvvxiGZ z@0`qvUD%NO`N*j@@aJ@M<*k(Wzvvj>)%Nk#%jV+6xe<~=}iCX)Y!ZBMxQ-1H5NhNi8H~U*dTe}hx+VezrRqmIpbEBXY89GSa;<5 za7UzZY0kWCpUH> zk|s5<<67tPtaG0o$_!uYxZQq}obC+v-Dv}hqR)=1!X$U@>j9^&w|A0=6b{J4?I)(X st{jZ^-3Wm2FGC;29<2!`7v4*yfa_(IJm_o)p+5sCa1}Z~$*XAm7rtC34*&oF literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta new file mode 100644 index 00000000..a323916e --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 0626b924325d1c34cafa6b22297f4e4f +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..9b86e30d8c798957305f7b45625bab0ff2fd8cc8 GIT binary patch literal 3828 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta new file mode 100644 index 00000000..fc51dbc2 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: e4f1fee3de32377429fd1348fae62b10 +TextureImporter: + fileIDToRecycleName: + 21300000: JumpButton + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 65, y: 65, z: 65, w: 65} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Editor.meta b/Assets/Standard Assets/Editor.meta new file mode 100644 index 00000000..aecce64b --- /dev/null +++ b/Assets/Standard Assets/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 939ceecd2a4bbfe48be882abdd6b5f98 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput.meta b/Assets/Standard Assets/Editor/CrossPlatformInput.meta new file mode 100644 index 00000000..c3e37649 --- /dev/null +++ b/Assets/Standard Assets/Editor/CrossPlatformInput.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 696c0e7b8c74e1442acbf15c2df9e72d +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs new file mode 100644 index 00000000..a830a67a --- /dev/null +++ b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs @@ -0,0 +1,137 @@ +using System; +using System.Collections.Generic; +using UnityEditor; + +namespace UnityStandardAssets.CrossPlatformInput.Inspector +{ + [InitializeOnLoad] + public class CrossPlatformInitialize + { + // Custom compiler defines: + // + // CROSS_PLATFORM_INPUT : denotes that cross platform input package exists, so that other packages can use their CrossPlatformInput functions. + // EDITOR_MOBILE_INPUT : denotes that mobile input should be used in editor, if a mobile build target is selected. (i.e. using Unity Remote app). + // MOBILE_INPUT : denotes that mobile input should be used right now! + + static CrossPlatformInitialize() + { + var defines = GetDefinesList(buildTargetGroups[0]); + if (!defines.Contains("CROSS_PLATFORM_INPUT")) + { + SetEnabled("CROSS_PLATFORM_INPUT", true, false); + SetEnabled("MOBILE_INPUT", true, true); + } + } + + + [MenuItem("Mobile Input/Enable")] + private static void Enable() + { + SetEnabled("MOBILE_INPUT", true, true); + switch (EditorUserBuildSettings.activeBuildTarget) + { + case BuildTarget.Android: + case BuildTarget.iOS: + case BuildTarget.PSM: + case BuildTarget.Tizen: + case BuildTarget.WSAPlayer: + EditorUtility.DisplayDialog("Mobile Input", + "You have enabled Mobile Input. You'll need to use the Unity Remote app on a connected device to control your game in the Editor.", + "OK"); + break; + + default: + EditorUtility.DisplayDialog("Mobile Input", + "You have enabled Mobile Input, but you have a non-mobile build target selected in your build settings. The mobile control rigs won't be active or visible on-screen until you switch the build target to a mobile platform.", + "OK"); + break; + } + } + + + [MenuItem("Mobile Input/Enable", true)] + private static bool EnableValidate() + { + var defines = GetDefinesList(mobileBuildTargetGroups[0]); + return !defines.Contains("MOBILE_INPUT"); + } + + + [MenuItem("Mobile Input/Disable")] + private static void Disable() + { + SetEnabled("MOBILE_INPUT", false, true); + switch (EditorUserBuildSettings.activeBuildTarget) + { + case BuildTarget.Android: + case BuildTarget.iOS: + EditorUtility.DisplayDialog("Mobile Input", + "You have disabled Mobile Input. Mobile control rigs won't be visible, and the Cross Platform Input functions will always return standalone controls.", + "OK"); + break; + } + } + + + [MenuItem("Mobile Input/Disable", true)] + private static bool DisableValidate() + { + var defines = GetDefinesList(mobileBuildTargetGroups[0]); + return defines.Contains("MOBILE_INPUT"); + } + + + private static BuildTargetGroup[] buildTargetGroups = new BuildTargetGroup[] + { + BuildTargetGroup.Standalone, + BuildTargetGroup.Android, + BuildTargetGroup.iOS + }; + + private static BuildTargetGroup[] mobileBuildTargetGroups = new BuildTargetGroup[] + { + BuildTargetGroup.Android, + BuildTargetGroup.iOS, + BuildTargetGroup.PSM, + BuildTargetGroup.Tizen, + BuildTargetGroup.WSA + }; + + + private static void SetEnabled(string defineName, bool enable, bool mobile) + { + //Debug.Log("setting "+defineName+" to "+enable); + foreach (var group in mobile ? mobileBuildTargetGroups : buildTargetGroups) + { + var defines = GetDefinesList(group); + if (enable) + { + if (defines.Contains(defineName)) + { + return; + } + defines.Add(defineName); + } + else + { + if (!defines.Contains(defineName)) + { + return; + } + while (defines.Contains(defineName)) + { + defines.Remove(defineName); + } + } + string definesString = string.Join(";", defines.ToArray()); + PlayerSettings.SetScriptingDefineSymbolsForGroup(group, definesString); + } + } + + + private static List GetDefinesList(BuildTargetGroup group) + { + return new List(PlayerSettings.GetScriptingDefineSymbolsForGroup(group).Split(';')); + } + } +} diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta new file mode 100644 index 00000000..56f7e861 --- /dev/null +++ b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: db7667203062c644ea1877077e30ebd6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/PhysicsMaterials.meta b/Assets/Standard Assets/PhysicsMaterials.meta new file mode 100644 index 00000000..167a6666 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5eebb5849c50a2c4ea24ded96e6f3aac +folderAsset: yes +timeCreated: 1427462663 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial b/Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial new file mode 100644 index 00000000..63101ab4 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Bouncy + dynamicFriction: .300000012 + staticFriction: .300000012 + bounciness: 1 + frictionCombine: 0 + bounceCombine: 3 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 +--- !u!1002 &13400001 +EditorExtensionImpl: + serializedVersion: 6 diff --git a/Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial.meta b/Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial.meta new file mode 100644 index 00000000..e61af055 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Bouncy.physicmaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9f93f63d068b08c459038c40fce897d8 +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial b/Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial new file mode 100644 index 00000000..badde0f7 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Ice + dynamicFriction: .100000001 + staticFriction: .100000001 + bounciness: 0 + frictionCombine: 2 + bounceCombine: 2 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 +--- !u!1002 &13400001 +EditorExtensionImpl: + serializedVersion: 6 diff --git a/Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial.meta b/Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial.meta new file mode 100644 index 00000000..867b252c --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Ice.physicmaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ba92fb44336020f40bdf294bb66bc9da +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial b/Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial new file mode 100644 index 00000000..ed55da97 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: MaxFriction + dynamicFriction: 1 + staticFriction: 1 + bounciness: 0 + frictionCombine: 3 + bounceCombine: 0 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 diff --git a/Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial.meta b/Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial.meta new file mode 100644 index 00000000..9e5494fc --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/MaxFriction.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e52fb17f9b1e7fd48b8955f1391d3688 +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial b/Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial new file mode 100644 index 00000000..13c5df62 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Metal + dynamicFriction: .150000006 + staticFriction: .150000006 + bounciness: 0 + frictionCombine: 1 + bounceCombine: 0 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 +--- !u!1002 &13400001 +EditorExtensionImpl: + serializedVersion: 6 diff --git a/Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial.meta b/Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial.meta new file mode 100644 index 00000000..7bbef681 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Metal.physicmaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 01571ba68fb2dad46aa03094ab219579 +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial b/Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial new file mode 100644 index 00000000..1260bec1 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Rubber + dynamicFriction: 1 + staticFriction: 1 + bounciness: .5 + frictionCombine: 3 + bounceCombine: 0 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 +--- !u!1002 &13400001 +EditorExtensionImpl: + serializedVersion: 6 diff --git a/Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial.meta b/Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial.meta new file mode 100644 index 00000000..99c8d4e2 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Rubber.physicmaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 52baaeb214519f347a35cf0edfd262ff +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial b/Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial new file mode 100644 index 00000000..b6305f78 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Wood + dynamicFriction: .449999988 + staticFriction: .449999988 + bounciness: 0 + frictionCombine: 0 + bounceCombine: 0 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 +--- !u!1002 &13400001 +EditorExtensionImpl: + serializedVersion: 6 diff --git a/Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial.meta b/Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial.meta new file mode 100644 index 00000000..d814eca7 --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/Wood.physicmaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3aeb7dadc0c69d54d9e5777e9d5631f1 +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial b/Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial new file mode 100644 index 00000000..4a45cf3a --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: ZeroFriction + dynamicFriction: 0 + staticFriction: 0 + bounciness: 0 + frictionCombine: 2 + bounceCombine: 0 + frictionDirection2: {x: 0, y: 0, z: 0} + dynamicFriction2: 0 + staticFriction2: 0 diff --git a/Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial.meta b/Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial.meta new file mode 100644 index 00000000..a3a5eaea --- /dev/null +++ b/Assets/Standard Assets/PhysicsMaterials/ZeroFriction.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c2815a7ab32e42c4bb42f59caacb8ec1 +timeCreated: 1427463081 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Prototyping.meta b/Assets/Standard Assets/Prototyping.meta new file mode 100644 index 00000000..6ab2a224 --- /dev/null +++ b/Assets/Standard Assets/Prototyping.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: 153c77e0022ff3148beba89b18de3476 +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials.meta b/Assets/Standard Assets/Prototyping/Materials.meta new file mode 100644 index 00000000..e39825d9 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: 11fa60a4f5bdba144a008a674f32eb19 +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat b/Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat new file mode 100644 index 00000000..0a7ff436 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat @@ -0,0 +1,181 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: NavyGrid + m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME + _UVSEC_UV1 + m_LightmapFlags: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 2800000, guid: 86e4aa9207c9e2740b6ace599d659c05, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 2800000, guid: a196fd6788131ec459bfb26012466fc1, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Occlusion + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _AlphaTestRef + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .100000001 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: .100000001 + data: + first: + name: _Lightmapping + second: 1 + data: + first: + name: _EmissionScaleUI + second: 2 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 1.33483374, g: 1.33483374, b: 1.33483374, a: 1.33483374} + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} + data: + first: + name: _SpecColor + second: {r: .117647059, g: .117647059, b: .117647059, a: 1} + data: + first: + name: _SpecularColor + second: {r: .156862751, g: .156862751, b: .156862751, a: 1} + data: + first: + name: _EmissionColorUI + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _EmissionColorWithMapUI + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat.meta b/Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat.meta new file mode 100644 index 00000000..af64a637 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/NavyGrid.mat.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 76ff537c8e1a84345868e6aeee938ab3 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat b/Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat new file mode 100644 index 00000000..4b85a6b9 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat @@ -0,0 +1,180 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: NavySmooth + m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME _UVSEC_UV1 + m_LightmapFlags: 4 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 2800000, guid: 86e4aa9207c9e2740b6ace599d659c05, type: 3} + m_Scale: {x: 4, y: 4} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Occlusion + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _AlphaTestRef + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .100000001 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: .100000001 + data: + first: + name: _Lightmapping + second: 1 + data: + first: + name: _EmissionScaleUI + second: 0 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 0, g: 0, b: 0, a: 0} + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} + data: + first: + name: _SpecColor + second: {r: .117647059, g: .117647059, b: .117647059, a: 1} + data: + first: + name: _SpecularColor + second: {r: .156862751, g: .156862751, b: .156862751, a: 1} + data: + first: + name: _EmissionColorUI + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _EmissionColorWithMapUI + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat.meta b/Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat.meta new file mode 100644 index 00000000..ee7bb801 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/NavySmooth.mat.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 1032d41f900276c40a9dd24f55b7d420 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat b/Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat new file mode 100644 index 00000000..6e27746f --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat @@ -0,0 +1,181 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: PinkGrid + m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME + _UVSEC_UV1 + m_LightmapFlags: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 2800000, guid: 580615edf5e29d245af58fc5fe2b06ac, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 2800000, guid: a196fd6788131ec459bfb26012466fc1, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Occlusion + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _AlphaTestRef + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .100000001 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: .100000001 + data: + first: + name: _Lightmapping + second: 1 + data: + first: + name: _EmissionScaleUI + second: 2 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 1.33483374, g: 1.33483374, b: 1.33483374, a: 1.33483374} + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} + data: + first: + name: _SpecColor + second: {r: .117647059, g: .117647059, b: .117647059, a: 1} + data: + first: + name: _SpecularColor + second: {r: .156862751, g: .156862751, b: .156862751, a: 1} + data: + first: + name: _EmissionColorUI + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _EmissionColorWithMapUI + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat.meta b/Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat.meta new file mode 100644 index 00000000..6bb30ea6 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/PinkGrid.mat.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 8c19a618a0bd9844583b91dca0875a34 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat b/Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat new file mode 100644 index 00000000..c5d2751f --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat @@ -0,0 +1,181 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: PinkSmooth + m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME + _UVSEC_UV1 + m_LightmapFlags: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 2800000, guid: 580615edf5e29d245af58fc5fe2b06ac, type: 3} + m_Scale: {x: 4, y: 4} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Occlusion + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _AlphaTestRef + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .100000001 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: .100000001 + data: + first: + name: _Lightmapping + second: 1 + data: + first: + name: _EmissionScaleUI + second: 2 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 0, g: 0, b: 0, a: 1.33483374} + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} + data: + first: + name: _SpecColor + second: {r: .117647059, g: .117647059, b: .117647059, a: 1} + data: + first: + name: _SpecularColor + second: {r: .156862751, g: .156862751, b: .156862751, a: 1} + data: + first: + name: _EmissionColorUI + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _EmissionColorWithMapUI + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat.meta b/Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat.meta new file mode 100644 index 00000000..d8432c22 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/PinkSmooth.mat.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: fed4e78bda2b3de45954637fee164b8c +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat b/Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat new file mode 100644 index 00000000..ce5d4da1 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat @@ -0,0 +1,181 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: YellowGrid + m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME + _UVSEC_UV1 + m_LightmapFlags: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 2800000, guid: b4646ae63b0bcca40b1bdde3b87e01bf, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 2800000, guid: a196fd6788131ec459bfb26012466fc1, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Occlusion + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _AlphaTestRef + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .100000001 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: .100000001 + data: + first: + name: _Lightmapping + second: 1 + data: + first: + name: _EmissionScaleUI + second: 2 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 1.33483374, g: 1.33483374, b: 1.33483374, a: 1.33483374} + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} + data: + first: + name: _SpecColor + second: {r: .117647059, g: .117647059, b: .117647059, a: 1} + data: + first: + name: _SpecularColor + second: {r: .156862751, g: .156862751, b: .156862751, a: 1} + data: + first: + name: _EmissionColorUI + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _EmissionColorWithMapUI + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat.meta b/Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat.meta new file mode 100644 index 00000000..a9b07751 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/YellowGrid.mat.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 82096aab38f01cb40a1cbf8629a810ba +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat b/Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat new file mode 100644 index 00000000..eafd059d --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat @@ -0,0 +1,181 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: YellowSmooth + m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME + _UVSEC_UV1 + m_LightmapFlags: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 2800000, guid: b4646ae63b0bcca40b1bdde3b87e01bf, type: 3} + m_Scale: {x: 4, y: 4} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Occlusion + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _AlphaTestRef + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .100000001 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: .100000001 + data: + first: + name: _Lightmapping + second: 1 + data: + first: + name: _EmissionScaleUI + second: 2 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 0, g: 0, b: 0, a: 1.33483374} + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} + data: + first: + name: _SpecColor + second: {r: .117647059, g: .117647059, b: .117647059, a: 1} + data: + first: + name: _SpecularColor + second: {r: .156862751, g: .156862751, b: .156862751, a: 1} + data: + first: + name: _EmissionColorUI + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _EmissionColorWithMapUI + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat.meta b/Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat.meta new file mode 100644 index 00000000..15c7048a --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Materials/YellowSmooth.mat.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 6e1d36c4bbd37d54f9ea183e4f5fd656 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models.meta b/Assets/Standard Assets/Prototyping/Models.meta new file mode 100644 index 00000000..28f6fbd9 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: 244e48ea2b590df4eb7841878685db1e +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx b/Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx new file mode 100644 index 0000000000000000000000000000000000000000..78cdb12cbcc254a5f5306a2ed7754e7c3434cffd GIT binary patch literal 22704 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx.meta b/Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx.meta new file mode 100644 index 00000000..e1349f69 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/BlockPrototype04x04x04.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: 622a87b3379022740be7e2efea3ebd33 +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: block_prototype_4x4x4 + 4300002: BlockPrototype04x04x04 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/CubePrototype02x02x02.fbx b/Assets/Standard Assets/Prototyping/Models/CubePrototype02x02x02.fbx new file mode 100644 index 0000000000000000000000000000000000000000..fe88c504e00511a723d2e8183d16cb7001f31cc2 GIT binary patch literal 23568 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/HousePrototype16x16x24.fbx.meta b/Assets/Standard Assets/Prototyping/Models/HousePrototype16x16x24.fbx.meta new file mode 100644 index 00000000..3ab85126 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/HousePrototype16x16x24.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: ce7348d724aa0fc44aaf53391b9bae9b +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: house_prototype_16x16x24 + 4300002: HousePrototype16x16x24 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx b/Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx new file mode 100644 index 0000000000000000000000000000000000000000..897837e9a316dda36f004a279c8f67e4bf4ff539 GIT binary patch literal 23504 zcmeHP3v^sZdA^PxlHZRwgaAp`#=*odNwyOQCq_@pmMzJO){^a@U|;QCNjF~YZua3w z5I{+jKwAPOJVRRIPzcbbB{bm?;E-)ifs{bfKtmu8l+u8ckb_&AM{|<6-#7E$yR)mk zyK9>R?Kz#Jt9$34`M>%9nScIy+&jC|9*^27JJjB?H`Li5<^Ox2!QE#~kGF(g^+uBW=OfcqBER z%z$tAc+%-Wl65tqB`j`DIkrl5N1brS9!=hl6tCWrI4i zD-q9(bj$^5F(5pY>23CS$5Iei8pIjf6WLV9d{7$=>Z~p|p3OKNn?T=V(!)+95s!8( z13hEV=XSZVn48v#cOtPMd{c6+1hqyfnn;D0Bf=I5x9zOsy(g9(cH`;LAzizn_4N(s zud9Cns-1?MWSt$3IB};VK9mTbf#|kaV$hB;YE8?hutEFMPO8n$*k^(hMO)Nv2CF@6 zrq)X;8`rPkC?Xar*$cH@PR1tI+k9nMg&`D&=QpO0RRsrS++l-x?`3t%=c5C$0-2pdX$_9eQD2Pb!gg zQW@7tZ>qlwic3%3TP-blgNxG0X5K-h&r+Kz>b6)?}*2pl$YkzH;mO^Fjn8N zZfJ0#;WNRo zzP_%Zp$=#pLk$}?pMU=54I9=qY`QQytH2@_o6zlU%qgR)wpT)yu-7_muXU!q)_FDw zd#%&&Bv6Xzle4^%pLpqm!^e4{%{8lYtqge=dcvh5g~`DE#ttgQvi~ z*TD*z`#fB*Ntm0}muwz$)5@E>7%J!)I^r2;*wJH92dn6EVOy)&=H%Jj;dpu0&j{-p z&5D@Sp2A$De4!Y`tbY^EddzRZbj@BC0LF@o0?y!Ar|7+7k4w^h#hmK_D2irJj1X zwS+0WCgZ^piAp`30UTy-#swK^A#Ki(osDH$G03It03XEpF1&d(8*x&h9?UJ1n25QD zob3X4u7;yb9GvLv!}NkqJUf~nm^xTsGz;}2iyA8;iC8H%n)cnownnqDiNbL^ zxhvkDg5W^~BA4}&aBk3?RG9^alXe_Sgj7aV-cCiL$m#)itMl{kKJqp`Yz7PKY&|a2 znJ2LZNF)RKC+_*&Mh>tO!f#ktYc`!pj4IK4F`!prUH9At6w3D|Ed`8TSGAow2t(A? zP&{9HUP|7mc_>V4HkE=6QOhpP%1LQSH+CEWX#rs?n?S;BZ%Uco0yj$c$NHMtirHI6 zdBY2lndNYXRqJK$%stoB0fJ1-$f8yt^9|$zSNv6g8&$xD2xHw9adzp20nICsUn3~P zvj9fqi*TXwPRFfTnQn939Yy;`4wf0nl|9=Bolt!}ol`!n1}fF0Z?5f4Br@Hw_|ANK z(35MZHmBDaa?lnLCtZ+z6GfFU7oF3E@4!+e{Yfd4+W13P6p=3(2~y{j>$s4q@*G`5 zYW2o}u5eKN@Zt{^-K;~}vW8mrQ#jH*7HFe4~o0uKuSjc^fqJJ(O+yB#cf*a6s< z?So@}qkNy)Box>{4(P0b)ws}}aFTFf=}5{|y8;33i$Jdmql{7PKb;9U`0_r0oD3I1 z9u`}N3&pa2g}aOcKqeL5CCt(d*#LgqS6BSE1YrYMQ9Qb}iBN?IN{-6^J`G1-v6VaR zaVPaAjI$+L`J)2B<}2IE3gmsr?S+C?{w&a0-K%gxUv}(0jypV(DIR>ol%cr|{}A>y z{aE;xAqGA=i!SWIsE5G>Mi*vN|CHmI4r^vHM)oiU*P!g{r)Gx{91O~SHL`OAZ^i{- zSWxAm`;#{@Jk{7X<>AXxx(om`!Il_Sy5+{c7llXWMs&ZuiHz#2%@OQTWYPK1Z_7bk zh&H0=GWv1qujWP7^1oB~MFhB-yx1+{NjsfZy{WG=5g+CiMh4wPRrpip^}|stiD(Y& z9j3#h7vJV2Mx9J*{4udlYGjO0j|eN>&{VT!Bf>d#Iq8ufa@i%Jz+&U5nBQSz=LC+H z4cj4dOG{!58;WYE@5l5jk=oFvx`U3WdXtV&YUZ~Dk`tyF(H=Wl#9csSJ&I36*TWnU zBLQ}X`?0$==*Ha4c&X08MtZL>OAlw8wPLBC4uwbTXyVFr5Z^xt-x@HWVrWjiPQ<}n zv=S$BRui5+JJ^c4FjS>nJN8D*?WshO6+I@b^lDSBh@!%Z!r9c29dUX_VCxTn!3zb} zbUO+lcmpnINwZ|VUUrN_LU%jonu`WrueRMx}|Cs8LS3)2W4lP zi7m2q)J>;Rwc2eFKEKE)@VuoA?h4?MMH~l5JrB=VQyB}X0>opDIgv-)C+nbK0aQ{P z?KSW9+^6wyT*Q$orFsHal{DSh2x9FR(zLllL)mn>%9-NBeXo84;HZEhjlfkU&7+0V zaGYz&jwVmGC)Z;qmCCi_g1vBP=}x3Z?O2z6(wJ8OlNxT&n6yEPXsB0VIsI)BYO4mo z^v&9xvg7Hb%>~R!nPe@t2PxA98j>C>4;dLZWD7D&%ZdPlb=9RYIMHcy)0o9Z9B%nn z9^t{D!c<>DNHr^;B-2#BP6QKtQ6Yf+b9Y6uBNa+peS|tjo zUf$b9UfI`Y-wb1i0ke}-nRX8D>%SK94At~thGN_{NyN)21r`;iTE`I)Y9rFosO%3|MF?V5YH8$( z|8HB40+5Ry*PKUDo!!n@CYy3roTIa_l8kB8O~QFP$WsSEjsO?{xo<2m??-+w6pVkj z0iW2i$|I++a0!bylWGtv+Fc^jlfr2DRbdR-vE+zdw$+X`F8?E4t}&&N4HI}mzIRhA zXu8`HW%moSF+tyxvXdOK`-0^C(_o(dAf9gs&l@2I41tTIzW(r)aMcv7#4_i3VOXmf zXgNJ82b2Gdn~aS&t9mKHN*mZ3(q=3joy%?IG4;Bkc=}l|f|r^Td`RHl3LJ>enYp(f zIbp0v1#64OQvMF>c{Ea4sAG+7U_dY)E?TCwyaZ&3#rd09jVE1?dnl1P+2Qpjf$!1q z>>UEnl@tU%CG?&~@vY&x&NCcTv^AQH+=rP_RF!ue*9P;oR5bWU%Y9AuC05iX;nkjqVSx>3Rqfm&_oz|c;WINdOP7j;ro=f_bt zGmv0-u8W0_K5we$qQ>xC+~lj{+(ANt%Q}GWNKhGbuzs^H$=X;i#NqJydMK4lsI4w4 zSi*bU4Strh6BnvdZ4${+eb>+sz6m&4>s!1+1Mkql99(}VR_#v36>~l{d2@ox9U4>w zTjY1qOwdv7mIyvZ2J2DIQ1`0wuj~>5 zZ(`uG+05mD_EiI9R{?ZsH9)rrP(7qVzpufKZ=O4ycxCPtP0xXwEZa3VMG? zDhZK2KklQt@xUH^OIfzS?)*?$w!pqTA59P>WEr>9R+cSL$aj`y3l#E8!Uhv(P0q!w zBR+zi$V|EA$Wy|FiXoR;RO{(xc^i8x#td4+HqAE&HyM9V!Nfis3|gIq8ME~^NQ7{# z@m_$k@r-)OOB!fk$IEdAHr@GHJO!2&*m4Jhxyo4At>w4^CHzS_u0RPdzcUJ(ZN}*RPfK;WFy03ZW|04+?5Ka?AXU5_@A5=W}L!3TCMh>V9CdwP4)D0T5qfw&w)8~L|t{?`=nhh%zbwhw|xL|GB;&4_Uq0O5L)Tf{W^9u?AH;^2U<)|B%xsAZUz$ACGdKMHOaz)4jTx2 zrQ0ejstLnZFg2tO{chArL`3=`rOp;UPB*41RSPPVQUHs%Y?n}=%;P{Ns(2hCb&T4> zPT093%TEo1I@NOYdh(&RSqY~X^U0RpbkIwFD+;Uarvq3t6FI+9_FN7cSbIL$| z9_3IN!A=LctOtctyfYQq<3=+h<+)~Kh+|e+pw7bMcKwlASv6aP4a+NvNz>`EQ5OA% zw^`2Ty?8t4ANE4rdY3S+#WNUb9qQ}9Dir*xuo_hp&LommaK0d%Mx*q^>~Xvf#gQ7S zTw$N6VY99zDVZE%3#__QpG||Tf-9V+DRLW}Z_3MkaCVFENn_GGas=tk#_F7XIV5QE^w!jB%*gPvI88V%4xOHEirAB{+n_kwbzlNr)wceL$ zow=X>F^3&X8HP2@qbr5^>Dh-bhGs~Ag*?cr)g7Lv5zzznTQc{MZdp6z9wHqlC$DMZ4aThL6MIQ-y7}3(iofLJEFwMR<$p@( zv#fnN&~rkc`1&n&6XH#n5s)6b;CipzONciyL+3Zj?NjA=IPd+UF83RPbD!2L_wZF3 z=P1hEhF5>Ak&oh9(vygd4=3WR7-vjPR9w93QQ>{~&wQuhVt0KR^AtXlMuUD4aT)^y zz0M1Wvj;PcaYT>PC6Jf-n2wuzCXM{WVxIrTGkHmW1<%AFy%yK=i2t?7dDZ zw7VFO3~l=6i%K>YM+ia^g5uCv*(>PWInyCO9X1E*vv7T1iXiVo&y3{cVaHVe;U+@_EI`^P<8nr=?$p;M)Q?C>uY-rX-; zrSNY%{7dSS6T0YwVq|hfNf2b&bu9*Jgo1azqN3Okz_!HN(Kdjpio1bOeqvwQvSm>7Iua+K~HUDpki=f&$_rSgXr0OYv zUYvhY@=wkTz&U!^=RADYOX#vIzo7IOdHD7M`WNrKlkrfzi2fC!cMndWCo(8GtzW(4 zGv7iaR79WrWodfI%O8NB3y{ZJ(|m_1rxPr6M*K4Ii?TLDha}hm& z3R(kClmEXuqZym95nm@L`;Wo)| zf)4dDVdG*d*rBRr0oU@o6WXut+p6^#MT4K#*B|9pU>#$ZK=9&An-H12 z`^a&jt2jutIs8M=@rB>^(mj5i3PU2_#I>LQO#y%M+@Cdqp6j^%F?Ao9@d)otm;K;T z-Y0JL^Lu!nfqLa5mkM6oOZW17^6B!|tWf1lNO{&}Qr>It`?)H2olei4spAt8x3+8f zCM3Tl`6mR=i+gwzB7c*q-)Uk)oW<0@ZrCmbQx^`wvoaijw5D# z;ub$$WtzNd$1fyZ$IqIhEYIV&9{tOwRr-tF_w#;W`Nxj(o_j9*9YtU4=U4pJ8_rhg z9>0OFEk2*F@*DE0_{1Yp-hpQ>SLNLCq2H+cZ>7AE<0@`h-`!67a}(fu!Y-be}&rw6pPLsr&z1mj9w*`Abco?|t@$blAUZY1RA&o>B_eL86V z%zoP(i{U3WoNr6^6EyZ`gpIv=wkK}d^&AGB$CPlz&U{Cosni7sHo|x0$-aJ3B;1Gu zFU&Km#}$q>!3zaiT_n{*hpEe=`!vhy>)&HkVOfp564ZSub_qNWD;3Y^tp->@#n&Le7Yamt zyb2LtGEhwsJ=5@j%iKS)OAj~Li?i_CSvaQDIeGEFpo?QmV;TMh|MZJBO=b6YI<7S| z_f!9XR5i;QJSFSg(j^taqTy!;SA2yxN#bAd|cox&M1# z`0X_x{>59pjfe^F!MdbdD~vIgsH`UQjYV$CLP0OR5lpP9W?W*Ml~42$g~7K)|KW+LaFvhbX|Pgn)Xu#`Thax{0_iw7 zsdtL%yjfL;!;Up(fk6#hG{$_~yn{y-&-_e!2NR5kuZc|OYrMt8tNtL;;r7O}n&$Ru zk+y1xTHL&2nALn8Q>x-G6G*lMYDzV!{%M+%Mf~DaL}|)u5KFb@X)r@6rKIUDQA3tbZBT@ zG95)(`LM80Ye)J1JsXY2@q;2P>UDS|>yYz@5d{+D z!$Q7vsJWS#lXnP;^y@^KGw`g9X%U_zhq5~w)~6&F8^j;7 z{uz;bCE;{D&lN89a)RS;VR4_`1CoRS<6MCR0&m0xu4%1dYP)NfzclL< z4y)$UQrQ+A`N}5d=$yFdiMQ}!UCC^B%+jfyUj89uqdu!}d4=})P9Q%$<=|pY+HNQb z?~O%1z+EM?d2i5tN1e(=1x{{vZf>zx1q literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx.meta b/Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx.meta new file mode 100644 index 00000000..e7ddc149 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/JoinInnerPrototype01x06x01.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: f45b6695d6226cd48abfc605723cc3ae +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: join_inner_prototype_1x6x1 + 4300002: JoinInnerPrototype01x06x01 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/JoinMidPrototype04x06x01.fbx b/Assets/Standard Assets/Prototyping/Models/JoinMidPrototype04x06x01.fbx new file mode 100644 index 0000000000000000000000000000000000000000..59e746ca3947f0216895f7dcd9b4a4bf3b6a51d7 GIT binary patch literal 22928 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

|7ok*$ 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%0DoT13NV+ieg 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/PickupPrototype01x01x01.fbx.meta b/Assets/Standard Assets/Prototyping/Models/PickupPrototype01x01x01.fbx.meta new file mode 100644 index 00000000..0408c08e --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/PickupPrototype01x01x01.fbx.meta @@ -0,0 +1,72 @@ +fileFormatVersion: 2 +guid: 00718395eefb6084bb25555f962f25c0 +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: f + 4300002: prototype_pickup + 4300004: PickupPrototype + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/PillarPrototype01x02x01.fbx b/Assets/Standard Assets/Prototyping/Models/PillarPrototype01x02x01.fbx new file mode 100644 index 0000000000000000000000000000000000000000..2b6499c408194708468cd43e38cff220cfcb8ba1 GIT binary patch literal 22704 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/PlatformPrototype02x01x02.fbx.meta b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype02x01x02.fbx.meta new file mode 100644 index 00000000..b891b22f --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype02x01x02.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: 38a9d3cc5c1e0aa4f92ff3445b73ed7f +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: platform_prototype_2x1x2 + 4300002: PlatformPrototype02x01x02 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx new file mode 100644 index 0000000000000000000000000000000000000000..3cd4972dcbbcb2c7de6000dcc7979fa816d60ec8 GIT binary patch literal 23584 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx.meta b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx.meta new file mode 100644 index 00000000..b8cbdc31 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype04x01x04.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: bc2ed85df3924a4458576f17e8b10057 +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: platform_prototype_4x1x4 + 4300002: PlatformPrototype04x01x04 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx new file mode 100644 index 0000000000000000000000000000000000000000..c913a68189c2c48d51ce6c05aedf387b81503ca3 GIT binary patch literal 23584 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx.meta b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx.meta new file mode 100644 index 00000000..d454d3e1 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/PlatformPrototype08x01x08.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: 879dd62cbfd65314d812354e257fc5cc +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: platform_prototype_8x1x8 + 4300002: PlatformPrototype08x01x08 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx b/Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx new file mode 100644 index 0000000000000000000000000000000000000000..c3b9067e62273abe87e8ef2c48e6306851d7354e GIT binary patch literal 22976 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx.meta b/Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx.meta new file mode 100644 index 00000000..6a892e6f --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/RampPrototype04x02x02.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: b9d7ac1a0f551404f8d32e1e02b64325 +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: ramp_prototype_4x2x2 + 4300002: RampPrototype04x02x02 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx b/Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx new file mode 100644 index 0000000000000000000000000000000000000000..c777234fb163779f0d04581383714392aa5e6e35 GIT binary patch literal 26496 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx.meta b/Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx.meta new file mode 100644 index 00000000..2c6a0181 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Models/StepsPrototype04x02x02.fbx.meta @@ -0,0 +1,71 @@ +fileFormatVersion: 2 +guid: 900e53dd850c9cc4281be6fa21bdfea5 +ModelImporter: + serializedVersion: 18 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2300000: //RootNode + 3300000: //RootNode + 4300000: steps_prototype_4x2x2 + 4300002: StepsPrototype04x02x02 + 6400000: //RootNode + 9500000: //RootNode + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + optimizeGameObjects: 0 + motionNodeName: + pivotNodeName: + animationCompression: 1 + animationRotationError: .5 + animationPositionError: .5 + animationScaleError: .5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: .00999999978 + meshCompression: 0 + addColliders: 0 + importBlendShapes: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 0 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + tangentSpace: + normalSmoothAngle: 60 + splitTangentsAcrossUV: 1 + normalImportMode: 0 + tangentImportMode: 1 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + human: [] + skeleton: [] + armTwist: .5 + foreArmTwist: .5 + upperLegTwist: .5 + legTwist: .5 + armStretch: .0500000007 + legStretch: .0500000007 + feetSpacing: 0 + rootMotionBoneName: + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + additionalBone: 0 + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Models/WallPrototype08x08x01.fbx b/Assets/Standard Assets/Prototyping/Models/WallPrototype08x08x01.fbx new file mode 100644 index 0000000000000000000000000000000000000000..e2d1380963b3cfe058836c5650e21d41c150d80a GIT binary patch literal 22432 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 UG6!+P7oZ8)S~^-3oA227A5zFk-2eap literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchMauveAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchMauveAlbedo.png.meta new file mode 100644 index 00000000..3d9f505c --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchMauveAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: c3edc74ae8207fd45a93c4ed8ee27567 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..565f292e0a2e6f71354161c21cf60b820c7a26ea GIT binary patch literal 17708 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 S8D50cfQ^NNd7;^keg6R>%1rS9 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png.meta new file mode 100644 index 00000000..1ad1099c --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchNavyAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 86e4aa9207c9e2740b6ace599d659c05 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 32 + textureSettings: + filterMode: -1 + aniso: 0 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..224d794512b565d47951ba92d35c6f9640b0f0b7 GIT binary patch literal 17706 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%0DNBW&%y_#{{+t*S%k6g&juPtLXvszjG z&z~SOH>e!TOMafL60F?TenGiw-Gza-f7x`PlN>{RN1ygHWgIuxmFqU`yv<8{w; zdDh`Q{Uh>SBTJP@?b{FRD0nJ+@5k+0Y%TOwtF)ms+jNh#4;%b8TyecaX?gJSNyJCH zjvrNzSvXYO(L2xUvRB$!(w3l?!k6T+qDSC8 zG(CP(8UE*j@dx)aiDr*0haf^Zk z<{QR3AHDAUd23Z@)^JOw-N@{i-OXc(Zxd9hKP03kG{h>$zREPE5Q)#s`J??Gv#HI@ z=H;0hV<*QNiZm9WBj4SB^{}ZWrR7BOP;%0>pr1~UzN~t+=xj$_P2JL~x5A9Do8PSa zFi;)Z8LIXARF|r2&rgV-^~e4HKL6I^ZuWo52Qkq_7+|JjDH;&r z?YtI2K!br` z5F`;mlgEB@3cSzXK&IqhOk>LZ-PH>@tm)19LM!roR|bZ0z9SQPCS?<;Fu6lyDE~-Q zK1dgG`7|y!kTRKN)8C(1d!eT?kS{N+cGG#2C}C zcoL2P{jHy&pX>yaJ40#Dqzmc)A;1^i;32q74lDdW1(@#irQF$>1Uixq`hf&I9wg9B!Ouf{Bg|Jr*>eO? z`h?F&D=4`pN{t5?@@4C1M<8dSWbo*G0Vq0&W;&mb;#7^9Dj_1x#EB-+8KPoCVTke- zWRlTev`$ZJO8H5~`FcD58G_09GvwbNBh()Z{!YG6Mw#gFeZ7Fo5{A6r zC!>BTgNG-hMRhrl^M9}h0{Zs<-46V-1NHxX2c~nE;ZF}{gG>tgbJ~7x_-C6oxs_j@ zr_X2f>+?ruGDs{gKZq`*aDwP;5X}o_lhMhH&xIN zY-=ZfU!w@z?W_5 zo8Z0Ia>BqsZ)*CrD-;4^2B^d+;M7$}%C7ut=E5QW=BHonX63++bmEeK_5pPOxiRT0J zN^rq|h&Ls;#Pfl9CAeTf#G4Xa;`zY55?nAK;!O!I@qA!j2`(5A@umcqcs?+%1Q!g5 zcvFH)JRg`>f(r&jyeYvYo)63`!36^%-jv`H&j;p};DP}WZ%S~9=L7RfaKV6xHzl~l z^MQFKxL`oUn-W~&`M|sqTreQwO$jdXd|+M)E*KE;rUaLGJ}|EY7YvAaQ-Vu8ADCBy z3kF2IDZwS456mmU1p^}9l;9H22j-RFf&me4N^pti1M^C7!GMT2#o|(!zS|QFhHmi; zh3@5~*-?)}_kki9_U_IA5U~sZqILto-{a70KLBjQ0KiLM=oZox0MOtb-g3hh>Wg!* zwxor%|Iw%|1z_X=Oqilf?3nhJS)J>Aeau4oZ(yS>5NdKVv!X4|^-2T4__#E1r5H$Q TOLsm1sR0KY7waM`-(CL(nvPE1 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png.meta new file mode 100644 index 00000000..d104657f --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchNavyDarkAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: a336ccf90791f9841b7e680c010d1e88 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchOrangeAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchOrangeAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..0445ad9edaaff6958865418507e8388e97c8f5b4 GIT binary patch literal 17706 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 akLb$q-r9H8L%PRYQmwjIdHBvJpZ^OU0L7UA literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchPinkDAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchPinkDAlbedo.png.meta new file mode 100644 index 00000000..f851860a --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchPinkDAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 580615edf5e29d245af58fc5fe2b06ac +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 32 + textureSettings: + filterMode: -1 + aniso: 0 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..0bd62dda85d2ccd19c1ca8d7fd3f3df0a902a3de GIT binary patch literal 17705 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 RMLkFgxH@_|6xy%e^dCA|O-ld( literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png.meta new file mode 100644 index 00000000..10cef2e3 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchTealAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 590546bcbd472d94e874f6e0c76cc266 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..e388d5088728e018a1c71065c3c04cd8bf275881 GIT binary patch literal 17709 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 ScQpVq0S6lw>td_TyZ#3)V@}5a literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png.meta new file mode 100644 index 00000000..16a0cdb3 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchTurquoiseAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 9c4d7ee42c7d4f944b2ce9d370fa265c +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 32 + textureSettings: + filterMode: -1 + aniso: 0 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..c0aa1676e40e1b1a7d4c840891a079507692b433 GIT binary patch literal 17704 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 SY=xo$fP;;Tb%E7}9sdK*DN*|X literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png.meta new file mode 100644 index 00000000..7dbf8d45 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchWhiteAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 9d0b29cecf2678b41982d2173d3670ff +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png b/Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png new file mode 100644 index 0000000000000000000000000000000000000000..84eb7ec7ca12362fe3223013c17f6baeb2a26d0e GIT binary patch literal 17256 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 JE3)0X``-=4(O3Wg literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png.meta b/Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png.meta new file mode 100644 index 00000000..066a2999 --- /dev/null +++ b/Assets/Standard Assets/Prototyping/Textures/SwatchYellowAlbedo.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: b4646ae63b0bcca40b1bdde3b87e01bf +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 32 + textureSettings: + filterMode: -1 + aniso: 0 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility.meta b/Assets/Standard Assets/Utility.meta new file mode 100644 index 00000000..17922e69 --- /dev/null +++ b/Assets/Standard Assets/Utility.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 4539eb30e895bbb41b5eae6df2dde978 +folderAsset: yes +timeCreated: 1436977288 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Utility/ActivateTrigger.cs b/Assets/Standard Assets/Utility/ActivateTrigger.cs new file mode 100644 index 00000000..16875335 --- /dev/null +++ b/Assets/Standard Assets/Utility/ActivateTrigger.cs @@ -0,0 +1,95 @@ +using System; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace UnityStandardAssets.Utility +{ + public class ActivateTrigger : MonoBehaviour + { + // A multi-purpose script which causes an action to occur when + // a trigger collider is entered. + public enum Mode + { + Trigger = 0, // Just broadcast the action on to the target + Replace = 1, // replace target with source + Activate = 2, // Activate the target GameObject + Enable = 3, // Enable a component + Animate = 4, // Start animation on target + Deactivate = 5 // Decativate target GameObject + } + + public Mode action = Mode.Activate; // The action to accomplish + public Object target; // The game object to affect. If none, the trigger work on this game object + public GameObject source; + public int triggerCount = 1; + public bool repeatTrigger = false; + + + private void DoActivateTrigger() + { + triggerCount--; + + if (triggerCount == 0 || repeatTrigger) + { + Object currentTarget = target ?? gameObject; + Behaviour targetBehaviour = currentTarget as Behaviour; + GameObject targetGameObject = currentTarget as GameObject; + if (targetBehaviour != null) + { + targetGameObject = targetBehaviour.gameObject; + } + + switch (action) + { + case Mode.Trigger: + if (targetGameObject != null) + { + targetGameObject.BroadcastMessage("DoActivateTrigger"); + } + break; + case Mode.Replace: + if (source != null) + { + if (targetGameObject != null) + { + Instantiate(source, targetGameObject.transform.position, + targetGameObject.transform.rotation); + DestroyObject(targetGameObject); + } + } + break; + case Mode.Activate: + if (targetGameObject != null) + { + targetGameObject.SetActive(true); + } + break; + case Mode.Enable: + if (targetBehaviour != null) + { + targetBehaviour.enabled = true; + } + break; + case Mode.Animate: + if (targetGameObject != null) + { + targetGameObject.GetComponent().Play(); + } + break; + case Mode.Deactivate: + if (targetGameObject != null) + { + targetGameObject.SetActive(false); + } + break; + } + } + } + + + private void OnTriggerEnter(Collider other) + { + DoActivateTrigger(); + } + } +} diff --git a/Assets/Standard Assets/Utility/ActivateTrigger.cs.meta b/Assets/Standard Assets/Utility/ActivateTrigger.cs.meta new file mode 100644 index 00000000..fd866512 --- /dev/null +++ b/Assets/Standard Assets/Utility/ActivateTrigger.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c8634e062924929664361c08745211fb +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/AlphaButtonClickMask.cs b/Assets/Standard Assets/Utility/AlphaButtonClickMask.cs new file mode 100644 index 00000000..fb9fc00c --- /dev/null +++ b/Assets/Standard Assets/Utility/AlphaButtonClickMask.cs @@ -0,0 +1,58 @@ +using UnityEngine; +using UnityEngine.UI; +using System.Collections; + +public class AlphaButtonClickMask : MonoBehaviour, ICanvasRaycastFilter +{ + protected Image _image; + + public void Start() + { + _image = GetComponent(); + + Texture2D tex = _image.sprite.texture as Texture2D; + + bool isInvalid = false; + if (tex != null) + { + try + { + tex.GetPixels32(); + } + catch (UnityException e) + { + Debug.LogError(e.Message); + isInvalid = true; + } + } + else + { + isInvalid = true; + } + + if (isInvalid) + { + Debug.LogError("This script need an Image with a readbale Texture2D to work."); + } + } + + public bool IsRaycastLocationValid(Vector2 sp, Camera eventCamera) + { + Vector2 localPoint; + RectTransformUtility.ScreenPointToLocalPointInRectangle(_image.rectTransform, sp, eventCamera, out localPoint); + + Vector2 pivot = _image.rectTransform.pivot; + Vector2 normalizedLocal = new Vector2(pivot.x + localPoint.x / _image.rectTransform.rect.width, pivot.y + localPoint.y / _image.rectTransform.rect.height); + Vector2 uv = new Vector2( + _image.sprite.rect.x + normalizedLocal.x * _image.sprite.rect.width, + _image.sprite.rect.y + normalizedLocal.y * _image.sprite.rect.height ); + + uv.x /= _image.sprite.texture.width; + uv.y /= _image.sprite.texture.height; + + //uv are inversed, as 0,0 or the rect transform seem to be upper right, then going negativ toward lower left... + Color c = _image.sprite.texture.GetPixelBilinear(uv.x, uv.y); + + return c.a> 0.1f; + } +} diff --git a/Assets/Standard Assets/Utility/AlphaButtonClickMask.cs.meta b/Assets/Standard Assets/Utility/AlphaButtonClickMask.cs.meta new file mode 100644 index 00000000..ab5053f1 --- /dev/null +++ b/Assets/Standard Assets/Utility/AlphaButtonClickMask.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 971f44ba24a74294294daed00507d80e +timeCreated: 1436868016 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs b/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs new file mode 100644 index 00000000..e101b8ca --- /dev/null +++ b/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs @@ -0,0 +1,199 @@ +using System; +using System.Collections.Generic; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace UnityStandardAssets.Utility +{ + public class AutoMobileShaderSwitch : MonoBehaviour + { + [SerializeField] private ReplacementList m_ReplacementList; + + // Use this for initialization + private void OnEnable() + { +#if UNITY_IPHONE || UNITY_ANDROID || UNITY_WP8 || UNITY_TIZEN + var renderers = FindObjectsOfType(); + Debug.Log (renderers.Length+" renderers"); + var oldMaterials = new List(); + var newMaterials = new List(); + + int materialsReplaced = 0; + int materialInstancesReplaced = 0; + + foreach(ReplacementDefinition replacementDef in m_ReplacementList.items) + { + foreach(var r in renderers) + { + Material[] modifiedMaterials = null; + for(int n=0; n 0) + { + for (int i = -1; i < items.arraySize; ++i) + { + var item = items.GetArrayElementAtIndex(i); + + float rowX = x; + for (int n = 0; n < props.Length; ++n) + { + float w = widths[n]*inspectorWidth; + + // Calculate rects + Rect rect = new Rect(rowX, y, w, lineHeight); + rowX += w; + + if (i == -1) + { + // draw title labels + EditorGUI.LabelField(rect, titles[n]); + } + else + { + if (props[n] == "-" || props[n] == "^" || props[n] == "v") + { + if (GUI.Button(rect, props[n])) + { + switch (props[n]) + { + case "-": + items.DeleteArrayElementAtIndex(i); + items.DeleteArrayElementAtIndex(i); + changedLength = true; + break; + case "v": + if (i > 0) + { + items.MoveArrayElement(i, i + 1); + } + break; + case "^": + if (i < items.arraySize - 1) + { + items.MoveArrayElement(i, i - 1); + } + break; + } + } + } + else + { + SerializedProperty prop = item.FindPropertyRelative(props[n]); + EditorGUI.PropertyField(rect, prop, GUIContent.none); + } + } + } + + y += lineHeight + k_Spacing; + if (changedLength) + { + break; + } + } + } + + // add button + var addButtonRect = new Rect((x + position.width) - widths[widths.Length - 1]*inspectorWidth, y, + widths[widths.Length - 1]*inspectorWidth, lineHeight); + if (GUI.Button(addButtonRect, "+")) + { + items.InsertArrayElementAtIndex(items.arraySize); + } + + y += lineHeight + k_Spacing; + + // Set indent back to what it was + EditorGUI.indentLevel = indent; + EditorGUI.EndProperty(); + } + + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + SerializedProperty items = property.FindPropertyRelative("items"); + float lineAndSpace = k_LineHeight + k_Spacing; + return 40 + (items.arraySize*lineAndSpace) + lineAndSpace; + } + } +#endif +} diff --git a/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs.meta b/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs.meta new file mode 100644 index 00000000..41081568 --- /dev/null +++ b/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9c4978ff6447f9040b84acc89b0bbdc8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/AutoMoveAndRotate.cs b/Assets/Standard Assets/Utility/AutoMoveAndRotate.cs new file mode 100644 index 00000000..edbce0e3 --- /dev/null +++ b/Assets/Standard Assets/Utility/AutoMoveAndRotate.cs @@ -0,0 +1,41 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class AutoMoveAndRotate : MonoBehaviour + { + public Vector3andSpace moveUnitsPerSecond; + public Vector3andSpace rotateDegreesPerSecond; + public bool ignoreTimescale; + private float m_LastRealTime; + + + private void Start() + { + m_LastRealTime = Time.realtimeSinceStartup; + } + + + // Update is called once per frame + private void Update() + { + float deltaTime = Time.deltaTime; + if (ignoreTimescale) + { + deltaTime = (Time.realtimeSinceStartup - m_LastRealTime); + m_LastRealTime = Time.realtimeSinceStartup; + } + transform.Translate(moveUnitsPerSecond.value*deltaTime, moveUnitsPerSecond.space); + transform.Rotate(rotateDegreesPerSecond.value*deltaTime, moveUnitsPerSecond.space); + } + + + [Serializable] + public class Vector3andSpace + { + public Vector3 value; + public Space space = Space.Self; + } + } +} diff --git a/Assets/Standard Assets/Utility/AutoMoveAndRotate.cs.meta b/Assets/Standard Assets/Utility/AutoMoveAndRotate.cs.meta new file mode 100644 index 00000000..30b395ac --- /dev/null +++ b/Assets/Standard Assets/Utility/AutoMoveAndRotate.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a1347817507220a4384f3ff6f7c24546 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/CameraRefocus.cs b/Assets/Standard Assets/Utility/CameraRefocus.cs new file mode 100644 index 00000000..26f1c9be --- /dev/null +++ b/Assets/Standard Assets/Utility/CameraRefocus.cs @@ -0,0 +1,58 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class CameraRefocus + { + public Camera Camera; + public Vector3 Lookatpoint; + public Transform Parent; + + private Vector3 m_OrigCameraPos; + private bool m_Refocus; + + + public CameraRefocus(Camera camera, Transform parent, Vector3 origCameraPos) + { + m_OrigCameraPos = origCameraPos; + Camera = camera; + Parent = parent; + } + + + public void ChangeCamera(Camera camera) + { + Camera = camera; + } + + + public void ChangeParent(Transform parent) + { + Parent = parent; + } + + + public void GetFocusPoint() + { + RaycastHit hitInfo; + if (Physics.Raycast(Parent.transform.position + m_OrigCameraPos, Parent.transform.forward, out hitInfo, + 100f)) + { + Lookatpoint = hitInfo.point; + m_Refocus = true; + return; + } + m_Refocus = false; + } + + + public void SetFocusPoint() + { + if (m_Refocus) + { + Camera.transform.LookAt(Lookatpoint); + } + } + } +} diff --git a/Assets/Standard Assets/Utility/CameraRefocus.cs.meta b/Assets/Standard Assets/Utility/CameraRefocus.cs.meta new file mode 100644 index 00000000..9300ded1 --- /dev/null +++ b/Assets/Standard Assets/Utility/CameraRefocus.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d1e2e7a54dcc8694ab1eca46d072f264 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/CurveControlledBob.cs b/Assets/Standard Assets/Utility/CurveControlledBob.cs new file mode 100644 index 00000000..b3951b72 --- /dev/null +++ b/Assets/Standard Assets/Utility/CurveControlledBob.cs @@ -0,0 +1,54 @@ +using System; +using UnityEngine; + + +namespace UnityStandardAssets.Utility +{ + [Serializable] + public class CurveControlledBob + { + public float HorizontalBobRange = 0.33f; + public float VerticalBobRange = 0.33f; + public AnimationCurve Bobcurve = new AnimationCurve(new Keyframe(0f, 0f), new Keyframe(0.5f, 1f), + new Keyframe(1f, 0f), new Keyframe(1.5f, -1f), + new Keyframe(2f, 0f)); // sin curve for head bob + public float VerticaltoHorizontalRatio = 1f; + + private float m_CyclePositionX; + private float m_CyclePositionY; + private float m_BobBaseInterval; + private Vector3 m_OriginalCameraPosition; + private float m_Time; + + + public void Setup(Camera camera, float bobBaseInterval) + { + m_BobBaseInterval = bobBaseInterval; + m_OriginalCameraPosition = camera.transform.localPosition; + + // get the length of the curve in time + m_Time = Bobcurve[Bobcurve.length - 1].time; + } + + + public Vector3 DoHeadBob(float speed) + { + float xPos = m_OriginalCameraPosition.x + (Bobcurve.Evaluate(m_CyclePositionX)*HorizontalBobRange); + float yPos = m_OriginalCameraPosition.y + (Bobcurve.Evaluate(m_CyclePositionY)*VerticalBobRange); + + m_CyclePositionX += (speed*Time.deltaTime)/m_BobBaseInterval; + m_CyclePositionY += ((speed*Time.deltaTime)/m_BobBaseInterval)*VerticaltoHorizontalRatio; + + if (m_CyclePositionX > m_Time) + { + m_CyclePositionX = m_CyclePositionX - m_Time; + } + if (m_CyclePositionY > m_Time) + { + m_CyclePositionY = m_CyclePositionY - m_Time; + } + + return new Vector3(xPos, yPos, 0f); + } + } +} diff --git a/Assets/Standard Assets/Utility/CurveControlledBob.cs.meta b/Assets/Standard Assets/Utility/CurveControlledBob.cs.meta new file mode 100644 index 00000000..3b9374f3 --- /dev/null +++ b/Assets/Standard Assets/Utility/CurveControlledBob.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 492f54f4accf00440828ffcb9e4fcc19 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/DragRigidbody.cs b/Assets/Standard Assets/Utility/DragRigidbody.cs new file mode 100644 index 00000000..b0f5c35e --- /dev/null +++ b/Assets/Standard Assets/Utility/DragRigidbody.cs @@ -0,0 +1,96 @@ +using System; +using System.Collections; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class DragRigidbody : MonoBehaviour + { + const float k_Spring = 50.0f; + const float k_Damper = 5.0f; + const float k_Drag = 10.0f; + const float k_AngularDrag = 5.0f; + const float k_Distance = 0.2f; + const bool k_AttachToCenterOfMass = false; + + private SpringJoint m_SpringJoint; + + + private void Update() + { + // Make sure the user pressed the mouse down + if (!Input.GetMouseButtonDown(0)) + { + return; + } + + var mainCamera = FindCamera(); + + // We need to actually hit an object + RaycastHit hit = new RaycastHit(); + if ( + !Physics.Raycast(mainCamera.ScreenPointToRay(Input.mousePosition).origin, + mainCamera.ScreenPointToRay(Input.mousePosition).direction, out hit, 100, + Physics.DefaultRaycastLayers)) + { + return; + } + // We need to hit a rigidbody that is not kinematic + if (!hit.rigidbody || hit.rigidbody.isKinematic) + { + return; + } + + if (!m_SpringJoint) + { + var go = new GameObject("Rigidbody dragger"); + Rigidbody body = go.AddComponent(); + m_SpringJoint = go.AddComponent(); + body.isKinematic = true; + } + + m_SpringJoint.transform.position = hit.point; + m_SpringJoint.anchor = Vector3.zero; + + m_SpringJoint.spring = k_Spring; + m_SpringJoint.damper = k_Damper; + m_SpringJoint.maxDistance = k_Distance; + m_SpringJoint.connectedBody = hit.rigidbody; + + StartCoroutine("DragObject", hit.distance); + } + + + private IEnumerator DragObject(float distance) + { + var oldDrag = m_SpringJoint.connectedBody.drag; + var oldAngularDrag = m_SpringJoint.connectedBody.angularDrag; + m_SpringJoint.connectedBody.drag = k_Drag; + m_SpringJoint.connectedBody.angularDrag = k_AngularDrag; + var mainCamera = FindCamera(); + while (Input.GetMouseButton(0)) + { + var ray = mainCamera.ScreenPointToRay(Input.mousePosition); + m_SpringJoint.transform.position = ray.GetPoint(distance); + yield return null; + } + if (m_SpringJoint.connectedBody) + { + m_SpringJoint.connectedBody.drag = oldDrag; + m_SpringJoint.connectedBody.angularDrag = oldAngularDrag; + m_SpringJoint.connectedBody = null; + } + } + + + private Camera FindCamera() + { + if (GetComponent()) + { + return GetComponent(); + } + + return Camera.main; + } + } +} diff --git a/Assets/Standard Assets/Utility/DragRigidbody.cs.meta b/Assets/Standard Assets/Utility/DragRigidbody.cs.meta new file mode 100644 index 00000000..42579c5c --- /dev/null +++ b/Assets/Standard Assets/Utility/DragRigidbody.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 58650e15a2607e44daa0f150e0061d89 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/DynamicShadowSettings.cs b/Assets/Standard Assets/Utility/DynamicShadowSettings.cs new file mode 100644 index 00000000..bedb5685 --- /dev/null +++ b/Assets/Standard Assets/Utility/DynamicShadowSettings.cs @@ -0,0 +1,51 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class DynamicShadowSettings : MonoBehaviour + { + public Light sunLight; + public float minHeight = 10; + public float minShadowDistance = 80; + public float minShadowBias = 1; + public float maxHeight = 1000; + public float maxShadowDistance = 10000; + public float maxShadowBias = 0.1f; + public float adaptTime = 1; + + private float m_SmoothHeight; + private float m_ChangeSpeed; + private float m_OriginalStrength = 1; + + + private void Start() + { + m_OriginalStrength = sunLight.shadowStrength; + } + + + // Update is called once per frame + private void Update() + { + Ray ray = new Ray(Camera.main.transform.position, -Vector3.up); + RaycastHit hit; + float height = transform.position.y; + if (Physics.Raycast(ray, out hit)) + { + height = hit.distance; + } + + if (Mathf.Abs(height - m_SmoothHeight) > 1) + { + m_SmoothHeight = Mathf.SmoothDamp(m_SmoothHeight, height, ref m_ChangeSpeed, adaptTime); + } + + float i = Mathf.InverseLerp(minHeight, maxHeight, m_SmoothHeight); + + QualitySettings.shadowDistance = Mathf.Lerp(minShadowDistance, maxShadowDistance, i); + sunLight.shadowBias = Mathf.Lerp(minShadowBias, maxShadowBias, 1 - ((1 - i)*(1 - i))); + sunLight.shadowStrength = Mathf.Lerp(m_OriginalStrength, 0, i); + } + } +} diff --git a/Assets/Standard Assets/Utility/DynamicShadowSettings.cs.meta b/Assets/Standard Assets/Utility/DynamicShadowSettings.cs.meta new file mode 100644 index 00000000..1bf45ee2 --- /dev/null +++ b/Assets/Standard Assets/Utility/DynamicShadowSettings.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8566902b50d5bfb4fb7f8b89f9cdbe8b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/EventSystemChecker.cs b/Assets/Standard Assets/Utility/EventSystemChecker.cs new file mode 100644 index 00000000..0401d319 --- /dev/null +++ b/Assets/Standard Assets/Utility/EventSystemChecker.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections; +using UnityEngine; +using UnityEngine.EventSystems; + +public class EventSystemChecker : MonoBehaviour +{ + //public GameObject eventSystem; + + // Use this for initialization + void Awake () + { + if(!FindObjectOfType()) + { + //Instantiate(eventSystem); + GameObject obj = new GameObject("EventSystem"); + obj.AddComponent(); + obj.AddComponent().forceModuleActive = true; + } + } +} diff --git a/Assets/Standard Assets/Utility/EventSystemChecker.cs.meta b/Assets/Standard Assets/Utility/EventSystemChecker.cs.meta new file mode 100644 index 00000000..3b131fa8 --- /dev/null +++ b/Assets/Standard Assets/Utility/EventSystemChecker.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9c0578910bbe00d43919a92c7b9893fe +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/FOVKick.cs b/Assets/Standard Assets/Utility/FOVKick.cs new file mode 100644 index 00000000..fbfab585 --- /dev/null +++ b/Assets/Standard Assets/Utility/FOVKick.cs @@ -0,0 +1,73 @@ +using System; +using System.Collections; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + [Serializable] + public class FOVKick + { + public Camera Camera; // optional camera setup, if null the main camera will be used + [HideInInspector] public float originalFov; // the original fov + public float FOVIncrease = 3f; // the amount the field of view increases when going into a run + public float TimeToIncrease = 1f; // the amount of time the field of view will increase over + public float TimeToDecrease = 1f; // the amount of time the field of view will take to return to its original size + public AnimationCurve IncreaseCurve; + + + public void Setup(Camera camera) + { + CheckStatus(camera); + + Camera = camera; + originalFov = camera.fieldOfView; + } + + + private void CheckStatus(Camera camera) + { + if (camera == null) + { + throw new Exception("FOVKick camera is null, please supply the camera to the constructor"); + } + + if (IncreaseCurve == null) + { + throw new Exception( + "FOVKick Increase curve is null, please define the curve for the field of view kicks"); + } + } + + + public void ChangeCamera(Camera camera) + { + Camera = camera; + } + + + public IEnumerator FOVKickUp() + { + float t = Mathf.Abs((Camera.fieldOfView - originalFov)/FOVIncrease); + while (t < TimeToIncrease) + { + Camera.fieldOfView = originalFov + (IncreaseCurve.Evaluate(t/TimeToIncrease)*FOVIncrease); + t += Time.deltaTime; + yield return new WaitForEndOfFrame(); + } + } + + + public IEnumerator FOVKickDown() + { + float t = Mathf.Abs((Camera.fieldOfView - originalFov)/FOVIncrease); + while (t > 0) + { + Camera.fieldOfView = originalFov + (IncreaseCurve.Evaluate(t/TimeToDecrease)*FOVIncrease); + t -= Time.deltaTime; + yield return new WaitForEndOfFrame(); + } + //make sure that fov returns to the original size + Camera.fieldOfView = originalFov; + } + } +} diff --git a/Assets/Standard Assets/Utility/FOVKick.cs.meta b/Assets/Standard Assets/Utility/FOVKick.cs.meta new file mode 100644 index 00000000..50d5df62 --- /dev/null +++ b/Assets/Standard Assets/Utility/FOVKick.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6045a93fb05b9c74884821030da2c46c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/FPSCounter.cs b/Assets/Standard Assets/Utility/FPSCounter.cs new file mode 100644 index 00000000..6f9bc541 --- /dev/null +++ b/Assets/Standard Assets/Utility/FPSCounter.cs @@ -0,0 +1,38 @@ +using System; +using UnityEngine; +using UnityEngine.UI; + +namespace UnityStandardAssets.Utility +{ + [RequireComponent(typeof (Text))] + public class FPSCounter : MonoBehaviour + { + const float fpsMeasurePeriod = 0.5f; + private int m_FpsAccumulator = 0; + private float m_FpsNextPeriod = 0; + private int m_CurrentFps; + const string display = "{0} FPS"; + private Text m_Text; + + + private void Start() + { + m_FpsNextPeriod = Time.realtimeSinceStartup + fpsMeasurePeriod; + m_Text = GetComponent(); + } + + + private void Update() + { + // measure average frames per second + m_FpsAccumulator++; + if (Time.realtimeSinceStartup > m_FpsNextPeriod) + { + m_CurrentFps = (int) (m_FpsAccumulator/fpsMeasurePeriod); + m_FpsAccumulator = 0; + m_FpsNextPeriod += fpsMeasurePeriod; + m_Text.text = string.Format(display, m_CurrentFps); + } + } + } +} diff --git a/Assets/Standard Assets/Utility/FPSCounter.cs.meta b/Assets/Standard Assets/Utility/FPSCounter.cs.meta new file mode 100644 index 00000000..8b9f3b85 --- /dev/null +++ b/Assets/Standard Assets/Utility/FPSCounter.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 22bbf57ec543cee42a5aa0ec2dd9e457 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/FollowTarget.cs b/Assets/Standard Assets/Utility/FollowTarget.cs new file mode 100644 index 00000000..e7b91d99 --- /dev/null +++ b/Assets/Standard Assets/Utility/FollowTarget.cs @@ -0,0 +1,18 @@ +using System; +using UnityEngine; + + +namespace UnityStandardAssets.Utility +{ + public class FollowTarget : MonoBehaviour + { + public Transform target; + public Vector3 offset = new Vector3(0f, 7.5f, 0f); + + + private void LateUpdate() + { + transform.position = target.position + offset; + } + } +} diff --git a/Assets/Standard Assets/Utility/FollowTarget.cs.meta b/Assets/Standard Assets/Utility/FollowTarget.cs.meta new file mode 100644 index 00000000..28aa6616 --- /dev/null +++ b/Assets/Standard Assets/Utility/FollowTarget.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 246cc59c7a84ea44f87f6b70acfe30c5 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/ForcedReset.cs b/Assets/Standard Assets/Utility/ForcedReset.cs new file mode 100644 index 00000000..82d3e87f --- /dev/null +++ b/Assets/Standard Assets/Utility/ForcedReset.cs @@ -0,0 +1,18 @@ +using System; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityStandardAssets.CrossPlatformInput; + +[RequireComponent(typeof (GUITexture))] +public class ForcedReset : MonoBehaviour +{ + private void Update() + { + // if we have forced a reset ... + if (CrossPlatformInputManager.GetButtonDown("ResetObject")) + { + //... reload the scene + SceneManager.LoadScene(SceneManager.GetSceneAt(0).name); + } + } +} diff --git a/Assets/Standard Assets/Utility/ForcedReset.cs.meta b/Assets/Standard Assets/Utility/ForcedReset.cs.meta new file mode 100644 index 00000000..56690a54 --- /dev/null +++ b/Assets/Standard Assets/Utility/ForcedReset.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9b886447cba80f74e820adb3c9e70c76 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/LerpControlledBob.cs b/Assets/Standard Assets/Utility/LerpControlledBob.cs new file mode 100644 index 00000000..8d6b92cb --- /dev/null +++ b/Assets/Standard Assets/Utility/LerpControlledBob.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + [Serializable] + public class LerpControlledBob + { + public float BobDuration; + public float BobAmount; + + private float m_Offset = 0f; + + + // provides the offset that can be used + public float Offset() + { + return m_Offset; + } + + + public IEnumerator DoBobCycle() + { + // make the camera move down slightly + float t = 0f; + while (t < BobDuration) + { + m_Offset = Mathf.Lerp(0f, BobAmount, t/BobDuration); + t += Time.deltaTime; + yield return new WaitForFixedUpdate(); + } + + // make it move back to neutral + t = 0f; + while (t < BobDuration) + { + m_Offset = Mathf.Lerp(BobAmount, 0f, t/BobDuration); + t += Time.deltaTime; + yield return new WaitForFixedUpdate(); + } + m_Offset = 0f; + } + } +} diff --git a/Assets/Standard Assets/Utility/LerpControlledBob.cs.meta b/Assets/Standard Assets/Utility/LerpControlledBob.cs.meta new file mode 100644 index 00000000..5321d93d --- /dev/null +++ b/Assets/Standard Assets/Utility/LerpControlledBob.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c1bbfafbde15c854681023b9e01e12dd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/ObjectResetter.cs b/Assets/Standard Assets/Utility/ObjectResetter.cs new file mode 100644 index 00000000..d019fa6a --- /dev/null +++ b/Assets/Standard Assets/Utility/ObjectResetter.cs @@ -0,0 +1,57 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class ObjectResetter : MonoBehaviour + { + private Vector3 originalPosition; + private Quaternion originalRotation; + private List originalStructure; + + private Rigidbody Rigidbody; + + // Use this for initialization + private void Start() + { + originalStructure = new List(GetComponentsInChildren()); + originalPosition = transform.position; + originalRotation = transform.rotation; + + Rigidbody = GetComponent(); + } + + + public void DelayedReset(float delay) + { + StartCoroutine(ResetCoroutine(delay)); + } + + + public IEnumerator ResetCoroutine(float delay) + { + yield return new WaitForSeconds(delay); + + // remove any gameobjects added (fire, skid trails, etc) + foreach (var t in GetComponentsInChildren()) + { + if (!originalStructure.Contains(t)) + { + t.parent = null; + } + } + + transform.position = originalPosition; + transform.rotation = originalRotation; + if (Rigidbody) + { + Rigidbody.velocity = Vector3.zero; + Rigidbody.angularVelocity = Vector3.zero; + } + + SendMessage("Reset"); + } + } +} diff --git a/Assets/Standard Assets/Utility/ObjectResetter.cs.meta b/Assets/Standard Assets/Utility/ObjectResetter.cs.meta new file mode 100644 index 00000000..4bcdef92 --- /dev/null +++ b/Assets/Standard Assets/Utility/ObjectResetter.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 643c971818f68d3439e84b5d8bdafe07 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs b/Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs new file mode 100644 index 00000000..fc1a1540 --- /dev/null +++ b/Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs @@ -0,0 +1,62 @@ +using System; +using System.Collections; +using UnityEngine; +using Random = UnityEngine.Random; + +namespace UnityStandardAssets.Utility +{ + public class ParticleSystemDestroyer : MonoBehaviour + { + // allows a particle system to exist for a specified duration, + // then shuts off emission, and waits for all particles to expire + // before destroying the gameObject + + public float minDuration = 8; + public float maxDuration = 10; + + private float m_MaxLifetime; + private bool m_EarlyStop; + + + private IEnumerator Start() + { + var systems = GetComponentsInChildren(); + + // find out the maximum lifetime of any particles in this effect + foreach (var system in systems) + { + m_MaxLifetime = Mathf.Max(system.main.startLifetime.constant, m_MaxLifetime); + } + + // wait for random duration + + float stopTime = Time.time + Random.Range(minDuration, maxDuration); + + while (Time.time < stopTime || m_EarlyStop) + { + yield return null; + } + Debug.Log("stopping " + name); + + // turn off emission + foreach (var system in systems) + { + var emission = system.emission; + emission.enabled = false; + } + BroadcastMessage("Extinguish", SendMessageOptions.DontRequireReceiver); + + // wait for any remaining particles to expire + yield return new WaitForSeconds(m_MaxLifetime); + + Destroy(gameObject); + } + + + public void Stop() + { + // stops the particle system early + m_EarlyStop = true; + } + } +} diff --git a/Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs.meta b/Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs.meta new file mode 100644 index 00000000..ac73e15b --- /dev/null +++ b/Assets/Standard Assets/Utility/ParticleSystemDestroyer.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 29014cd42b6d273408e0ceefd336c0b3 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/PlatformSpecificContent.cs b/Assets/Standard Assets/Utility/PlatformSpecificContent.cs new file mode 100644 index 00000000..f7c66dc8 --- /dev/null +++ b/Assets/Standard Assets/Utility/PlatformSpecificContent.cs @@ -0,0 +1,121 @@ +using System; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace UnityStandardAssets.Utility +{ +#if UNITY_EDITOR + + [ExecuteInEditMode] +#endif + public class PlatformSpecificContent : MonoBehaviour +#if UNITY_EDITOR + , UnityEditor.Build.IActiveBuildTargetChanged +#endif + { + private enum BuildTargetGroup + { + Standalone, + Mobile + } + + [SerializeField] private BuildTargetGroup m_BuildTargetGroup; + [SerializeField] private GameObject[] m_Content = new GameObject[0]; + [SerializeField] private MonoBehaviour[] m_MonoBehaviours = new MonoBehaviour[0]; + [SerializeField] private bool m_ChildrenOfThisObject; + +#if !UNITY_EDITOR + void OnEnable() + { + CheckEnableContent(); + } +#else + public int callbackOrder + { + get + { + return 1; + } + } +#endif + +#if UNITY_EDITOR + + private void OnEnable() + { + EditorApplication.update += Update; + } + + + private void OnDisable() + { + EditorApplication.update -= Update; + } + + public void OnActiveBuildTargetChanged(BuildTarget previousTarget, BuildTarget newTarget) + { + CheckEnableContent(); + } + + private void Update() + { + CheckEnableContent(); + } +#endif + + + private void CheckEnableContent() + { +#if (UNITY_IPHONE || UNITY_ANDROID || UNITY_WP8 || UNITY_TIZEN) + if (m_BuildTargetGroup == BuildTargetGroup.Mobile) + { + EnableContent(true); + } else { + EnableContent(false); + } +#endif + +#if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_WP8 || UNITY_TIZEN) + if (m_BuildTargetGroup == BuildTargetGroup.Mobile) + { + EnableContent(false); + } + else + { + EnableContent(true); + } +#endif + } + + + private void EnableContent(bool enabled) + { + if (m_Content.Length > 0) + { + foreach (var g in m_Content) + { + if (g != null) + { + g.SetActive(enabled); + } + } + } + if (m_ChildrenOfThisObject) + { + foreach (Transform t in transform) + { + t.gameObject.SetActive(enabled); + } + } + if (m_MonoBehaviours.Length > 0) + { + foreach (var monoBehaviour in m_MonoBehaviours) + { + monoBehaviour.enabled = enabled; + } + } + } + } +} diff --git a/Assets/Standard Assets/Utility/PlatformSpecificContent.cs.meta b/Assets/Standard Assets/Utility/PlatformSpecificContent.cs.meta new file mode 100644 index 00000000..55d1acbc --- /dev/null +++ b/Assets/Standard Assets/Utility/PlatformSpecificContent.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b27507c5d0efbbd47ac8c1de9a1a0a35 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/Prefabs.meta b/Assets/Standard Assets/Utility/Prefabs.meta new file mode 100644 index 00000000..161603d0 --- /dev/null +++ b/Assets/Standard Assets/Utility/Prefabs.meta @@ -0,0 +1,6 @@ +fileFormatVersion: 2 +guid: b43a4ef15621158419a2b639f7a98245 +folderAsset: yes +DefaultImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab b/Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab new file mode 100644 index 00000000..ac9ce8dd --- /dev/null +++ b/Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab @@ -0,0 +1,183 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22409990} + - 223: {fileID: 22323452} + - 114: {fileID: 11403178} + - 114: {fileID: 11448042} + m_Layer: 5 + m_Name: FramerateCounter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &167734 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22488988} + - 222: {fileID: 22250932} + - 114: {fileID: 11410038} + - 114: {fileID: 11400482} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11400482 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 167734} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 22bbf57ec543cee42a5aa0ec2dd9e457, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11403178 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!114 &11410038 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 167734} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: .196078435, g: .196078435, b: .196078435, a: 1} + m_FontData: + m_Font: {fileID: 12800000, guid: b51a3e520f9164da198dc59c8acfccd6, type: 3} + m_FontSize: 18 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_RichText: 0 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'FPS + +' +--- !u!114 &11448042 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!222 &22250932 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 167734} +--- !u!223 &22323452 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22409990 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22488988} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22488988 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 167734} + 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: 22409990} + m_RootOrder: 0 + m_AnchorMin: {x: .5, y: 1} + m_AnchorMax: {x: .5, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: .5, y: 1} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab.meta b/Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab.meta new file mode 100644 index 00000000..7b185b7c --- /dev/null +++ b/Assets/Standard Assets/Utility/Prefabs/FramerateCounter.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 81154777d5417884981849c5243f6c01 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/SimpleActivatorMenu.cs b/Assets/Standard Assets/Utility/SimpleActivatorMenu.cs new file mode 100644 index 00000000..bab71fcc --- /dev/null +++ b/Assets/Standard Assets/Utility/SimpleActivatorMenu.cs @@ -0,0 +1,38 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class SimpleActivatorMenu : MonoBehaviour + { + // An incredibly simple menu which, when given references + // to gameobjects in the scene + public GUIText camSwitchButton; + public GameObject[] objects; + + + private int m_CurrentActiveObject; + + + private void OnEnable() + { + // active object starts from first in array + m_CurrentActiveObject = 0; + camSwitchButton.text = objects[m_CurrentActiveObject].name; + } + + + public void NextCamera() + { + int nextactiveobject = m_CurrentActiveObject + 1 >= objects.Length ? 0 : m_CurrentActiveObject + 1; + + for (int i = 0; i < objects.Length; i++) + { + objects[i].SetActive(i == nextactiveobject); + } + + m_CurrentActiveObject = nextactiveobject; + camSwitchButton.text = objects[m_CurrentActiveObject].name; + } + } +} diff --git a/Assets/Standard Assets/Utility/SimpleActivatorMenu.cs.meta b/Assets/Standard Assets/Utility/SimpleActivatorMenu.cs.meta new file mode 100644 index 00000000..45823d10 --- /dev/null +++ b/Assets/Standard Assets/Utility/SimpleActivatorMenu.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 69b69a5b0e0a85b4aa97a7edc40c37d1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/SimpleMouseRotator.cs b/Assets/Standard Assets/Utility/SimpleMouseRotator.cs new file mode 100644 index 00000000..5b1ef5ae --- /dev/null +++ b/Assets/Standard Assets/Utility/SimpleMouseRotator.cs @@ -0,0 +1,113 @@ +using System; +using UnityEngine; +using UnityStandardAssets.CrossPlatformInput; + +namespace UnityStandardAssets.Utility +{ + public class SimpleMouseRotator : MonoBehaviour + { + // A mouselook behaviour with constraints which operate relative to + // this gameobject's initial rotation. + // Only rotates around local X and Y. + // Works in local coordinates, so if this object is parented + // to another moving gameobject, its local constraints will + // operate correctly + // (Think: looking out the side window of a car, or a gun turret + // on a moving spaceship with a limited angular range) + // to have no constraints on an axis, set the rotationRange to 360 or greater. + public Vector2 rotationRange = new Vector3(70, 70); + public float rotationSpeed = 10; + public float dampingTime = 0.2f; + public bool autoZeroVerticalOnMobile = true; + public bool autoZeroHorizontalOnMobile = false; + public bool relative = true; + + + private Vector3 m_TargetAngles; + private Vector3 m_FollowAngles; + private Vector3 m_FollowVelocity; + private Quaternion m_OriginalRotation; + + + private void Start() + { + m_OriginalRotation = transform.localRotation; + } + + + private void Update() + { + // we make initial calculations from the original local rotation + transform.localRotation = m_OriginalRotation; + + // read input from mouse or mobile controls + float inputH; + float inputV; + if (relative) + { + inputH = CrossPlatformInputManager.GetAxis("Mouse X"); + inputV = CrossPlatformInputManager.GetAxis("Mouse Y"); + + // wrap values to avoid springing quickly the wrong way from positive to negative + if (m_TargetAngles.y > 180) + { + m_TargetAngles.y -= 360; + m_FollowAngles.y -= 360; + } + if (m_TargetAngles.x > 180) + { + m_TargetAngles.x -= 360; + m_FollowAngles.x -= 360; + } + if (m_TargetAngles.y < -180) + { + m_TargetAngles.y += 360; + m_FollowAngles.y += 360; + } + if (m_TargetAngles.x < -180) + { + m_TargetAngles.x += 360; + m_FollowAngles.x += 360; + } + +#if MOBILE_INPUT + // on mobile, sometimes we want input mapped directly to tilt value, + // so it springs back automatically when the look input is released. + if (autoZeroHorizontalOnMobile) { + m_TargetAngles.y = Mathf.Lerp (-rotationRange.y * 0.5f, rotationRange.y * 0.5f, inputH * .5f + .5f); + } else { + m_TargetAngles.y += inputH * rotationSpeed; + } + if (autoZeroVerticalOnMobile) { + m_TargetAngles.x = Mathf.Lerp (-rotationRange.x * 0.5f, rotationRange.x * 0.5f, inputV * .5f + .5f); + } else { + m_TargetAngles.x += inputV * rotationSpeed; + } +#else + // with mouse input, we have direct control with no springback required. + m_TargetAngles.y += inputH*rotationSpeed; + m_TargetAngles.x += inputV*rotationSpeed; +#endif + + // clamp values to allowed range + m_TargetAngles.y = Mathf.Clamp(m_TargetAngles.y, -rotationRange.y*0.5f, rotationRange.y*0.5f); + m_TargetAngles.x = Mathf.Clamp(m_TargetAngles.x, -rotationRange.x*0.5f, rotationRange.x*0.5f); + } + else + { + inputH = Input.mousePosition.x; + inputV = Input.mousePosition.y; + + // set values to allowed range + m_TargetAngles.y = Mathf.Lerp(-rotationRange.y*0.5f, rotationRange.y*0.5f, inputH/Screen.width); + m_TargetAngles.x = Mathf.Lerp(-rotationRange.x*0.5f, rotationRange.x*0.5f, inputV/Screen.height); + } + + // smoothly interpolate current values to target angles + m_FollowAngles = Vector3.SmoothDamp(m_FollowAngles, m_TargetAngles, ref m_FollowVelocity, dampingTime); + + // update the actual gameobject's rotation + transform.localRotation = m_OriginalRotation*Quaternion.Euler(-m_FollowAngles.x, m_FollowAngles.y, 0); + } + } +} diff --git a/Assets/Standard Assets/Utility/SimpleMouseRotator.cs.meta b/Assets/Standard Assets/Utility/SimpleMouseRotator.cs.meta new file mode 100644 index 00000000..4c2b617d --- /dev/null +++ b/Assets/Standard Assets/Utility/SimpleMouseRotator.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: cadd54e4832aeef4b9359f44cbe335cd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/SmoothFollow.cs b/Assets/Standard Assets/Utility/SmoothFollow.cs new file mode 100644 index 00000000..01881dc9 --- /dev/null +++ b/Assets/Standard Assets/Utility/SmoothFollow.cs @@ -0,0 +1,61 @@ +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class SmoothFollow : MonoBehaviour + { + + // The target we are following + [SerializeField] + private Transform target; + // The distance in the x-z plane to the target + [SerializeField] + private float distance = 10.0f; + // the height we want the camera to be above the target + [SerializeField] + private float height = 5.0f; + + [SerializeField] + private float rotationDamping; + [SerializeField] + private float heightDamping; + + // Use this for initialization + void Start() { } + + // Update is called once per frame + void LateUpdate() + { + // Early out if we don't have a target + if (!target) + return; + + // Calculate the current rotation angles + var wantedRotationAngle = target.eulerAngles.y; + var wantedHeight = target.position.y + height; + + var currentRotationAngle = transform.eulerAngles.y; + var currentHeight = transform.position.y; + + // Damp the rotation around the y-axis + currentRotationAngle = Mathf.LerpAngle(currentRotationAngle, wantedRotationAngle, rotationDamping * Time.deltaTime); + + // Damp the height + currentHeight = Mathf.Lerp(currentHeight, wantedHeight, heightDamping * Time.deltaTime); + + // Convert the angle into a rotation + var currentRotation = Quaternion.Euler(0, currentRotationAngle, 0); + + // Set the position of the camera on the x-z plane to: + // distance meters behind the target + transform.position = target.position; + transform.position -= currentRotation * Vector3.forward * distance; + + // Set the height of the camera + transform.position = new Vector3(transform.position.x ,currentHeight , transform.position.z); + + // Always look at the target + transform.LookAt(target); + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/Utility/SmoothFollow.cs.meta b/Assets/Standard Assets/Utility/SmoothFollow.cs.meta new file mode 100644 index 00000000..8e0ee922 --- /dev/null +++ b/Assets/Standard Assets/Utility/SmoothFollow.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f76806479d916a64aa03f8e3eba7912f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/TimedObjectActivator.cs b/Assets/Standard Assets/Utility/TimedObjectActivator.cs new file mode 100644 index 00000000..7c0b13be --- /dev/null +++ b/Assets/Standard Assets/Utility/TimedObjectActivator.cs @@ -0,0 +1,216 @@ +using System; +using System.Collections; +using UnityEngine; +using UnityEngine.SceneManagement; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace UnityStandardAssets.Utility +{ + public class TimedObjectActivator : MonoBehaviour + { + public enum Action + { + Activate, + Deactivate, + Destroy, + ReloadLevel, + Call, + } + + + [Serializable] + public class Entry + { + public GameObject target; + public Action action; + public float delay; + } + + + [Serializable] + public class Entries + { + public Entry[] entries; + } + + + public Entries entries = new Entries(); + + + private void Awake() + { + foreach (Entry entry in entries.entries) + { + switch (entry.action) + { + case Action.Activate: + StartCoroutine(Activate(entry)); + break; + case Action.Deactivate: + StartCoroutine(Deactivate(entry)); + break; + case Action.Destroy: + Destroy(entry.target, entry.delay); + break; + + case Action.ReloadLevel: + StartCoroutine(ReloadLevel(entry)); + break; + } + } + } + + + private IEnumerator Activate(Entry entry) + { + yield return new WaitForSeconds(entry.delay); + entry.target.SetActive(true); + } + + + private IEnumerator Deactivate(Entry entry) + { + yield return new WaitForSeconds(entry.delay); + entry.target.SetActive(false); + } + + + private IEnumerator ReloadLevel(Entry entry) + { + yield return new WaitForSeconds(entry.delay); + SceneManager.LoadScene(SceneManager.GetSceneAt(0).name); + } + } +} + + +namespace UnityStandardAssets.Utility.Inspector +{ +#if UNITY_EDITOR + [CustomPropertyDrawer(typeof (TimedObjectActivator.Entries))] + public class EntriesDrawer : PropertyDrawer + { + private const float k_LineHeight = 18; + private const float k_Spacing = 4; + + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + EditorGUI.BeginProperty(position, label, property); + + float x = position.x; + float y = position.y; + float width = position.width; + + // Draw label + EditorGUI.PrefixLabel(position, GUIUtility.GetControlID(FocusType.Passive), label); + + // Don't make child fields be indented + var indent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + var entries = property.FindPropertyRelative("entries"); + + if (entries.arraySize > 0) + { + float actionWidth = .25f*width; + float targetWidth = .6f*width; + float delayWidth = .1f*width; + float buttonWidth = .05f*width; + + for (int i = 0; i < entries.arraySize; ++i) + { + y += k_LineHeight + k_Spacing; + + var entry = entries.GetArrayElementAtIndex(i); + + float rowX = x; + + // Calculate rects + Rect actionRect = new Rect(rowX, y, actionWidth, k_LineHeight); + rowX += actionWidth; + + Rect targetRect = new Rect(rowX, y, targetWidth, k_LineHeight); + rowX += targetWidth; + + Rect delayRect = new Rect(rowX, y, delayWidth, k_LineHeight); + rowX += delayWidth; + + Rect buttonRect = new Rect(rowX, y, buttonWidth, k_LineHeight); + rowX += buttonWidth; + + // Draw fields - passs GUIContent.none to each so they are drawn without labels + + if (entry.FindPropertyRelative("action").enumValueIndex != + (int) TimedObjectActivator.Action.ReloadLevel) + { + EditorGUI.PropertyField(actionRect, entry.FindPropertyRelative("action"), GUIContent.none); + EditorGUI.PropertyField(targetRect, entry.FindPropertyRelative("target"), GUIContent.none); + } + else + { + actionRect.width = actionRect.width + targetRect.width; + EditorGUI.PropertyField(actionRect, entry.FindPropertyRelative("action"), GUIContent.none); + } + + EditorGUI.PropertyField(delayRect, entry.FindPropertyRelative("delay"), GUIContent.none); + if (GUI.Button(buttonRect, "-")) + { + entries.DeleteArrayElementAtIndex(i); + break; + } + } + } + + // add & sort buttons + y += k_LineHeight + k_Spacing; + + var addButtonRect = new Rect(position.x + position.width - 120, y, 60, k_LineHeight); + if (GUI.Button(addButtonRect, "Add")) + { + entries.InsertArrayElementAtIndex(entries.arraySize); + } + + var sortButtonRect = new Rect(position.x + position.width - 60, y, 60, k_LineHeight); + if (GUI.Button(sortButtonRect, "Sort")) + { + bool changed = true; + while (entries.arraySize > 1 && changed) + { + changed = false; + for (int i = 0; i < entries.arraySize - 1; ++i) + { + var e1 = entries.GetArrayElementAtIndex(i); + var e2 = entries.GetArrayElementAtIndex(i + 1); + + if (e1.FindPropertyRelative("delay").floatValue > e2.FindPropertyRelative("delay").floatValue) + { + entries.MoveArrayElement(i + 1, i); + changed = true; + break; + } + } + } + } + + + // Set indent back to what it was + EditorGUI.indentLevel = indent; + // + + + EditorGUI.EndProperty(); + } + + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + SerializedProperty entries = property.FindPropertyRelative("entries"); + float lineAndSpace = k_LineHeight + k_Spacing; + return 40 + (entries.arraySize*lineAndSpace) + lineAndSpace; + } + } +#endif +} diff --git a/Assets/Standard Assets/Utility/TimedObjectActivator.cs.meta b/Assets/Standard Assets/Utility/TimedObjectActivator.cs.meta new file mode 100644 index 00000000..e2fd0fcd --- /dev/null +++ b/Assets/Standard Assets/Utility/TimedObjectActivator.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3a7cedf246fca744f90cbdc9dbe41166 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/TimedObjectDestructor.cs b/Assets/Standard Assets/Utility/TimedObjectDestructor.cs new file mode 100644 index 00000000..fdf5e078 --- /dev/null +++ b/Assets/Standard Assets/Utility/TimedObjectDestructor.cs @@ -0,0 +1,27 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class TimedObjectDestructor : MonoBehaviour + { + [SerializeField] private float m_TimeOut = 1.0f; + [SerializeField] private bool m_DetachChildren = false; + + + private void Awake() + { + Invoke("DestroyNow", m_TimeOut); + } + + + private void DestroyNow() + { + if (m_DetachChildren) + { + transform.DetachChildren(); + } + DestroyObject(gameObject); + } + } +} diff --git a/Assets/Standard Assets/Utility/TimedObjectDestructor.cs.meta b/Assets/Standard Assets/Utility/TimedObjectDestructor.cs.meta new file mode 100644 index 00000000..9dec4d41 --- /dev/null +++ b/Assets/Standard Assets/Utility/TimedObjectDestructor.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 37fac21d1f093d344816942d1abce94e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/WaypointCircuit.cs b/Assets/Standard Assets/Utility/WaypointCircuit.cs new file mode 100644 index 00000000..4f483fa3 --- /dev/null +++ b/Assets/Standard Assets/Utility/WaypointCircuit.cs @@ -0,0 +1,384 @@ +using System; +using System.Collections; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; + +#endif + +namespace UnityStandardAssets.Utility +{ + public class WaypointCircuit : MonoBehaviour + { + public WaypointList waypointList = new WaypointList(); + [SerializeField] private bool smoothRoute = true; + private int numPoints; + private Vector3[] points; + private float[] distances; + + public float editorVisualisationSubsteps = 100; + public float Length { get; private set; } + + public Transform[] Waypoints + { + get { return waypointList.items; } + } + + //this being here will save GC allocs + private int p0n; + private int p1n; + private int p2n; + private int p3n; + + private float i; + private Vector3 P0; + private Vector3 P1; + private Vector3 P2; + private Vector3 P3; + + // Use this for initialization + private void Awake() + { + if (Waypoints.Length > 1) + { + CachePositionsAndDistances(); + } + numPoints = Waypoints.Length; + } + + + public RoutePoint GetRoutePoint(float dist) + { + // position and direction + Vector3 p1 = GetRoutePosition(dist); + Vector3 p2 = GetRoutePosition(dist + 0.1f); + Vector3 delta = p2 - p1; + return new RoutePoint(p1, delta.normalized); + } + + + public Vector3 GetRoutePosition(float dist) + { + int point = 0; + + if (Length == 0) + { + Length = distances[distances.Length - 1]; + } + + dist = Mathf.Repeat(dist, Length); + + while (distances[point] < dist) + { + ++point; + } + + + // get nearest two points, ensuring points wrap-around start & end of circuit + p1n = ((point - 1) + numPoints)%numPoints; + p2n = point; + + // found point numbers, now find interpolation value between the two middle points + + i = Mathf.InverseLerp(distances[p1n], distances[p2n], dist); + + if (smoothRoute) + { + // smooth catmull-rom calculation between the two relevant points + + + // get indices for the surrounding 2 points, because + // four points are required by the catmull-rom function + p0n = ((point - 2) + numPoints)%numPoints; + p3n = (point + 1)%numPoints; + + // 2nd point may have been the 'last' point - a dupe of the first, + // (to give a value of max track distance instead of zero) + // but now it must be wrapped back to zero if that was the case. + p2n = p2n%numPoints; + + P0 = points[p0n]; + P1 = points[p1n]; + P2 = points[p2n]; + P3 = points[p3n]; + + return CatmullRom(P0, P1, P2, P3, i); + } + else + { + // simple linear lerp between the two points: + + p1n = ((point - 1) + numPoints)%numPoints; + p2n = point; + + return Vector3.Lerp(points[p1n], points[p2n], i); + } + } + + + private Vector3 CatmullRom(Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3, float i) + { + // comments are no use here... it's the catmull-rom equation. + // Un-magic this, lord vector! + return 0.5f* + ((2*p1) + (-p0 + p2)*i + (2*p0 - 5*p1 + 4*p2 - p3)*i*i + + (-p0 + 3*p1 - 3*p2 + p3)*i*i*i); + } + + + private void CachePositionsAndDistances() + { + // transfer the position of each point and distances between points to arrays for + // speed of lookup at runtime + points = new Vector3[Waypoints.Length + 1]; + distances = new float[Waypoints.Length + 1]; + + float accumulateDistance = 0; + for (int i = 0; i < points.Length; ++i) + { + var t1 = Waypoints[(i)%Waypoints.Length]; + var t2 = Waypoints[(i + 1)%Waypoints.Length]; + if (t1 != null && t2 != null) + { + Vector3 p1 = t1.position; + Vector3 p2 = t2.position; + points[i] = Waypoints[i%Waypoints.Length].position; + distances[i] = accumulateDistance; + accumulateDistance += (p1 - p2).magnitude; + } + } + } + + + private void OnDrawGizmos() + { + DrawGizmos(false); + } + + + private void OnDrawGizmosSelected() + { + DrawGizmos(true); + } + + + private void DrawGizmos(bool selected) + { + waypointList.circuit = this; + if (Waypoints.Length > 1) + { + numPoints = Waypoints.Length; + + CachePositionsAndDistances(); + Length = distances[distances.Length - 1]; + + Gizmos.color = selected ? Color.yellow : new Color(1, 1, 0, 0.5f); + Vector3 prev = Waypoints[0].position; + if (smoothRoute) + { + for (float dist = 0; dist < Length; dist += Length/editorVisualisationSubsteps) + { + Vector3 next = GetRoutePosition(dist + 1); + Gizmos.DrawLine(prev, next); + prev = next; + } + Gizmos.DrawLine(prev, Waypoints[0].position); + } + else + { + for (int n = 0; n < Waypoints.Length; ++n) + { + Vector3 next = Waypoints[(n + 1)%Waypoints.Length].position; + Gizmos.DrawLine(prev, next); + prev = next; + } + } + } + } + + + [Serializable] + public class WaypointList + { + public WaypointCircuit circuit; + public Transform[] items = new Transform[0]; + } + + public struct RoutePoint + { + public Vector3 position; + public Vector3 direction; + + + public RoutePoint(Vector3 position, Vector3 direction) + { + this.position = position; + this.direction = direction; + } + } + } +} + +namespace UnityStandardAssets.Utility.Inspector +{ +#if UNITY_EDITOR + [CustomPropertyDrawer(typeof (WaypointCircuit.WaypointList))] + public class WaypointListDrawer : PropertyDrawer + { + private float lineHeight = 18; + private float spacing = 4; + + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + EditorGUI.BeginProperty(position, label, property); + + float x = position.x; + float y = position.y; + float inspectorWidth = position.width; + + // Draw label + + + // Don't make child fields be indented + var indent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + var items = property.FindPropertyRelative("items"); + var titles = new string[] {"Transform", "", "", ""}; + var props = new string[] {"transform", "^", "v", "-"}; + var widths = new float[] {.7f, .1f, .1f, .1f}; + float lineHeight = 18; + bool changedLength = false; + if (items.arraySize > 0) + { + for (int i = -1; i < items.arraySize; ++i) + { + var item = items.GetArrayElementAtIndex(i); + + float rowX = x; + for (int n = 0; n < props.Length; ++n) + { + float w = widths[n]*inspectorWidth; + + // Calculate rects + Rect rect = new Rect(rowX, y, w, lineHeight); + rowX += w; + + if (i == -1) + { + EditorGUI.LabelField(rect, titles[n]); + } + else + { + if (n == 0) + { + EditorGUI.ObjectField(rect, item.objectReferenceValue, typeof (Transform), true); + } + else + { + if (GUI.Button(rect, props[n])) + { + switch (props[n]) + { + case "-": + items.DeleteArrayElementAtIndex(i); + items.DeleteArrayElementAtIndex(i); + changedLength = true; + break; + case "v": + if (i > 0) + { + items.MoveArrayElement(i, i + 1); + } + break; + case "^": + if (i < items.arraySize - 1) + { + items.MoveArrayElement(i, i - 1); + } + break; + } + } + } + } + } + + y += lineHeight + spacing; + if (changedLength) + { + break; + } + } + } + else + { + // add button + var addButtonRect = new Rect((x + position.width) - widths[widths.Length - 1]*inspectorWidth, y, + widths[widths.Length - 1]*inspectorWidth, lineHeight); + if (GUI.Button(addButtonRect, "+")) + { + items.InsertArrayElementAtIndex(items.arraySize); + } + + y += lineHeight + spacing; + } + + // add all button + var addAllButtonRect = new Rect(x, y, inspectorWidth, lineHeight); + if (GUI.Button(addAllButtonRect, "Assign using all child objects")) + { + var circuit = property.FindPropertyRelative("circuit").objectReferenceValue as WaypointCircuit; + var children = new Transform[circuit.transform.childCount]; + int n = 0; + foreach (Transform child in circuit.transform) + { + children[n++] = child; + } + Array.Sort(children, new TransformNameComparer()); + circuit.waypointList.items = new Transform[children.Length]; + for (n = 0; n < children.Length; ++n) + { + circuit.waypointList.items[n] = children[n]; + } + } + y += lineHeight + spacing; + + // rename all button + var renameButtonRect = new Rect(x, y, inspectorWidth, lineHeight); + if (GUI.Button(renameButtonRect, "Auto Rename numerically from this order")) + { + var circuit = property.FindPropertyRelative("circuit").objectReferenceValue as WaypointCircuit; + int n = 0; + foreach (Transform child in circuit.waypointList.items) + { + child.name = "Waypoint " + (n++).ToString("000"); + } + } + y += lineHeight + spacing; + + // Set indent back to what it was + EditorGUI.indentLevel = indent; + EditorGUI.EndProperty(); + } + + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + SerializedProperty items = property.FindPropertyRelative("items"); + float lineAndSpace = lineHeight + spacing; + return 40 + (items.arraySize*lineAndSpace) + lineAndSpace; + } + + + // comparer for check distances in ray cast hits + public class TransformNameComparer : IComparer + { + public int Compare(object x, object y) + { + return ((Transform) x).name.CompareTo(((Transform) y).name); + } + } + } +#endif +} diff --git a/Assets/Standard Assets/Utility/WaypointCircuit.cs.meta b/Assets/Standard Assets/Utility/WaypointCircuit.cs.meta new file mode 100644 index 00000000..7dd72d7f --- /dev/null +++ b/Assets/Standard Assets/Utility/WaypointCircuit.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 70852dc981465ea48bb527b9e33a87fd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Utility/WaypointProgressTracker.cs b/Assets/Standard Assets/Utility/WaypointProgressTracker.cs new file mode 100644 index 00000000..750b779f --- /dev/null +++ b/Assets/Standard Assets/Utility/WaypointProgressTracker.cs @@ -0,0 +1,152 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.Utility +{ + public class WaypointProgressTracker : MonoBehaviour + { + // This script can be used with any object that is supposed to follow a + // route marked out by waypoints. + + // This script manages the amount to look ahead along the route, + // and keeps track of progress and laps. + + [SerializeField] private WaypointCircuit circuit; // A reference to the waypoint-based route we should follow + + [SerializeField] private float lookAheadForTargetOffset = 5; + // The offset ahead along the route that the we will aim for + + [SerializeField] private float lookAheadForTargetFactor = .1f; + // A multiplier adding distance ahead along the route to aim for, based on current speed + + [SerializeField] private float lookAheadForSpeedOffset = 10; + // The offset ahead only the route for speed adjustments (applied as the rotation of the waypoint target transform) + + [SerializeField] private float lookAheadForSpeedFactor = .2f; + // A multiplier adding distance ahead along the route for speed adjustments + + [SerializeField] private ProgressStyle progressStyle = ProgressStyle.SmoothAlongRoute; + // whether to update the position smoothly along the route (good for curved paths) or just when we reach each waypoint. + + [SerializeField] private float pointToPointThreshold = 4; + // proximity to waypoint which must be reached to switch target to next waypoint : only used in PointToPoint mode. + + public enum ProgressStyle + { + SmoothAlongRoute, + PointToPoint, + } + + // these are public, readable by other objects - i.e. for an AI to know where to head! + public WaypointCircuit.RoutePoint targetPoint { get; private set; } + public WaypointCircuit.RoutePoint speedPoint { get; private set; } + public WaypointCircuit.RoutePoint progressPoint { get; private set; } + + public Transform target; + + private float progressDistance; // The progress round the route, used in smooth mode. + private int progressNum; // the current waypoint number, used in point-to-point mode. + private Vector3 lastPosition; // Used to calculate current speed (since we may not have a rigidbody component) + private float speed; // current speed of this object (calculated from delta since last frame) + + // setup script properties + private void Start() + { + // we use a transform to represent the point to aim for, and the point which + // is considered for upcoming changes-of-speed. This allows this component + // to communicate this information to the AI without requiring further dependencies. + + // You can manually create a transform and assign it to this component *and* the AI, + // then this component will update it, and the AI can read it. + if (target == null) + { + target = new GameObject(name + " Waypoint Target").transform; + } + + Reset(); + } + + + // reset the object to sensible values + public void Reset() + { + progressDistance = 0; + progressNum = 0; + if (progressStyle == ProgressStyle.PointToPoint) + { + target.position = circuit.Waypoints[progressNum].position; + target.rotation = circuit.Waypoints[progressNum].rotation; + } + } + + + private void Update() + { + if (progressStyle == ProgressStyle.SmoothAlongRoute) + { + // determine the position we should currently be aiming for + // (this is different to the current progress position, it is a a certain amount ahead along the route) + // we use lerp as a simple way of smoothing out the speed over time. + if (Time.deltaTime > 0) + { + speed = Mathf.Lerp(speed, (lastPosition - transform.position).magnitude/Time.deltaTime, + Time.deltaTime); + } + target.position = + circuit.GetRoutePoint(progressDistance + lookAheadForTargetOffset + lookAheadForTargetFactor*speed) + .position; + target.rotation = + Quaternion.LookRotation( + circuit.GetRoutePoint(progressDistance + lookAheadForSpeedOffset + lookAheadForSpeedFactor*speed) + .direction); + + + // get our current progress along the route + progressPoint = circuit.GetRoutePoint(progressDistance); + Vector3 progressDelta = progressPoint.position - transform.position; + if (Vector3.Dot(progressDelta, progressPoint.direction) < 0) + { + progressDistance += progressDelta.magnitude*0.5f; + } + + lastPosition = transform.position; + } + else + { + // point to point mode. Just increase the waypoint if we're close enough: + + Vector3 targetDelta = target.position - transform.position; + if (targetDelta.magnitude < pointToPointThreshold) + { + progressNum = (progressNum + 1)%circuit.Waypoints.Length; + } + + + target.position = circuit.Waypoints[progressNum].position; + target.rotation = circuit.Waypoints[progressNum].rotation; + + // get our current progress along the route + progressPoint = circuit.GetRoutePoint(progressDistance); + Vector3 progressDelta = progressPoint.position - transform.position; + if (Vector3.Dot(progressDelta, progressPoint.direction) < 0) + { + progressDistance += progressDelta.magnitude; + } + lastPosition = transform.position; + } + } + + + private void OnDrawGizmos() + { + if (Application.isPlaying) + { + Gizmos.color = Color.green; + Gizmos.DrawLine(transform.position, target.position); + Gizmos.DrawWireSphere(circuit.GetRoutePosition(progressDistance), 1); + Gizmos.color = Color.yellow; + Gizmos.DrawLine(target.position, target.position + target.forward); + } + } + } +} diff --git a/Assets/Standard Assets/Utility/WaypointProgressTracker.cs.meta b/Assets/Standard Assets/Utility/WaypointProgressTracker.cs.meta new file mode 100644 index 00000000..79b21ef9 --- /dev/null +++ b/Assets/Standard Assets/Utility/WaypointProgressTracker.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c5cb22d331ef7d64796f917c6a455a32 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 7d5c70d0..b9ee9b77 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -3,10 +3,11 @@ --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 - serializedVersion: 14 + serializedVersion: 15 productGUID: 47d9f350ed27d4ecaa6699f3ebe641c8 AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 + AndroidEnableSustainedPerformanceMode: 0 defaultScreenOrientation: 2 targetDevice: 2 useOnDemandResources: 0 @@ -64,7 +65,6 @@ PlayerSettings: preserveFramebufferAlpha: 0 disableDepthAndStencilBuffers: 0 androidBlitType: 0 - defaultIsFullScreen: 0 defaultIsNativeResolution: 1 macRetinaSupport: 1 runInBackground: 1 @@ -91,8 +91,7 @@ PlayerSettings: visibleInBackground: 0 allowFullscreenSwitch: 1 graphicsJobMode: 0 - macFullscreenMode: 2 - d3d11FullscreenMode: 1 + fullscreenMode: 1 xboxSpeechDB: 0 xboxEnableHeadOrientation: 0 xboxEnableGuest: 0 @@ -108,18 +107,10 @@ PlayerSettings: xboxOneLoggingLevel: 1 xboxOneDisableEsram: 0 xboxOnePresentImmediateThreshold: 0 + switchQueueCommandMemory: 0 videoMemoryForVertexBuffers: 0 psp2PowerMode: 0 psp2AcquireBGM: 1 - wiiUTVResolution: 0 - wiiUGamePadMSAA: 1 - wiiUSupportsNunchuk: 0 - wiiUSupportsClassicController: 0 - wiiUSupportsBalanceBoard: 0 - wiiUSupportsMotionPlus: 0 - wiiUSupportsProController: 0 - wiiUAllowScreenCapture: 1 - wiiUControllerCount: 0 m_SupportedAspectRatios: 4:3: 1 5:4: 1 @@ -147,6 +138,7 @@ PlayerSettings: hololens: depthFormat: 1 depthBufferSharingEnabled: 0 + enable360StereoCapture: 0 oculus: sharedDepthBuffer: 0 dashSupport: 0 @@ -179,11 +171,9 @@ PlayerSettings: APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 0 - VertexChannelCompressionMask: - serializedVersion: 2 - m_Bits: 238 + VertexChannelCompressionMask: 214 iPhoneSdkVersion: 988 - iOSTargetOSVersionString: 7.0 + iOSTargetOSVersionString: 8.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 tvOSTargetOSVersionString: 9.0 @@ -210,6 +200,7 @@ PlayerSettings: tvOSSmallIconLayers: [] tvOSSmallIconLayers2x: [] tvOSLargeIconLayers: [] + tvOSLargeIconLayers2x: [] tvOSTopShelfImageLayers: [] tvOSTopShelfImageLayers2x: [] tvOSTopShelfImageWideLayers: [] @@ -243,9 +234,15 @@ PlayerSettings: appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: + iOSManualSigningProvisioningProfileType: 0 + tvOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 + iOSRequireARKit: 0 + appleEnableProMotion: 0 clonedFromGUID: 00000000000000000000000000000000 - AndroidTargetDevice: 0 + templatePackageId: + templateDefaultScene: + AndroidTargetArchitectures: 5 AndroidSplashScreenScale: 0 androidSplashScreen: {fileID: 0} AndroidKeystoreName: @@ -269,6 +266,7 @@ PlayerSettings: m_Width: 0 m_Height: 0 m_Kind: 0 + m_BuildTargetPlatformIcons: [] m_BuildTargetBatching: - m_BuildTarget: Android m_StaticBatching: 1 @@ -343,25 +341,8 @@ PlayerSettings: m_EncodingQuality: 1 - m_BuildTarget: PS4 m_EncodingQuality: 1 - wiiUTitleID: 0005000011000000 - wiiUGroupID: 00010000 - wiiUCommonSaveSize: 4096 - wiiUAccountSaveSize: 2048 - wiiUOlvAccessKey: 0 - wiiUTinCode: 0 - wiiUJoinGameId: 0 - wiiUJoinGameModeMask: 0000000000000000 - wiiUCommonBossSize: 0 - wiiUAccountBossSize: 0 - wiiUAddOnUniqueIDs: [] - wiiUMainThreadStackSize: 3072 - wiiULoaderThreadStackSize: 1024 - wiiUSystemHeapSize: 128 - wiiUTVStartupScreen: {fileID: 0} - wiiUGamePadStartupScreen: {fileID: 0} - wiiUDrcBufferDisabled: 0 - wiiUProfilerLibPath: playModeTestRunnerEnabled: 0 + runPlayModeTestAsEditModeTest: 0 actionOnDotNetUnhandledException: 1 enableInternalProfiler: 0 logObjCUncaughtExceptions: 1 @@ -537,6 +518,7 @@ PlayerSettings: ps4pnFriends: 1 ps4pnGameCustomData: 1 playerPrefsSupport: 0 + enableApplicationExit: 0 restrictedAudioUsageRights: 0 ps4UseResolutionFallback: 0 ps4ReprojectionSupport: 0 @@ -607,7 +589,6 @@ PlayerSettings: psp2InfoBarOnStartup: 0 psp2InfoBarColor: 0 psp2ScriptOptimizationLevel: 0 - psmSplashimage: {fileID: 0} splashScreenBackgroundSourceLandscape: {fileID: 0} splashScreenBackgroundSourcePortrait: {fileID: 0} spritePackerPolicy: @@ -621,9 +602,14 @@ PlayerSettings: webGLTemplate: APPLICATION:Default webGLAnalyzeBuildSize: 0 webGLUseEmbeddedResources: 0 - webGLUseWasm: 0 webGLCompressionFormat: 1 - scriptingDefineSymbols: {} + webGLLinkerTarget: 0 + scriptingDefineSymbols: + 1: CROSS_PLATFORM_INPUT + 4: CROSS_PLATFORM_INPUT;MOBILE_INPUT + 7: CROSS_PLATFORM_INPUT;MOBILE_INPUT + 14: MOBILE_INPUT + 17: MOBILE_INPUT platformArchitecture: iOS: 2 scriptingBackend: @@ -632,8 +618,10 @@ PlayerSettings: Standalone: 0 WebGL: 1 iOS: 0 + il2cppCompilerConfiguration: {} incrementalIl2cppBuild: iOS: 0 + allowUnsafeCode: 0 additionalIl2CppArgs: scriptingRuntimeVersion: 0 apiCompatibilityLevelPerPlatform: {}