diff --git a/Assets/Resources/MouseControls.cs b/Assets/Resources/MouseControls.cs
deleted file mode 100644
index f0c36e17..00000000
--- a/Assets/Resources/MouseControls.cs
+++ /dev/null
@@ -1,322 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
-// version 1.11.2
-// from Assets/Resources/MouseControls.inputactions
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine.InputSystem;
-using UnityEngine.InputSystem.Utilities;
-
-public partial class @MouseControls: IInputActionCollection2, IDisposable
-{
- public InputActionAsset asset { get; }
- public @MouseControls()
- {
- asset = InputActionAsset.FromJson(@"{
- ""name"": ""MouseControls"",
- ""maps"": [
- {
- ""name"": ""Player"",
- ""id"": ""54cc7dab-d206-44e2-ad28-4018586d47ce"",
- ""actions"": [
- {
- ""name"": ""Click"",
- ""type"": ""Button"",
- ""id"": ""88d7d766-1007-472e-ae33-ba8569954222"",
- ""expectedControlType"": """",
- ""processors"": """",
- ""interactions"": """",
- ""initialStateCheck"": false
- },
- {
- ""name"": ""MiddleClick"",
- ""type"": ""Button"",
- ""id"": ""09456aa4-612d-40bb-b527-6ab97507fa7f"",
- ""expectedControlType"": """",
- ""processors"": """",
- ""interactions"": """",
- ""initialStateCheck"": false
- },
- {
- ""name"": ""RightClick"",
- ""type"": ""Button"",
- ""id"": ""adeced83-0144-442e-b0da-51910c88912b"",
- ""expectedControlType"": """",
- ""processors"": """",
- ""interactions"": """",
- ""initialStateCheck"": false
- },
- {
- ""name"": ""Point"",
- ""type"": ""Value"",
- ""id"": ""442cf3c8-0613-416e-9e6f-a92ff2058cd0"",
- ""expectedControlType"": ""Vector2"",
- ""processors"": """",
- ""interactions"": """",
- ""initialStateCheck"": true
- },
- {
- ""name"": ""Scroll"",
- ""type"": ""Value"",
- ""id"": ""9012f26b-e301-4340-b05f-eaa8ecea5289"",
- ""expectedControlType"": ""Vector2"",
- ""processors"": """",
- ""interactions"": """",
- ""initialStateCheck"": true
- },
- {
- ""name"": ""Delta"",
- ""type"": ""Value"",
- ""id"": ""225a6ad6-f6cf-46c1-b522-96bfb4385441"",
- ""expectedControlType"": ""Vector2"",
- ""processors"": """",
- ""interactions"": """",
- ""initialStateCheck"": true
- }
- ],
- ""bindings"": [
- {
- ""name"": """",
- ""id"": ""35c4559a-a4ae-467f-90ea-21ba08b8a3f3"",
- ""path"": ""/leftButton"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": """",
- ""action"": ""Click"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""35cbe4ff-6de8-4994-8166-9e56a39681cd"",
- ""path"": ""/middleButton"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": """",
- ""action"": ""MiddleClick"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""ee014a6b-bc0d-453c-b2ab-77735da0f5dc"",
- ""path"": ""/rightButton"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": """",
- ""action"": ""RightClick"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""93c1a3dc-8f7b-4471-ac5f-dc651fcab248"",
- ""path"": ""/position"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": """",
- ""action"": ""Point"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""71fb9f61-0b12-464f-b113-bb6bf3e6dcbf"",
- ""path"": ""/scroll"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": """",
- ""action"": ""Scroll"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""85aed182-6406-466b-a222-f7b0f475075b"",
- ""path"": ""/delta"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": """",
- ""action"": ""Delta"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- }
- ]
- }
- ],
- ""controlSchemes"": []
-}");
- // Player
- m_Player = asset.FindActionMap("Player", throwIfNotFound: true);
- m_Player_Click = m_Player.FindAction("Click", throwIfNotFound: true);
- m_Player_MiddleClick = m_Player.FindAction("MiddleClick", throwIfNotFound: true);
- m_Player_RightClick = m_Player.FindAction("RightClick", throwIfNotFound: true);
- m_Player_Point = m_Player.FindAction("Point", throwIfNotFound: true);
- m_Player_Scroll = m_Player.FindAction("Scroll", throwIfNotFound: true);
- m_Player_Delta = m_Player.FindAction("Delta", throwIfNotFound: true);
- }
-
- ~@MouseControls()
- {
- UnityEngine.Debug.Assert(!m_Player.enabled, "This will cause a leak and performance issues, MouseControls.Player.Disable() has not been called.");
- }
-
- public void Dispose()
- {
- UnityEngine.Object.Destroy(asset);
- }
-
- public InputBinding? bindingMask
- {
- get => asset.bindingMask;
- set => asset.bindingMask = value;
- }
-
- public ReadOnlyArray? devices
- {
- get => asset.devices;
- set => asset.devices = value;
- }
-
- public ReadOnlyArray controlSchemes => asset.controlSchemes;
-
- public bool Contains(InputAction action)
- {
- return asset.Contains(action);
- }
-
- public IEnumerator GetEnumerator()
- {
- return asset.GetEnumerator();
- }
-
- IEnumerator IEnumerable.GetEnumerator()
- {
- return GetEnumerator();
- }
-
- public void Enable()
- {
- asset.Enable();
- }
-
- public void Disable()
- {
- asset.Disable();
- }
-
- public IEnumerable bindings => asset.bindings;
-
- public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false)
- {
- return asset.FindAction(actionNameOrId, throwIfNotFound);
- }
-
- public int FindBinding(InputBinding bindingMask, out InputAction action)
- {
- return asset.FindBinding(bindingMask, out action);
- }
-
- // Player
- private readonly InputActionMap m_Player;
- private List m_PlayerActionsCallbackInterfaces = new List();
- private readonly InputAction m_Player_Click;
- private readonly InputAction m_Player_MiddleClick;
- private readonly InputAction m_Player_RightClick;
- private readonly InputAction m_Player_Point;
- private readonly InputAction m_Player_Scroll;
- private readonly InputAction m_Player_Delta;
- public struct PlayerActions
- {
- private @MouseControls m_Wrapper;
- public PlayerActions(@MouseControls wrapper) { m_Wrapper = wrapper; }
- public InputAction @Click => m_Wrapper.m_Player_Click;
- public InputAction @MiddleClick => m_Wrapper.m_Player_MiddleClick;
- public InputAction @RightClick => m_Wrapper.m_Player_RightClick;
- public InputAction @Point => m_Wrapper.m_Player_Point;
- public InputAction @Scroll => m_Wrapper.m_Player_Scroll;
- public InputAction @Delta => m_Wrapper.m_Player_Delta;
- public InputActionMap Get() { return m_Wrapper.m_Player; }
- public void Enable() { Get().Enable(); }
- public void Disable() { Get().Disable(); }
- public bool enabled => Get().enabled;
- public static implicit operator InputActionMap(PlayerActions set) { return set.Get(); }
- public void AddCallbacks(IPlayerActions instance)
- {
- if (instance == null || m_Wrapper.m_PlayerActionsCallbackInterfaces.Contains(instance)) return;
- m_Wrapper.m_PlayerActionsCallbackInterfaces.Add(instance);
- @Click.started += instance.OnClick;
- @Click.performed += instance.OnClick;
- @Click.canceled += instance.OnClick;
- @MiddleClick.started += instance.OnMiddleClick;
- @MiddleClick.performed += instance.OnMiddleClick;
- @MiddleClick.canceled += instance.OnMiddleClick;
- @RightClick.started += instance.OnRightClick;
- @RightClick.performed += instance.OnRightClick;
- @RightClick.canceled += instance.OnRightClick;
- @Point.started += instance.OnPoint;
- @Point.performed += instance.OnPoint;
- @Point.canceled += instance.OnPoint;
- @Scroll.started += instance.OnScroll;
- @Scroll.performed += instance.OnScroll;
- @Scroll.canceled += instance.OnScroll;
- @Delta.started += instance.OnDelta;
- @Delta.performed += instance.OnDelta;
- @Delta.canceled += instance.OnDelta;
- }
-
- private void UnregisterCallbacks(IPlayerActions instance)
- {
- @Click.started -= instance.OnClick;
- @Click.performed -= instance.OnClick;
- @Click.canceled -= instance.OnClick;
- @MiddleClick.started -= instance.OnMiddleClick;
- @MiddleClick.performed -= instance.OnMiddleClick;
- @MiddleClick.canceled -= instance.OnMiddleClick;
- @RightClick.started -= instance.OnRightClick;
- @RightClick.performed -= instance.OnRightClick;
- @RightClick.canceled -= instance.OnRightClick;
- @Point.started -= instance.OnPoint;
- @Point.performed -= instance.OnPoint;
- @Point.canceled -= instance.OnPoint;
- @Scroll.started -= instance.OnScroll;
- @Scroll.performed -= instance.OnScroll;
- @Scroll.canceled -= instance.OnScroll;
- @Delta.started -= instance.OnDelta;
- @Delta.performed -= instance.OnDelta;
- @Delta.canceled -= instance.OnDelta;
- }
-
- public void RemoveCallbacks(IPlayerActions instance)
- {
- if (m_Wrapper.m_PlayerActionsCallbackInterfaces.Remove(instance))
- UnregisterCallbacks(instance);
- }
-
- public void SetCallbacks(IPlayerActions instance)
- {
- foreach (var item in m_Wrapper.m_PlayerActionsCallbackInterfaces)
- UnregisterCallbacks(item);
- m_Wrapper.m_PlayerActionsCallbackInterfaces.Clear();
- AddCallbacks(instance);
- }
- }
- public PlayerActions @Player => new PlayerActions(this);
- public interface IPlayerActions
- {
- void OnClick(InputAction.CallbackContext context);
- void OnMiddleClick(InputAction.CallbackContext context);
- void OnRightClick(InputAction.CallbackContext context);
- void OnPoint(InputAction.CallbackContext context);
- void OnScroll(InputAction.CallbackContext context);
- void OnDelta(InputAction.CallbackContext context);
- }
-}
diff --git a/Assets/Resources/MouseControls.cs.meta b/Assets/Resources/MouseControls.cs.meta
deleted file mode 100644
index d3a3c76e..00000000
--- a/Assets/Resources/MouseControls.cs.meta
+++ /dev/null
@@ -1,2 +0,0 @@
-fileFormatVersion: 2
-guid: 877be50a84cd10a4cbe2017ee11c86e7
\ No newline at end of file
diff --git a/Assets/Resources/MouseControls.inputactions b/Assets/Resources/MouseControls.inputactions
deleted file mode 100644
index 05671a1c..00000000
--- a/Assets/Resources/MouseControls.inputactions
+++ /dev/null
@@ -1,134 +0,0 @@
-{
- "name": "MouseControls",
- "maps": [
- {
- "name": "Player",
- "id": "54cc7dab-d206-44e2-ad28-4018586d47ce",
- "actions": [
- {
- "name": "Click",
- "type": "Button",
- "id": "88d7d766-1007-472e-ae33-ba8569954222",
- "expectedControlType": "",
- "processors": "",
- "interactions": "",
- "initialStateCheck": false
- },
- {
- "name": "MiddleClick",
- "type": "Button",
- "id": "09456aa4-612d-40bb-b527-6ab97507fa7f",
- "expectedControlType": "",
- "processors": "",
- "interactions": "",
- "initialStateCheck": false
- },
- {
- "name": "RightClick",
- "type": "Button",
- "id": "adeced83-0144-442e-b0da-51910c88912b",
- "expectedControlType": "",
- "processors": "",
- "interactions": "",
- "initialStateCheck": false
- },
- {
- "name": "Point",
- "type": "Value",
- "id": "442cf3c8-0613-416e-9e6f-a92ff2058cd0",
- "expectedControlType": "Vector2",
- "processors": "",
- "interactions": "",
- "initialStateCheck": true
- },
- {
- "name": "Scroll",
- "type": "Value",
- "id": "9012f26b-e301-4340-b05f-eaa8ecea5289",
- "expectedControlType": "Vector2",
- "processors": "",
- "interactions": "",
- "initialStateCheck": true
- },
- {
- "name": "Delta",
- "type": "Value",
- "id": "225a6ad6-f6cf-46c1-b522-96bfb4385441",
- "expectedControlType": "Vector2",
- "processors": "",
- "interactions": "",
- "initialStateCheck": true
- }
- ],
- "bindings": [
- {
- "name": "",
- "id": "35c4559a-a4ae-467f-90ea-21ba08b8a3f3",
- "path": "/leftButton",
- "interactions": "",
- "processors": "",
- "groups": "",
- "action": "Click",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "35cbe4ff-6de8-4994-8166-9e56a39681cd",
- "path": "/middleButton",
- "interactions": "",
- "processors": "",
- "groups": "",
- "action": "MiddleClick",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "ee014a6b-bc0d-453c-b2ab-77735da0f5dc",
- "path": "/rightButton",
- "interactions": "",
- "processors": "",
- "groups": "",
- "action": "RightClick",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "93c1a3dc-8f7b-4471-ac5f-dc651fcab248",
- "path": "/position",
- "interactions": "",
- "processors": "",
- "groups": "",
- "action": "Point",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "71fb9f61-0b12-464f-b113-bb6bf3e6dcbf",
- "path": "/scroll",
- "interactions": "",
- "processors": "",
- "groups": "",
- "action": "Scroll",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "85aed182-6406-466b-a222-f7b0f475075b",
- "path": "/delta",
- "interactions": "",
- "processors": "",
- "groups": "",
- "action": "Delta",
- "isComposite": false,
- "isPartOfComposite": false
- }
- ]
- }
- ],
- "controlSchemes": []
-}
\ No newline at end of file
diff --git a/Assets/Resources/MouseControls.inputactions.meta b/Assets/Resources/MouseControls.inputactions.meta
deleted file mode 100644
index 8bd9cf83..00000000
--- a/Assets/Resources/MouseControls.inputactions.meta
+++ /dev/null
@@ -1,14 +0,0 @@
-fileFormatVersion: 2
-guid: 8dd849bbe0fdebe4b839f518c31e21ab
-ScriptedImporter:
- internalIDToNameTable: []
- externalObjects: {}
- serializedVersion: 2
- userData:
- assetBundleName:
- assetBundleVariant:
- script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3}
- generateWrapperCode: 1
- wrapperCodePath:
- wrapperClassName:
- wrapperCodeNamespace:
diff --git a/Assets/Resources/Prefabs/SampleProject/UI/InfoWindow.prefab b/Assets/Resources/Prefabs/SampleProject/UI/InfoWindow.prefab
index 05abc137..319795c7 100644
--- a/Assets/Resources/Prefabs/SampleProject/UI/InfoWindow.prefab
+++ b/Assets/Resources/Prefabs/SampleProject/UI/InfoWindow.prefab
@@ -133,6 +133,142 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 2480dc463c63bf945a9488183ffe66d0, type: 3}
m_Name:
m_EditorClassIdentifier:
+--- !u!1 &695708929815469789
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7457226219413938759}
+ - component: {fileID: 4416386235926923171}
+ - component: {fileID: 7184852704645535964}
+ m_Layer: 5
+ m_Name: ValueText
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &7457226219413938759
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 695708929815469789}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 4802890858156259540}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 45, y: -7.5}
+ m_SizeDelta: {x: -100, y: -25}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &4416386235926923171
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 695708929815469789}
+ m_CullTransparentMesh: 1
+--- !u!114 &7184852704645535964
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 695708929815469789}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_text: New Text
+ m_isRightToLeft: 0
+ m_fontAsset: {fileID: 11400000, guid: 08cebd004d97ca742ac80400f37f4eed, type: 2}
+ m_sharedMaterial: {fileID: 4860575619018115804, guid: 08cebd004d97ca742ac80400f37f4eed, type: 2}
+ m_fontSharedMaterials: []
+ m_fontMaterial: {fileID: 0}
+ m_fontMaterials: []
+ m_fontColor32:
+ serializedVersion: 2
+ rgba: 4278190080
+ m_fontColor: {r: 0, g: 0, b: 0, a: 1}
+ m_enableVertexGradient: 0
+ m_colorMode: 3
+ m_fontColorGradient:
+ topLeft: {r: 1, g: 1, b: 1, a: 1}
+ topRight: {r: 1, g: 1, b: 1, a: 1}
+ bottomLeft: {r: 1, g: 1, b: 1, a: 1}
+ bottomRight: {r: 1, g: 1, b: 1, a: 1}
+ m_fontColorGradientPreset: {fileID: 0}
+ m_spriteAsset: {fileID: 0}
+ m_tintAllSprites: 0
+ m_StyleSheet: {fileID: 0}
+ m_TextStyleHashCode: -1183493901
+ m_overrideHtmlColors: 0
+ m_faceColor:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontSize: 10
+ m_fontSizeBase: 10
+ m_fontWeight: 400
+ m_enableAutoSizing: 0
+ m_fontSizeMin: 18
+ m_fontSizeMax: 72
+ m_fontStyle: 0
+ m_HorizontalAlignment: 1
+ m_VerticalAlignment: 256
+ m_textAlignment: 65535
+ m_characterSpacing: 0
+ m_wordSpacing: 0
+ m_lineSpacing: 0
+ m_lineSpacingMax: 0
+ m_paragraphSpacing: 0
+ m_charWidthMaxAdj: 0
+ m_TextWrappingMode: 1
+ m_wordWrappingRatios: 0.4
+ m_overflowMode: 4
+ m_linkedTextComponent: {fileID: 0}
+ parentLinkedComponent: {fileID: 0}
+ m_enableKerning: 0
+ m_ActiveFontFeatures: 6e72656b
+ m_enableExtraPadding: 0
+ checkPaddingRequired: 0
+ m_isRichText: 1
+ m_EmojiFallbackSupport: 1
+ m_parseCtrlCharacters: 1
+ m_isOrthographic: 1
+ m_isCullingEnabled: 0
+ m_horizontalMapping: 0
+ m_verticalMapping: 0
+ m_uvLineOffset: 0
+ m_geometrySortingOrder: 0
+ m_IsTextObjectScaleStatic: 0
+ m_VertexBufferAutoSizeReduction: 0
+ m_useMaxVisibleDescender: 1
+ m_pageToDisplay: 1
+ m_margin: {x: 0, y: 0, z: 0, w: 0}
+ m_isUsingLegacyAnimationComponent: 0
+ m_isVolumetricText: 0
+ m_hasFontAssetChanged: 0
+ m_baseMaterial: {fileID: 0}
+ m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &1267781917027001920
GameObject:
m_ObjectHideFlags: 0
@@ -317,12 +453,13 @@ RectTransform:
- {fileID: 2993317773174661490}
- {fileID: 6308980257678838100}
- {fileID: 6685372230643413407}
+ - {fileID: 7457226219413938759}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 100, y: 150}
+ m_SizeDelta: {x: 200, y: 150}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7623125061856383678
CanvasRenderer:
@@ -344,9 +481,10 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 620e52b408949c340adef1110323cb7c, type: 3}
m_Name:
m_EditorClassIdentifier:
- infoText: {fileID: 4202672738064507978}
+ labelText: {fileID: 4202672738064507978}
+ valueText: {fileID: 7184852704645535964}
closeButton: {fileID: 5925304901667948221}
- worldOffset: {x: 0, y: 1.5, z: 0}
+ screenOffset: {x: 0, y: 0}
--- !u!1 &7346391167643616437
GameObject:
m_ObjectHideFlags: 0
@@ -359,7 +497,7 @@ GameObject:
- component: {fileID: 9166711732528497215}
- component: {fileID: 4202672738064507978}
m_Layer: 5
- m_Name: Text (TMP)
+ m_Name: 'LabelText '
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -381,8 +519,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
- m_AnchoredPosition: {x: 0, y: -7.5}
- m_SizeDelta: {x: -10, y: -25}
+ m_AnchoredPosition: {x: -52.5, y: -7.5}
+ m_SizeDelta: {x: -115, y: -25}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &9166711732528497215
CanvasRenderer:
diff --git a/Assets/Scenes/SampleProject.unity b/Assets/Scenes/SampleProject.unity
index 9c100003..af0c41de 100644
--- a/Assets/Scenes/SampleProject.unity
+++ b/Assets/Scenes/SampleProject.unity
@@ -119,127 +119,6 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
---- !u!1 &22597646
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 22597650}
- - component: {fileID: 22597649}
- - component: {fileID: 22597648}
- - component: {fileID: 22597647}
- - component: {fileID: 22597651}
- m_Layer: 0
- m_Name: Cube
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!65 &22597647
-BoxCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 22597646}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 3
- m_Size: {x: 1, y: 1, z: 1}
- m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &22597648
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 22597646}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &22597649
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 22597646}
- m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &22597650
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 22597646}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 78.07, y: 31.6, z: -6.41}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &22597651
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 22597646}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 2bf81994712147c45b75b5394f2b0aca, type: 3}
- m_Name:
- m_EditorClassIdentifier:
--- !u!1 &27812497
GameObject:
m_ObjectHideFlags: 0
@@ -256,7 +135,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!4 &27812499
Transform:
m_ObjectHideFlags: 0
@@ -553,11 +432,12 @@ MonoBehaviour:
m_GameObject: {fileID: 330585543}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 1261d9494e4176a488c4e65b80396de6, type: 3}
+ m_Script: {fileID: 11500000, guid: 61deddb674c074049a9b43fd58f1b355, type: 3}
m_Name:
m_EditorClassIdentifier:
- moveSpeed: 5
- rotateSpeed: 100
+ panSpeed: 20
+ rotationSpeed: 300
+ zoomSpeed: 10
--- !u!1 &410087039
GameObject:
m_ObjectHideFlags: 0
@@ -697,7 +577,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &483439348
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -759,7 +639,7 @@ Canvas:
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
- m_SortingOrder: 0
+ m_SortingOrder: 1
m_TargetDisplay: 0
--- !u!224 &483439351
RectTransform:
@@ -803,7 +683,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &495653795
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -1873,7 +1753,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &2030316709
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -1935,7 +1815,7 @@ Canvas:
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
- m_SortingOrder: 1
+ m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!224 &2030316712
RectTransform:
@@ -1965,6 +1845,22 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 2030316712}
m_Modifications:
+ - target: {fileID: 3914245719037572856, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
+ propertyPath: worldOffset.x
+ value: 60
+ objectReference: {fileID: 0}
+ - target: {fileID: 3914245719037572856, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
+ propertyPath: worldOffset.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3914245719037572856, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
+ propertyPath: screenOffset.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3914245719037572856, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
+ propertyPath: screenOffset.y
+ value: 0
+ objectReference: {fileID: 0}
- target: {fileID: 4802890858156259540, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
propertyPath: m_Pivot.x
value: 0.5
@@ -1991,7 +1887,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 4802890858156259540, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
propertyPath: m_SizeDelta.x
- value: 100
+ value: 200
objectReference: {fileID: 0}
- target: {fileID: 4802890858156259540, guid: 036e56b4c097fc8409ffced10ff53562, type: 3}
propertyPath: m_SizeDelta.y
@@ -2164,9 +2060,8 @@ SceneRoots:
- {fileID: 832575519}
- {fileID: 632541407}
- {fileID: 27812499}
- - {fileID: 483439351}
- {fileID: 2030316712}
+ - {fileID: 483439351}
- {fileID: 495653798}
- {fileID: 88083293}
- {fileID: 1840728471}
- - {fileID: 22597650}
diff --git a/Assets/Scenes/Test.unity b/Assets/Scenes/Test.unity
deleted file mode 100644
index 05be66c4..00000000
--- a/Assets/Scenes/Test.unity
+++ /dev/null
@@ -1,730 +0,0 @@
-%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: 10
- 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: 0
- m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
- m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 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_UseRadianceAmbientProbe: 0
---- !u!157 &3
-LightmapSettings:
- m_ObjectHideFlags: 0
- serializedVersion: 13
- m_BakeOnSceneLoad: 0
- m_GISettings:
- serializedVersion: 2
- m_BounceScale: 1
- m_IndirectOutputScale: 1
- m_AlbedoBoost: 1
- m_EnvironmentLightingMode: 0
- m_EnableBakedLightmaps: 1
- m_EnableRealtimeLightmaps: 0
- m_LightmapEditorSettings:
- serializedVersion: 12
- m_Resolution: 2
- m_BakeResolution: 40
- m_AtlasSize: 1024
- m_AO: 0
- m_AOMaxDistance: 1
- m_CompAOExponent: 1
- m_CompAOExponentDirect: 0
- m_ExtractAmbientOcclusion: 0
- m_Padding: 2
- m_LightmapParameters: {fileID: 0}
- m_LightmapsBakeMode: 1
- m_TextureCompression: 1
- m_ReflectionCompression: 2
- m_MixedBakeMode: 2
- m_BakeBackend: 1
- m_PVRSampling: 1
- m_PVRDirectSampleCount: 32
- m_PVRSampleCount: 512
- m_PVRBounces: 2
- m_PVREnvironmentSampleCount: 256
- m_PVREnvironmentReferencePointCount: 2048
- m_PVRFilteringMode: 1
- m_PVRDenoiserTypeDirect: 1
- m_PVRDenoiserTypeIndirect: 1
- m_PVRDenoiserTypeAO: 1
- m_PVRFilterTypeDirect: 0
- m_PVRFilterTypeIndirect: 0
- m_PVRFilterTypeAO: 0
- m_PVREnvironmentMIS: 1
- m_PVRCulling: 1
- m_PVRFilteringGaussRadiusDirect: 1
- m_PVRFilteringGaussRadiusIndirect: 1
- m_PVRFilteringGaussRadiusAO: 1
- m_PVRFilteringAtrousPositionSigmaDirect: 0.5
- m_PVRFilteringAtrousPositionSigmaIndirect: 2
- m_PVRFilteringAtrousPositionSigmaAO: 1
- m_ExportTrainingData: 0
- m_TrainingDataDestination: TrainingData
- m_LightProbeSampleCountMultiplier: 4
- m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0}
- m_LightingSettings: {fileID: 0}
---- !u!196 &4
-NavMeshSettings:
- serializedVersion: 2
- m_ObjectHideFlags: 0
- m_BuildSettings:
- serializedVersion: 3
- 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
- buildHeightMesh: 0
- maxJobWorkers: 0
- preserveTilesOutsideBounds: 0
- debug:
- m_Flags: 0
- m_NavMeshData: {fileID: 0}
---- !u!1 &622444010
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 622444014}
- - component: {fileID: 622444013}
- - component: {fileID: 622444012}
- - component: {fileID: 622444011}
- m_Layer: 0
- m_Name: Sphere
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!135 &622444011
-SphereCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 622444010}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 3
- m_Radius: 0.5
- m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &622444012
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 622444010}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &622444013
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 622444010}
- m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &622444014
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 622444010}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 2.62991, y: 1.83499, z: -3.87921}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &1287244951
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1287244955}
- - component: {fileID: 1287244954}
- - component: {fileID: 1287244953}
- - component: {fileID: 1287244952}
- m_Layer: 0
- m_Name: Cube
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!65 &1287244952
-BoxCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1287244951}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 4294967295
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 3
- m_Size: {x: 1, y: 1, z: 1}
- m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &1287244953
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1287244951}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &1287244954
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1287244951}
- m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &1287244955
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1287244951}
- serializedVersion: 2
- 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_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &1458109596
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1458109600}
- - component: {fileID: 1458109599}
- - component: {fileID: 1458109598}
- - component: {fileID: 1458109597}
- m_Layer: 0
- m_Name: Plane
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!64 &1458109597
-MeshCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1458109596}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 5
- m_Convex: 0
- m_CookingOptions: 30
- m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
---- !u!23 &1458109598
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1458109596}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &1458109599
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1458109596}
- m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &1458109600
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1458109596}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 2.62991, y: -0.8, z: -3.87921}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &1497370464
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1497370467}
- - component: {fileID: 1497370466}
- - component: {fileID: 1497370465}
- - component: {fileID: 1497370468}
- - component: {fileID: 1497370471}
- m_Layer: 0
- m_Name: Main Camera
- m_TagString: MainCamera
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!81 &1497370465
-AudioListener:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1497370464}
- m_Enabled: 1
---- !u!20 &1497370466
-Camera:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1497370464}
- m_Enabled: 1
- serializedVersion: 2
- m_ClearFlags: 1
- m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
- m_projectionMatrixMode: 1
- m_GateFitMode: 2
- m_FOVAxisMode: 0
- m_Iso: 200
- m_ShutterSpeed: 0.005
- m_Aperture: 16
- m_FocusDistance: 10
- m_FocalLength: 50
- m_BladeCount: 5
- m_Curvature: {x: 2, y: 11}
- m_BarrelClipping: 0.25
- m_Anamorphism: 0
- m_SensorSize: {x: 36, y: 24}
- m_LensShift: {x: 0, y: 0}
- m_NormalizedViewPortRect:
- serializedVersion: 2
- x: 0
- y: 0
- width: 1
- height: 1
- near clip plane: 0.3
- far clip plane: 1000
- field of view: 60
- orthographic: 0
- orthographic size: 5
- m_Depth: -1
- m_CullingMask:
- serializedVersion: 2
- m_Bits: 4294967295
- m_RenderingPath: -1
- m_TargetTexture: {fileID: 0}
- m_TargetDisplay: 0
- m_TargetEye: 3
- m_HDR: 1
- m_AllowMSAA: 1
- m_AllowDynamicResolution: 0
- m_ForceIntoRT: 0
- m_OcclusionCulling: 1
- m_StereoConvergence: 10
- m_StereoSeparation: 0.022
---- !u!224 &1497370467
-RectTransform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1497370464}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: -10}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0.5, y: 0.5}
- m_AnchorMax: {x: 0.5, y: 0.5}
- m_AnchoredPosition: {x: 0, y: 1}
- m_SizeDelta: {x: 100, y: 100}
- m_Pivot: {x: 0.5, y: 0.5}
---- !u!114 &1497370468
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1497370464}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_RenderShadows: 1
- m_RequiresDepthTextureOption: 2
- m_RequiresOpaqueTextureOption: 2
- m_CameraType: 0
- m_Cameras: []
- m_RendererIndex: -1
- m_VolumeLayerMask:
- serializedVersion: 2
- m_Bits: 1
- m_VolumeTrigger: {fileID: 0}
- m_VolumeFrameworkUpdateModeOption: 2
- m_RenderPostProcessing: 0
- m_Antialiasing: 0
- m_AntialiasingQuality: 2
- m_StopNaN: 0
- m_Dithering: 0
- m_ClearDepth: 1
- m_AllowXRRendering: 1
- m_AllowHDROutput: 1
- m_UseScreenCoordOverride: 0
- m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
- m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
- m_RequiresDepthTexture: 0
- m_RequiresColorTexture: 0
- m_Version: 2
- m_TaaSettings:
- m_Quality: 3
- m_FrameInfluence: 0.1
- m_JitterScale: 1
- m_MipBias: 0
- m_VarianceClampScale: 0.9
- m_ContrastAdaptiveSharpening: 0
---- !u!114 &1497370471
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1497370464}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 9958aa39fc037e74090efe980e62c959, type: 3}
- m_Name:
- m_EditorClassIdentifier:
---- !u!1 &1990717422
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1990717424}
- - component: {fileID: 1990717423}
- - component: {fileID: 1990717425}
- 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 &1990717423
-Light:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1990717422}
- m_Enabled: 1
- serializedVersion: 11
- m_Type: 1
- m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
- m_Intensity: 1
- m_Range: 10
- m_SpotAngle: 30
- m_InnerSpotAngle: 21.80208
- m_CookieSize: 10
- m_Shadows:
- m_Type: 2
- m_Resolution: -1
- m_CustomResolution: -1
- m_Strength: 1
- m_Bias: 0.05
- m_NormalBias: 0.4
- m_NearPlane: 0.2
- m_CullingMatrixOverride:
- e00: 1
- e01: 0
- e02: 0
- e03: 0
- e10: 0
- e11: 1
- e12: 0
- e13: 0
- e20: 0
- e21: 0
- e22: 1
- e23: 0
- e30: 0
- e31: 0
- e32: 0
- e33: 1
- m_UseCullingMatrixOverride: 0
- m_Cookie: {fileID: 0}
- m_DrawHalo: 0
- m_Flare: {fileID: 0}
- m_RenderMode: 0
- m_CullingMask:
- serializedVersion: 2
- m_Bits: 4294967295
- m_RenderingLayerMask: 1
- m_Lightmapping: 4
- m_LightShadowCasterMode: 0
- m_AreaSize: {x: 1, y: 1}
- m_BounceIntensity: 1
- m_ColorTemperature: 6570
- m_UseColorTemperature: 0
- m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
- m_UseBoundingSphereOverride: 0
- m_UseViewFrustumForShadowCasterCull: 1
- m_ForceVisible: 0
- m_ShadowRadius: 0
- m_ShadowAngle: 0
- m_LightUnit: 1
- m_LuxAtDistance: 1
- m_EnableSpotReflector: 1
---- !u!4 &1990717424
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1990717422}
- serializedVersion: 2
- m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
- m_LocalPosition: {x: 0, y: 3, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
---- !u!114 &1990717425
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1990717422}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_Version: 3
- m_UsePipelineSettings: 1
- m_AdditionalLightsShadowResolutionTier: 2
- m_LightLayerMask: 1
- m_RenderingLayers: 1
- m_CustomShadowLayers: 0
- m_ShadowLayerMask: 1
- m_ShadowRenderingLayers: 1
- m_LightCookieSize: {x: 1, y: 1}
- m_LightCookieOffset: {x: 0, y: 0}
- m_SoftShadowQuality: 0
---- !u!1660057539 &9223372036854775807
-SceneRoots:
- m_ObjectHideFlags: 0
- m_Roots:
- - {fileID: 1990717424}
- - {fileID: 1497370467}
- - {fileID: 1287244955}
- - {fileID: 622444014}
- - {fileID: 1458109600}
diff --git a/Assets/Scenes/Test.unity.meta b/Assets/Scenes/Test.unity.meta
deleted file mode 100644
index 6dc27fd1..00000000
--- a/Assets/Scenes/Test.unity.meta
+++ /dev/null
@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 803083c453114db4abb44bd90dfdab50
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Scenes/Test2.unity b/Assets/Scenes/Test2.unity
deleted file mode 100644
index 189582c3..00000000
--- a/Assets/Scenes/Test2.unity
+++ /dev/null
@@ -1,726 +0,0 @@
-%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: 10
- 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: 0
- m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
- m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 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_UseRadianceAmbientProbe: 0
---- !u!157 &3
-LightmapSettings:
- m_ObjectHideFlags: 0
- serializedVersion: 13
- m_BakeOnSceneLoad: 0
- m_GISettings:
- serializedVersion: 2
- m_BounceScale: 1
- m_IndirectOutputScale: 1
- m_AlbedoBoost: 1
- m_EnvironmentLightingMode: 0
- m_EnableBakedLightmaps: 1
- m_EnableRealtimeLightmaps: 0
- m_LightmapEditorSettings:
- serializedVersion: 12
- m_Resolution: 2
- m_BakeResolution: 40
- m_AtlasSize: 1024
- m_AO: 0
- m_AOMaxDistance: 1
- m_CompAOExponent: 1
- m_CompAOExponentDirect: 0
- m_ExtractAmbientOcclusion: 0
- m_Padding: 2
- m_LightmapParameters: {fileID: 0}
- m_LightmapsBakeMode: 1
- m_TextureCompression: 1
- m_ReflectionCompression: 2
- m_MixedBakeMode: 2
- m_BakeBackend: 1
- m_PVRSampling: 1
- m_PVRDirectSampleCount: 32
- m_PVRSampleCount: 512
- m_PVRBounces: 2
- m_PVREnvironmentSampleCount: 256
- m_PVREnvironmentReferencePointCount: 2048
- m_PVRFilteringMode: 1
- m_PVRDenoiserTypeDirect: 1
- m_PVRDenoiserTypeIndirect: 1
- m_PVRDenoiserTypeAO: 1
- m_PVRFilterTypeDirect: 0
- m_PVRFilterTypeIndirect: 0
- m_PVRFilterTypeAO: 0
- m_PVREnvironmentMIS: 1
- m_PVRCulling: 1
- m_PVRFilteringGaussRadiusDirect: 1
- m_PVRFilteringGaussRadiusIndirect: 1
- m_PVRFilteringGaussRadiusAO: 1
- m_PVRFilteringAtrousPositionSigmaDirect: 0.5
- m_PVRFilteringAtrousPositionSigmaIndirect: 2
- m_PVRFilteringAtrousPositionSigmaAO: 1
- m_ExportTrainingData: 0
- m_TrainingDataDestination: TrainingData
- m_LightProbeSampleCountMultiplier: 4
- m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0}
- m_LightingSettings: {fileID: 0}
---- !u!196 &4
-NavMeshSettings:
- serializedVersion: 2
- m_ObjectHideFlags: 0
- m_BuildSettings:
- serializedVersion: 3
- 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
- buildHeightMesh: 0
- maxJobWorkers: 0
- preserveTilesOutsideBounds: 0
- debug:
- m_Flags: 0
- m_NavMeshData: {fileID: 0}
---- !u!1 &279343782
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 279343785}
- - component: {fileID: 279343784}
- - component: {fileID: 279343783}
- - component: {fileID: 279343786}
- - component: {fileID: 279343787}
- m_Layer: 0
- m_Name: Main Camera
- m_TagString: MainCamera
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!81 &279343783
-AudioListener:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 279343782}
- m_Enabled: 1
---- !u!20 &279343784
-Camera:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 279343782}
- m_Enabled: 1
- serializedVersion: 2
- m_ClearFlags: 2
- m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
- m_projectionMatrixMode: 1
- m_GateFitMode: 2
- m_FOVAxisMode: 0
- m_Iso: 200
- m_ShutterSpeed: 0.005
- m_Aperture: 16
- m_FocusDistance: 10
- m_FocalLength: 20.78461
- m_BladeCount: 5
- m_Curvature: {x: 2, y: 11}
- m_BarrelClipping: 0.25
- m_Anamorphism: 0
- m_SensorSize: {x: 36, y: 24}
- m_LensShift: {x: 0, y: 0}
- m_NormalizedViewPortRect:
- serializedVersion: 2
- x: 0
- y: 0
- width: 1
- height: 1
- near clip plane: 0.3
- far clip plane: 1000
- field of view: 60.000004
- orthographic: 0
- orthographic size: 5
- m_Depth: -1
- m_CullingMask:
- serializedVersion: 2
- m_Bits: 4294967295
- m_RenderingPath: -1
- m_TargetTexture: {fileID: 0}
- m_TargetDisplay: 0
- m_TargetEye: 3
- m_HDR: 1
- m_AllowMSAA: 1
- m_AllowDynamicResolution: 0
- m_ForceIntoRT: 0
- m_OcclusionCulling: 1
- m_StereoConvergence: 10
- m_StereoSeparation: 0.022
---- !u!4 &279343785
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 279343782}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 1, z: -10}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &279343786
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 279343782}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_RenderShadows: 1
- m_RequiresDepthTextureOption: 2
- m_RequiresOpaqueTextureOption: 2
- m_CameraType: 0
- m_Cameras: []
- m_RendererIndex: -1
- m_VolumeLayerMask:
- serializedVersion: 2
- m_Bits: 1
- m_VolumeTrigger: {fileID: 0}
- m_VolumeFrameworkUpdateModeOption: 2
- m_RenderPostProcessing: 0
- m_Antialiasing: 0
- m_AntialiasingQuality: 2
- m_StopNaN: 0
- m_Dithering: 0
- m_ClearDepth: 1
- m_AllowXRRendering: 1
- m_AllowHDROutput: 1
- m_UseScreenCoordOverride: 0
- m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
- m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
- m_RequiresDepthTexture: 0
- m_RequiresColorTexture: 0
- m_Version: 2
- m_TaaSettings:
- m_Quality: 3
- m_FrameInfluence: 0.1
- m_JitterScale: 1
- m_MipBias: 0
- m_VarianceClampScale: 0.9
- m_ContrastAdaptiveSharpening: 0
---- !u!114 &279343787
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 279343782}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 9958aa39fc037e74090efe980e62c959, type: 3}
- m_Name:
- m_EditorClassIdentifier:
---- !u!1 &359294470
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 359294474}
- - component: {fileID: 359294473}
- - component: {fileID: 359294472}
- - component: {fileID: 359294471}
- m_Layer: 0
- m_Name: Plane
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!64 &359294471
-MeshCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 359294470}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 5
- m_Convex: 0
- m_CookingOptions: 30
- m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
---- !u!23 &359294472
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 359294470}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &359294473
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 359294470}
- m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &359294474
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 359294470}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 2.6299052, y: 0.44, z: -3.8792126}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &496775621
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 496775625}
- - component: {fileID: 496775624}
- - component: {fileID: 496775623}
- - component: {fileID: 496775622}
- m_Layer: 0
- m_Name: Sphere
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!135 &496775622
-SphereCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 496775621}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 3
- m_Radius: 0.5
- m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &496775623
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 496775621}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &496775624
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 496775621}
- m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &496775625
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 496775621}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 1.02, y: 1.834987, z: -3.8792126}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &931183989
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 931183993}
- - component: {fileID: 931183992}
- - component: {fileID: 931183991}
- - component: {fileID: 931183990}
- m_Layer: 0
- m_Name: Cube
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!65 &931183990
-BoxCollider:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 931183989}
- m_Material: {fileID: 0}
- m_IncludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_ExcludeLayers:
- serializedVersion: 2
- m_Bits: 0
- m_LayerOverridePriority: 0
- m_IsTrigger: 0
- m_ProvidesContacts: 0
- m_Enabled: 1
- serializedVersion: 3
- m_Size: {x: 1, y: 1, z: 1}
- m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &931183991
-MeshRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 931183989}
- m_Enabled: 1
- m_CastShadows: 1
- m_ReceiveShadows: 1
- m_DynamicOccludee: 1
- m_StaticShadowCaster: 0
- m_MotionVectors: 1
- m_LightProbeUsage: 1
- m_ReflectionProbeUsage: 1
- m_RayTracingMode: 2
- m_RayTraceProcedural: 0
- m_RayTracingAccelStructBuildFlagsOverride: 0
- m_RayTracingAccelStructBuildFlags: 1
- m_SmallMeshCulling: 1
- m_RenderingLayerMask: 1
- m_RendererPriority: 0
- m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
- m_StaticBatchInfo:
- firstSubMesh: 0
- subMeshCount: 0
- m_StaticBatchRoot: {fileID: 0}
- m_ProbeAnchor: {fileID: 0}
- m_LightProbeVolumeOverride: {fileID: 0}
- m_ScaleInLightmap: 1
- m_ReceiveGI: 1
- m_PreserveUVs: 0
- m_IgnoreNormalsForChartDetection: 0
- m_ImportantGI: 0
- m_StitchLightmapSeams: 1
- m_SelectedEditorRenderState: 3
- m_MinimumChartSize: 4
- m_AutoUVMaxDistance: 0.5
- m_AutoUVMaxAngle: 89
- m_LightmapParameters: {fileID: 0}
- m_SortingLayerID: 0
- m_SortingLayer: 0
- m_SortingOrder: 0
- m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &931183992
-MeshFilter:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 931183989}
- m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &931183993
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 931183989}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 2.6299052, y: 1.834987, z: -3.8792126}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &1408564287
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1408564289}
- - component: {fileID: 1408564288}
- - component: {fileID: 1408564290}
- 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 &1408564288
-Light:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1408564287}
- m_Enabled: 1
- serializedVersion: 11
- m_Type: 1
- m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
- m_Intensity: 1
- m_Range: 10
- m_SpotAngle: 30
- m_InnerSpotAngle: 21.80208
- m_CookieSize: 10
- m_Shadows:
- m_Type: 2
- m_Resolution: -1
- m_CustomResolution: -1
- m_Strength: 1
- m_Bias: 0.05
- m_NormalBias: 0.4
- m_NearPlane: 0.2
- m_CullingMatrixOverride:
- e00: 1
- e01: 0
- e02: 0
- e03: 0
- e10: 0
- e11: 1
- e12: 0
- e13: 0
- e20: 0
- e21: 0
- e22: 1
- e23: 0
- e30: 0
- e31: 0
- e32: 0
- e33: 1
- m_UseCullingMatrixOverride: 0
- m_Cookie: {fileID: 0}
- m_DrawHalo: 0
- m_Flare: {fileID: 0}
- m_RenderMode: 0
- m_CullingMask:
- serializedVersion: 2
- m_Bits: 4294967295
- m_RenderingLayerMask: 1
- m_Lightmapping: 4
- m_LightShadowCasterMode: 0
- m_AreaSize: {x: 1, y: 1}
- m_BounceIntensity: 1
- m_ColorTemperature: 6570
- m_UseColorTemperature: 0
- m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
- m_UseBoundingSphereOverride: 0
- m_UseViewFrustumForShadowCasterCull: 1
- m_ForceVisible: 0
- m_ShadowRadius: 0
- m_ShadowAngle: 0
- m_LightUnit: 1
- m_LuxAtDistance: 1
- m_EnableSpotReflector: 1
---- !u!4 &1408564289
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1408564287}
- serializedVersion: 2
- m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
- m_LocalPosition: {x: 0, y: 3, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
---- !u!114 &1408564290
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1408564287}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_Version: 3
- m_UsePipelineSettings: 1
- m_AdditionalLightsShadowResolutionTier: 2
- m_LightLayerMask: 1
- m_RenderingLayers: 1
- m_CustomShadowLayers: 0
- m_ShadowLayerMask: 1
- m_ShadowRenderingLayers: 1
- m_LightCookieSize: {x: 1, y: 1}
- m_LightCookieOffset: {x: 0, y: 0}
- m_SoftShadowQuality: 0
---- !u!1660057539 &9223372036854775807
-SceneRoots:
- m_ObjectHideFlags: 0
- m_Roots:
- - {fileID: 279343785}
- - {fileID: 1408564289}
- - {fileID: 931183993}
- - {fileID: 496775625}
- - {fileID: 359294474}
diff --git a/Assets/Scenes/Test2.unity.meta b/Assets/Scenes/Test2.unity.meta
deleted file mode 100644
index e9734a24..00000000
--- a/Assets/Scenes/Test2.unity.meta
+++ /dev/null
@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: aa0ed8397d304514c9995a8873897e41
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Scripts/SampleProject/Advanced3DMouseHandler .cs b/Assets/Scripts/SampleProject/Advanced3DMouseHandler .cs
deleted file mode 100644
index 5d942811..00000000
--- a/Assets/Scripts/SampleProject/Advanced3DMouseHandler .cs
+++ /dev/null
@@ -1,394 +0,0 @@
-using UnityEngine;
-using UnityEngine.EventSystems;
-using UnityEngine.InputSystem;
-
-public class Advanced3DMouseHandler : MonoBehaviour,
- IPointerClickHandler,
- IPointerDownHandler,
- IPointerUpHandler,
- IPointerEnterHandler,
- IPointerExitHandler,
- IBeginDragHandler,
- IDragHandler,
- IEndDragHandler
-{
- [Header("마우스 이벤트 설정")]
- [SerializeField] private bool enableHover = true;
- [SerializeField] private bool enableDrag = true;
- [SerializeField] private bool enableClick = true;
-
- [Header("드래그 설정")]
- [SerializeField] private float dragSensitivity = 1f;
- [SerializeField] private bool constrainToScreen = true;
- [SerializeField] private bool returnToOriginalPosition = false;
-
- [Header("시각적 피드백")]
- [SerializeField] private Color normalColor = Color.white;
- [SerializeField] private Color hoverColor = Color.yellow;
- [SerializeField] private Color dragColor = Color.blue;
- [SerializeField] private Color clickColor = Color.red;
-
- [Header("디버그")]
- [SerializeField] private bool showDebugLogs = true;
-
- // 컴포넌트 참조
- private Renderer objectRenderer;
- private Color originalColor;
-
- // 드래그 관련
- private bool isDragging = false;
- private Vector3 originalPosition;
- private Vector3 dragOffset;
- private Camera mainCamera;
-
- // 이벤트 델리게이트
- public System.Action OnClickEvent;
- public System.Action OnHoverEnterEvent;
- public System.Action OnHoverExitEvent;
- public System.Action OnBeginDragEvent;
- public System.Action OnDragEvent;
- public System.Action OnEndDragEvent;
-
- void Start()
- {
- InitializeComponents();
- ValidateInputSystem();
- }
-
- void InitializeComponents()
- {
- objectRenderer = GetComponent();
- if (objectRenderer != null)
- {
- originalColor = objectRenderer.material.color;
- }
-
- originalPosition = transform.position;
- mainCamera = Camera.main;
-
- // Collider 확인
- if (GetComponent() == null)
- {
- gameObject.AddComponent();
- if (showDebugLogs) Debug.Log($"✓ {gameObject.name}에 BoxCollider 추가됨");
- }
- }
-
- void ValidateInputSystem()
- {
- if (showDebugLogs)
- {
- Debug.Log($"=== {gameObject.name} Input System 검증 ===");
-
- // Input System의 Mouse Delta 확인
- if (Mouse.current != null)
- {
- Debug.Log("✓ Mouse Input Device 감지됨");
- Debug.Log($" 현재 마우스 위치: {Mouse.current.position.ReadValue()}");
- }
- else
- {
- Debug.LogWarning("❌ Mouse Input Device를 찾을 수 없음");
- }
- }
- }
-
- #region IPointer 인터페이스 구현
-
- public void OnPointerClick(PointerEventData eventData)
- {
- if (!enableClick) return;
-
- if (showDebugLogs)
- {
- Debug.Log($"🖱️ {gameObject.name} 클릭됨!");
- Debug.Log($" 버튼: {eventData.button}");
- Debug.Log($" 위치: {eventData.position}");
- }
-
- OnClickEvent?.Invoke(eventData);
-
- // 클릭 효과
- if (objectRenderer != null)
- {
- StartCoroutine(ClickEffect());
- }
- }
-
- public void OnPointerDown(PointerEventData eventData)
- {
- if (showDebugLogs)
- {
- Debug.Log($"⬇️ {gameObject.name} 마우스 다운");
- }
-
- if (objectRenderer != null)
- {
- objectRenderer.material.color = clickColor;
- }
- }
-
- public void OnPointerUp(PointerEventData eventData)
- {
- if (showDebugLogs)
- {
- Debug.Log($"⬆️ {gameObject.name} 마우스 업");
- }
-
- if (!isDragging && objectRenderer != null)
- {
- objectRenderer.material.color = hoverColor;
- }
- }
-
- public void OnPointerEnter(PointerEventData eventData)
- {
- if (!enableHover) return;
-
- if (showDebugLogs)
- {
- Debug.Log($"➡️ {gameObject.name} 마우스 진입");
- Debug.Log($" 마우스 위치: {eventData.position}");
- Debug.Log($" 월드 위치: {eventData.pointerCurrentRaycast.worldPosition}");
- }
-
- OnHoverEnterEvent?.Invoke(eventData);
-
- if (objectRenderer != null && !isDragging)
- {
- objectRenderer.material.color = hoverColor;
- }
-
- // 커서 변경 (옵션)
- Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto);
- }
-
- public void OnPointerExit(PointerEventData eventData)
- {
- if (!enableHover) return;
-
- if (showDebugLogs)
- {
- Debug.Log($"⬅️ {gameObject.name} 마우스 벗어남");
- }
-
- OnHoverExitEvent?.Invoke(eventData);
-
- if (objectRenderer != null && !isDragging)
- {
- objectRenderer.material.color = originalColor;
- }
- }
-
- public void OnBeginDrag(PointerEventData eventData)
- {
- if (!enableDrag) return;
-
- isDragging = true;
-
- if (showDebugLogs)
- {
- Debug.Log($"🔄 {gameObject.name} 드래그 시작");
- Debug.Log($" 시작 위치: {eventData.position}");
- }
-
- OnBeginDragEvent?.Invoke(eventData);
-
- // 드래그 시작 시 오프셋 계산
- if (mainCamera != null)
- {
- Vector3 screenPoint = mainCamera.WorldToScreenPoint(transform.position);
- dragOffset = transform.position - mainCamera.ScreenToWorldPoint(
- new Vector3(eventData.position.x, eventData.position.y, screenPoint.z));
- }
-
- if (objectRenderer != null)
- {
- objectRenderer.material.color = dragColor;
- }
- }
-
- public void OnDrag(PointerEventData eventData)
- {
- if (!enableDrag || !isDragging) return;
-
- if (showDebugLogs && Time.frameCount % 10 == 0) // 로그 스팸 방지
- {
- Debug.Log($"🔄 {gameObject.name} 드래그 중");
- Debug.Log($" 현재 위치: {eventData.position}");
- Debug.Log($" 델타: {eventData.delta}");
- }
-
- OnDragEvent?.Invoke(eventData);
-
- // 드래그에 따른 위치 업데이트
- UpdateDragPosition(eventData);
- }
-
- public void OnEndDrag(PointerEventData eventData)
- {
- if (!enableDrag) return;
-
- if (showDebugLogs)
- {
- Debug.Log($"🔄 {gameObject.name} 드래그 종료");
- Debug.Log($" 최종 위치: {eventData.position}");
- }
-
- OnEndDragEvent?.Invoke(eventData);
-
- isDragging = false;
-
- // 원래 위치로 돌아가기 (옵션)
- if (returnToOriginalPosition)
- {
- StartCoroutine(ReturnToOriginalPosition());
- }
-
- if (objectRenderer != null)
- {
- objectRenderer.material.color = originalColor;
- }
- }
-
- #endregion
-
- #region 드래그 처리 메서드
-
- void UpdateDragPosition(PointerEventData eventData)
- {
- if (mainCamera == null) return;
-
- // 화면 좌표를 월드 좌표로 변환
- Vector3 screenPoint = new Vector3(eventData.position.x, eventData.position.y,
- mainCamera.WorldToScreenPoint(transform.position).z);
- Vector3 worldPoint = mainCamera.ScreenToWorldPoint(screenPoint);
-
- // 드래그 감도 적용
- Vector3 targetPosition = worldPoint + dragOffset;
- targetPosition = Vector3.Lerp(transform.position, targetPosition, dragSensitivity * Time.deltaTime * 10f);
-
- // 화면 밖으로 나가지 않도록 제한 (옵션)
- if (constrainToScreen)
- {
- targetPosition = ConstrainToScreen(targetPosition);
- }
-
- transform.position = targetPosition;
- }
-
- Vector3 ConstrainToScreen(Vector3 worldPosition)
- {
- if (mainCamera == null) return worldPosition;
-
- // 월드 위치를 화면 좌표로 변환
- Vector3 screenPos = mainCamera.WorldToScreenPoint(worldPosition);
-
- // 화면 경계 내로 제한
- screenPos.x = Mathf.Clamp(screenPos.x, 0, Screen.width);
- screenPos.y = Mathf.Clamp(screenPos.y, 0, Screen.height);
-
- // 다시 월드 좌표로 변환
- return mainCamera.ScreenToWorldPoint(screenPos);
- }
-
- System.Collections.IEnumerator ReturnToOriginalPosition()
- {
- float elapsedTime = 0f;
- float duration = 0.5f;
- Vector3 startPosition = transform.position;
-
- while (elapsedTime < duration)
- {
- transform.position = Vector3.Lerp(startPosition, originalPosition, elapsedTime / duration);
- elapsedTime += Time.deltaTime;
- yield return null;
- }
-
- transform.position = originalPosition;
- }
-
- System.Collections.IEnumerator ClickEffect()
- {
- if (objectRenderer == null) yield break;
-
- Color startColor = objectRenderer.material.color;
-
- // 클릭 색상으로 변경
- objectRenderer.material.color = clickColor;
- yield return new WaitForSeconds(0.1f);
-
- // 원래 색상으로 복원
- objectRenderer.material.color = startColor;
- }
-
- #endregion
-
- #region 공개 메서드
-
- public void SetDragEnabled(bool enabled)
- {
- enableDrag = enabled;
- }
-
- public void SetHoverEnabled(bool enabled)
- {
- enableHover = enabled;
- }
-
- public void SetClickEnabled(bool enabled)
- {
- enableClick = enabled;
- }
-
- public void ResetPosition()
- {
- transform.position = originalPosition;
- }
-
- public void SetColors(Color normal, Color hover, Color drag, Color click)
- {
- normalColor = normal;
- hoverColor = hover;
- dragColor = drag;
- clickColor = click;
- originalColor = normal;
-
- if (objectRenderer != null && !isDragging)
- {
- objectRenderer.material.color = normal;
- }
- }
-
- #endregion
-
- #region 디버그 메서드
-
- void Update()
- {
- // 실시간 마우스 입력 모니터링 (디버그용)
- if (showDebugLogs && Input.GetKeyDown(KeyCode.F3))
- {
- ShowMouseInputStatus();
- }
- }
-
- void ShowMouseInputStatus()
- {
- Debug.Log("=== 실시간 마우스 입력 상태 ===");
-
- if (Mouse.current != null)
- {
- Debug.Log($"마우스 위치: {Mouse.current.position.ReadValue()}");
- Debug.Log($"마우스 델타: {Mouse.current.delta.ReadValue()}");
- Debug.Log($"좌클릭 상태: {Mouse.current.leftButton.isPressed}");
- Debug.Log($"우클릭 상태: {Mouse.current.rightButton.isPressed}");
- }
-
- Debug.Log($"현재 객체 상태:");
- Debug.Log($" 드래그 중: {isDragging}");
- Debug.Log($" 위치: {transform.position}");
- }
-
- #endregion
-}
\ No newline at end of file
diff --git a/Assets/Scripts/SampleProject/Advanced3DMouseHandler .cs.meta b/Assets/Scripts/SampleProject/Advanced3DMouseHandler .cs.meta
deleted file mode 100644
index 2ef3aca7..00000000
--- a/Assets/Scripts/SampleProject/Advanced3DMouseHandler .cs.meta
+++ /dev/null
@@ -1,2 +0,0 @@
-fileFormatVersion: 2
-guid: ebbb4a29a8f33384d9fe56b7ce205040
\ No newline at end of file
diff --git a/Assets/Scripts/SampleProject/AppMain.cs b/Assets/Scripts/SampleProject/AppMain.cs
index 58ccfaee..5bd7fb0d 100644
--- a/Assets/Scripts/SampleProject/AppMain.cs
+++ b/Assets/Scripts/SampleProject/AppMain.cs
@@ -1,3 +1,4 @@
+using Cysharp.Threading.Tasks;
using System;
using UnityEngine;
using UVC.Core;
@@ -50,7 +51,13 @@ namespace SampleProject
mqttPipeLine = new MQTTPipeLine("localhost", 1883);
mqttPipeLine.AddTopic("AGV");
- //mqttPipeLine.Execute();
+ mqttPipeLine.Execute();
+
+ //10
+ UniTask.Delay(TimeSpan.FromSeconds(10)).ContinueWith(() =>
+ {
+ mqttPipeLine.Stop();
+ });
}
}
diff --git a/Assets/Scripts/SampleProject/CompleteMouseInputActionsCreator.cs b/Assets/Scripts/SampleProject/CompleteMouseInputActionsCreator.cs
deleted file mode 100644
index ec01f494..00000000
--- a/Assets/Scripts/SampleProject/CompleteMouseInputActionsCreator.cs
+++ /dev/null
@@ -1,142 +0,0 @@
-using UnityEngine;
-using UnityEngine.InputSystem;
-using UnityEngine.InputSystem.UI;
-using UnityEngine.EventSystems;
-
-public class CompleteMouseInputActionsCreator : MonoBehaviour
-{
- [ContextMenu("Create Complete Mouse Input Actions")]
- void CreateCompleteMouseInputActions()
- {
- var asset = ScriptableObject.CreateInstance();
- asset.name = "CompleteMouseUIInputActions";
-
- // UI Action Map 생성
- var uiMap = asset.AddActionMap("UI");
-
- // 1. Point Action (마우스 위치 추적)
- var pointAction = uiMap.AddAction("Point", InputActionType.PassThrough);
- pointAction.expectedControlType = "Vector2"; // 마우스 위치는 Vector2 타입
- pointAction.AddBinding("/position");
- pointAction.AddBinding("/position");
- pointAction.AddBinding("/touch*/position");
-
- // 2. Left Click Action
- var leftClickAction = uiMap.AddAction("LeftClick", InputActionType.Button);
- leftClickAction.AddBinding("/leftButton");
- leftClickAction.AddBinding("/tip");
- leftClickAction.AddBinding("/touch*/press");
-
- // 3. Right Click Action
- var rightClickAction = uiMap.AddAction("RightClick", InputActionType.Button);
- rightClickAction.AddBinding("/rightButton");
- rightClickAction.AddBinding("/barrel");
-
- // 4. Middle Click Action
- var middleClickAction = uiMap.AddAction("MiddleClick", InputActionType.Button);
- middleClickAction.AddBinding("/middleButton");
-
- // 5. Scroll Wheel Action
- var scrollAction = uiMap.AddAction("ScrollWheel", InputActionType.PassThrough);
- pointAction.expectedControlType = "Vector2";
- scrollAction.AddBinding("/scroll");
-
- // 6. Mouse Delta (드래그용)
- var mouseDeltaAction = uiMap.AddAction("MouseDelta", InputActionType.PassThrough);
- mouseDeltaAction.expectedControlType = "Vector2"; // 마우스 이동은 Vector2 타입
- mouseDeltaAction.AddBinding("/delta");
- mouseDeltaAction.AddBinding("/delta");
- mouseDeltaAction.AddBinding("/touch*/delta");
-
- // 7. Drag Action (드래그 감지용)
- var dragAction = uiMap.AddAction("Drag", InputActionType.PassThrough);
- dragAction.expectedControlType = "Vector2";
- // 드래그는 마우스 버튼이 눌린 상태에서의 마우스 이동을 감지
- // Composite Binding을 사용하여 복합 입력 생성
- var dragComposite = dragAction.AddCompositeBinding("Vector2");
- dragComposite.With("x", "/delta/x");
- dragComposite.With("y", "/delta/y");
-
- // 8. Submit Action (엔터, 스페이스)
- var submitAction = uiMap.AddAction("Submit", InputActionType.Button);
- submitAction.AddBinding("/enter");
- submitAction.AddBinding("/space");
- submitAction.AddBinding("/buttonSouth");
-
- // 9. Cancel Action (ESC)
- var cancelAction = uiMap.AddAction("Cancel", InputActionType.Button);
- cancelAction.AddBinding("/escape");
- cancelAction.AddBinding("/buttonEast");
-
- // 10. Navigate Action (방향키)
- var navigateAction = uiMap.AddAction("Navigate", InputActionType.PassThrough);
- navigateAction.expectedControlType = "Vector2"; // 방향키 입력은 Vector2 타입
- navigateAction.AddBinding("/arrowKeys");
- navigateAction.AddBinding("/leftStick");
- navigateAction.AddBinding("/dpad");
-
- Debug.Log("✓ 완전한 마우스 Input Actions Asset 생성 완료");
-
- // Event System에 자동 할당
- AutoAssignToInputModule(asset);
-
- // 파일로 저장 (에디터에서만)
-#if UNITY_EDITOR
- SaveAssetToFile(asset);
-#endif
- }
-
- void AutoAssignToInputModule(InputActionAsset asset)
- {
- var eventSystem = FindObjectOfType();
- if (eventSystem == null)
- {
- var go = new GameObject("EventSystem");
- eventSystem = go.AddComponent();
- }
-
- var inputModule = eventSystem.GetComponent();
- if (inputModule == null)
- {
- // 기존 Input Module 제거
- var oldModule = eventSystem.GetComponent();
- if (oldModule != null)
- {
- DestroyImmediate(oldModule);
- }
-
- inputModule = eventSystem.gameObject.AddComponent();
- }
-
- // Actions Asset 및 Action References 할당
- inputModule.actionsAsset = asset;
-
- var uiMap = asset.FindActionMap("UI");
- if (uiMap != null)
- {
- inputModule.point = InputActionReference.Create(uiMap.FindAction("Point"));
- inputModule.leftClick = InputActionReference.Create(uiMap.FindAction("LeftClick"));
- inputModule.rightClick = InputActionReference.Create(uiMap.FindAction("RightClick"));
- inputModule.middleClick = InputActionReference.Create(uiMap.FindAction("MiddleClick"));
- inputModule.scrollWheel = InputActionReference.Create(uiMap.FindAction("ScrollWheel"));
- inputModule.submit = InputActionReference.Create(uiMap.FindAction("Submit"));
- inputModule.cancel = InputActionReference.Create(uiMap.FindAction("Cancel"));
- inputModule.move = InputActionReference.Create(uiMap.FindAction("Navigate"));
-
- Debug.Log("✓ InputSystemUIInputModule에 Actions 할당 완료");
- }
-
- // Actions 활성화
- asset.Enable();
- }
-
-#if UNITY_EDITOR
- void SaveAssetToFile(InputActionAsset asset)
- {
- string path = "Assets/CompleteMouseUIInputActions.inputactions";
- UnityEditor.AssetDatabase.CreateAsset(asset, path);
- UnityEditor.AssetDatabase.SaveAssets();
- Debug.Log($"✓ Input Actions Asset 저장: {path}");
- }
-#endif
-}
\ No newline at end of file
diff --git a/Assets/Scripts/SampleProject/CompleteMouseInputActionsCreator.cs.meta b/Assets/Scripts/SampleProject/CompleteMouseInputActionsCreator.cs.meta
deleted file mode 100644
index 33d811f8..00000000
--- a/Assets/Scripts/SampleProject/CompleteMouseInputActionsCreator.cs.meta
+++ /dev/null
@@ -1,2 +0,0 @@
-fileFormatVersion: 2
-guid: f356dde41ea0a7a4f9b6debea38db74f
\ No newline at end of file
diff --git a/Assets/Scripts/SampleProject/RaycastDebugger.cs b/Assets/Scripts/SampleProject/RaycastDebugger.cs
deleted file mode 100644
index 5809c06f..00000000
--- a/Assets/Scripts/SampleProject/RaycastDebugger.cs
+++ /dev/null
@@ -1,42 +0,0 @@
-using UnityEngine;
-
-public class RaycastDebugger : MonoBehaviour
-{
- private Camera mainCamera;
-
- void Start()
- {
- // Camera.main 대신 시작할 때 한 번만 카메라를 찾아오는 것이 더 안전하고 효율적입니다.
- mainCamera = Camera.main;
- if (mainCamera == null)
- {
- Debug.LogError("씬에 'MainCamera' 태그가 붙은 카메라가 없습니다!");
- }
- }
-
- void Update()
- {
- if (Input.GetMouseButtonDown(0))
- {
- if (mainCamera == null) return;
-
- Ray ray = mainCamera.ScreenPointToRay(Input.mousePosition);
- RaycastHit hit;
-
- // Scene 뷰에서 Ray를 시각적으로 확인하기 위한 디버그용 코드
- Debug.DrawRay(ray.origin, ray.direction * 100f, Color.yellow, 120f);
-
- // Ray 객체를 직접 넘기는 것이 더 간단합니다.
- // 거리는 무한대(Mathf.Infinity)로 설정합니다.
- if (Physics.Raycast(ray, out hit))
- {
- Debug.Log("Raycast Hit! 맞은 객체: " + hit.collider.name);
- // 여기에 원하는 로직을 추가하세요.
- }
- else
- {
- Debug.Log("Raycast Missed. 아무것도 맞지 않았습니다.");
- }
- }
- }
-}
\ No newline at end of file
diff --git a/Assets/Scripts/SampleProject/RaycastDebugger.cs.meta b/Assets/Scripts/SampleProject/RaycastDebugger.cs.meta
deleted file mode 100644
index 7cf0f4f2..00000000
--- a/Assets/Scripts/SampleProject/RaycastDebugger.cs.meta
+++ /dev/null
@@ -1,2 +0,0 @@
-fileFormatVersion: 2
-guid: 9958aa39fc037e74090efe980e62c959
\ No newline at end of file
diff --git a/Assets/Scripts/UVC/Data/DataMapper.cs b/Assets/Scripts/UVC/Data/DataMapper.cs
index a946a92e..fb0dd2b7 100644
--- a/Assets/Scripts/UVC/Data/DataMapper.cs
+++ b/Assets/Scripts/UVC/Data/DataMapper.cs
@@ -58,6 +58,7 @@ namespace UVC.Data
///
private DataMask mask;
+
///
/// 병렬 처리를 적용할 배열의 최소 크기
///
diff --git a/Assets/Scripts/UVC/Data/DataMask.cs b/Assets/Scripts/UVC/Data/DataMask.cs
index 2ebd3576..c60fd8f4 100644
--- a/Assets/Scripts/UVC/Data/DataMask.cs
+++ b/Assets/Scripts/UVC/Data/DataMask.cs
@@ -4,7 +4,6 @@ using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
-using Unity.VisualScripting.Antlr3.Runtime;
namespace UVC.Data
{
diff --git a/Assets/Scripts/UVC/Data/DataValidator.cs b/Assets/Scripts/UVC/Data/DataValidator.cs
new file mode 100644
index 00000000..f4436d7b
--- /dev/null
+++ b/Assets/Scripts/UVC/Data/DataValidator.cs
@@ -0,0 +1,358 @@
+#nullable enable
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+
+namespace UVC.Data
+{
+ ///
+ /// JSON 데이터의 유효성을 검사하는 클래스입니다.
+ /// 이 클래스는 특정 속성(프로퍼티)에 대한 유효성 검사 규칙을 추가하고,
+ /// 데이터가 해당 규칙을 모두 충족하는지 확인할 수 있습니다.
+ ///
+ ///
+ ///
+ /// // 유효성 검사기 생성
+ /// var _validator = new DataValidator();
+ ///
+ /// // 검증 규칙 추가: name 속성은 비어있지 않아야 함
+ /// _validator.AddValidator("name", value => value is string name && !string.IsNullOrEmpty(name));
+ ///
+ /// // 검증 규칙 추가: age 속성은 18 이상이어야 함
+ /// _validator.AddValidator("age", value => value is long age && age >= 18);
+ ///
+ /// // 데이터 검증 예시
+ /// var userData = new JObject {
+ /// { "name", "홍길동" },
+ /// { "age", 20 }
+ /// };
+ ///
+ /// if (_validator.IsValid(userData))
+ /// {
+ /// Console.WriteLine("유효한 사용자 데이터입니다.");
+ /// }
+ /// else
+ /// {
+ /// Console.WriteLine("유효하지 않은 사용자 데이터입니다.");
+ /// }
+ ///
+ ///
+ public class DataValidator
+ {
+ ///
+ /// 유효성 검사 규칙의 목록입니다.
+ /// 각 사전은 속성 이름(string)과 해당 속성의 검증 함수(Func<object, bool>)를 포함합니다.
+ ///
+ private List>> validaters = new List>>();
+
+ ///
+ /// 대용량 JSON 데이터를 스트리밍 방식으로 처리할지 여부를 나타내는 속성입니다.
+ /// 스트리밍 방식은 메모리 사용량을 줄이기 위해 대용량 데이터를 처리할 때 유용합니다.
+ ///
+ ///
+ /// true로 설정하면 대용량 JSON 데이터를 처리할 때 스트리밍 방식을 사용합니다.
+ /// false로 설정하면 항상 전체 데이터를 메모리에 로드합니다.
+ ///
+ public bool SupportsStreamParsing { get; internal set; } = true;
+
+ ///
+ /// 스트리밍 방식을 적용할 JSON 데이터의 최소 길이(바이트)입니다.
+ /// 데이터 길이가 이 값보다 크면 스트리밍 방식으로 처리합니다.
+ ///
+ ///
+ /// 기본값은 10,000바이트입니다. 작은 데이터의 경우 스트리밍 처리가 오히려
+ /// 오버헤드를 발생시킬 수 있으므로, 특정 크기 이상일 때만 스트리밍 방식을 적용합니다.
+ ///
+ public int SupportsStreamLength { get; internal set; } = 10000;
+
+ ///
+ /// 새로운 유효성 검사 규칙을 추가합니다.
+ ///
+ /// 검사할 속성 이름
+ /// 유효성 검사 함수 (매개변수: 속성값, 반환값: 유효성 여부)
+ ///
+ ///
+ /// var _validator = new DataValidator();
+ ///
+ /// // 문자열 속성이 비어있지 않은지 확인하는 규칙
+ /// _validator.AddValidator("username", value =>
+ /// {
+ /// if (value is string str)
+ /// return !string.IsNullOrEmpty(str);
+ /// return false;
+ /// });
+ ///
+ /// // 숫자 속성이 특정 범위 내에 있는지 확인하는 규칙
+ /// _validator.AddValidator("score", value =>
+ /// {
+ /// if (value is long num)
+ /// return num >= 0 && num <= 100;
+ /// return false;
+ /// });
+ ///
+ ///
+ public void AddValidator(string propertyName, Func