diff --git a/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml b/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
index b22690ee4..2b4b39f5d 100644
--- a/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
+++ b/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
@@ -54,7 +54,6 @@
-
@@ -1248,10 +1247,12 @@
+
+
diff --git a/Assembly-CSharp.csproj b/Assembly-CSharp.csproj
index 9dbb7dc17..b913b6197 100644
--- a/Assembly-CSharp.csproj
+++ b/Assembly-CSharp.csproj
@@ -148,7 +148,7 @@
-
+
@@ -674,6 +674,7 @@
+
diff --git a/Assets/Materials/UI/Zone.mat b/Assets/Materials/UI/Zone.mat
index 79c0333cf..f2ca65f22 100644
--- a/Assets/Materials/UI/Zone.mat
+++ b/Assets/Materials/UI/Zone.mat
@@ -56,21 +56,21 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- - _AngleFade: 20
- - _AngleWidth: 0.05
+ - _AngleFade: 3
+ - _AngleWidth: 100
- _BumpScale: 1
- _ClipDistance: 1000
- _Cutoff: 0.5
- _DangerSteepness: 5
- - _DepthRange: 100
+ - _DepthRange: 268.43512
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _HeightRange: 50
- - _LineFade: 20
- - _LineWidth: 0.05
+ - _LineFade: 3
+ - _LineWidth: 100
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
@@ -78,12 +78,12 @@ Material:
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- - _StartDepth: 0
+ - _StartDepth: 423.49216
- _StartHeight: 0
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- - _AngleColor: {r: 0, g: 0.058300022, b: 0.106000006, a: 1}
+ - _AngleColor: {r: 0.103773594, g: 0, b: 0.088093735, a: 1}
- _Color: {r: 0, g: 0.4, b: 0.6, a: 1}
- _DangerColor: {r: 2.9803922, g: 0.2509804, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
diff --git a/Assets/Resources/Aetheria-Economy.inputactions b/Assets/Resources/Aetheria.inputactions
similarity index 94%
rename from Assets/Resources/Aetheria-Economy.inputactions
rename to Assets/Resources/Aetheria.inputactions
index 56fcc3192..225d58fc7 100644
--- a/Assets/Resources/Aetheria-Economy.inputactions
+++ b/Assets/Resources/Aetheria.inputactions
@@ -1,5 +1,5 @@
{
- "name": "Aetheria-Economy",
+ "name": "Aetheria",
"maps": [
{
"name": "Player",
@@ -333,6 +333,14 @@
"expectedControlType": "Quaternion",
"processors": "",
"interactions": ""
+ },
+ {
+ "name": "Drag",
+ "type": "Value",
+ "id": "0c96ec22-9571-46c8-94bf-199e70e919ed",
+ "expectedControlType": "Vector2",
+ "processors": "",
+ "interactions": ""
}
],
"bindings": [
@@ -753,6 +761,44 @@
"action": "TrackedDeviceOrientation",
"isComposite": false,
"isPartOfComposite": false
+ },
+ {
+ "name": "",
+ "id": "618fb60f-5dc7-47ec-8dbf-fdc3d4c515a1",
+ "path": "/delta",
+ "interactions": "",
+ "processors": "ScaleVector2(x=1.25,y=1.25)",
+ "groups": "",
+ "action": "Drag",
+ "isComposite": false,
+ "isPartOfComposite": false
+ }
+ ]
+ },
+ {
+ "name": "Global",
+ "id": "2e2023b8-ce3b-4cb3-a12a-ff4ac610f11b",
+ "actions": [
+ {
+ "name": "Map Toggle",
+ "type": "Button",
+ "id": "e43f020b-dec0-43d2-a83b-1390d45819be",
+ "expectedControlType": "Button",
+ "processors": "",
+ "interactions": ""
+ }
+ ],
+ "bindings": [
+ {
+ "name": "",
+ "id": "7eadec25-7b3f-4d69-92b7-c756f5f9b0dd",
+ "path": "/m",
+ "interactions": "",
+ "processors": "",
+ "groups": "Keyboard&Mouse",
+ "action": "Map Toggle",
+ "isComposite": false,
+ "isPartOfComposite": false
}
]
}
diff --git a/Assets/Resources/Aetheria-Economy.inputactions.meta b/Assets/Resources/Aetheria.inputactions.meta
similarity index 100%
rename from Assets/Resources/Aetheria-Economy.inputactions.meta
rename to Assets/Resources/Aetheria.inputactions.meta
diff --git a/Assets/Resources/Minimap.renderTexture b/Assets/Resources/Minimap.renderTexture
index 112350e27..5bc06b426 100644
--- a/Assets/Resources/Minimap.renderTexture
+++ b/Assets/Resources/Minimap.renderTexture
@@ -13,8 +13,8 @@ RenderTexture:
m_ForcedFallbackFormat: 4
m_DownscaleFallback: 0
serializedVersion: 3
- m_Width: 512
- m_Height: 512
+ m_Width: 256
+ m_Height: 256
m_AntiAliasing: 1
m_MipCount: -1
m_DepthFormat: 2
diff --git a/Assets/Scenes/ARPG.unity b/Assets/Scenes/ARPG.unity
index e61883c41..759dea365 100644
--- a/Assets/Scenes/ARPG.unity
+++ b/Assets/Scenes/ARPG.unity
@@ -4679,6 +4679,42 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 828461d20e2142546814879a0a0f44b6, type: 3}
m_Name:
m_EditorClassIdentifier:
+--- !u!1 &346000246
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 346000247}
+ m_Layer: 5
+ m_Name: Gameplay
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &346000247
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 346000246}
+ 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: 488443579}
+ m_Father: {fileID: 761574181}
+ m_RootOrder: 4
+ 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: 100}
+ m_Pivot: {x: 0.5, y: 0.5}
--- !u!1001 &355950000
PrefabInstance:
m_ObjectHideFlags: 0
@@ -5595,7 +5631,7 @@ PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
- m_TransformParent: {fileID: 761574181}
+ m_TransformParent: {fileID: 346000247}
m_Modifications:
- target: {fileID: 2352149239973948581, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
@@ -5625,17 +5661,17 @@ PrefabInstance:
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
propertyPath: m_LocalRotation.x
- value: 0
+ value: -0
objectReference: {fileID: 0}
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
propertyPath: m_LocalRotation.y
- value: 0
+ value: -0
objectReference: {fileID: 0}
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
propertyPath: m_LocalRotation.z
- value: 0
+ value: -0
objectReference: {fileID: 0}
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
@@ -5645,7 +5681,7 @@ PrefabInstance:
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
propertyPath: m_RootOrder
- value: 4
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
@@ -5665,12 +5701,12 @@ PrefabInstance:
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
propertyPath: m_AnchoredPosition.x
- value: 10
+ value: -900
objectReference: {fileID: 0}
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
propertyPath: m_AnchoredPosition.y
- value: 10
+ value: -480.1105
objectReference: {fileID: 0}
- target: {fileID: 2352149240678857104, guid: f032e3ceed591844e80327e865f2c582,
type: 3}
@@ -5752,7 +5788,7 @@ GameObject:
- component: {fileID: 488792362}
- component: {fileID: 488792363}
m_Layer: 0
- m_Name: GravityCamera
+ m_Name: Map Gravity
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -9637,7 +9673,7 @@ RectTransform:
- {fileID: 53415401}
- {fileID: 721750121}
- {fileID: 1723136546}
- - {fileID: 488443579}
+ - {fileID: 346000247}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -11874,6 +11910,7 @@ GameObject:
- component: {fileID: 1009503731}
- component: {fileID: 1009503732}
- component: {fileID: 1009503733}
+ - component: {fileID: 1009503734}
m_Layer: 0
m_Name: GameManager
m_TagString: Untagged
@@ -11912,8 +11949,10 @@ MonoBehaviour:
m_EditorClassIdentifier:
Settings: {fileID: 11400000, guid: cd2344e2001a37544aab0960c164d4ff, type: 2}
SectorRenderer: {fileID: 1009503731}
+ MapView: {fileID: 1009503734}
TopDownCamera: {fileID: 887677622}
FollowCamera: {fileID: 887677622}
+ GameplayUI: {fileID: 346000246}
--- !u!4 &1009503730
Transform:
m_ObjectHideFlags: 0
@@ -12127,6 +12166,23 @@ MonoBehaviour:
m_DefaultActionMap: Player
m_SplitScreenIndex: -1
m_Camera: {fileID: 2115559089}
+--- !u!114 &1009503734
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1009503727}
+ m_Enabled: 0
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 76d9e45f376fcfe409f3a4f26ccb4f3e, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ Main: {fileID: 2115559089}
+ MinimapGravity: {fileID: 488792362}
+ Minimap: {fileID: 970624071}
+ GravityRenderer: {fileID: 509767789}
+ ZoomSpeed: 0.001
--- !u!1 &1015214589
GameObject:
m_ObjectHideFlags: 0
@@ -13723,7 +13779,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 1
+ m_IsActive: 0
--- !u!224 &1273980439
RectTransform:
m_ObjectHideFlags: 0
diff --git a/Assets/Scripts/ActionGameManager.cs b/Assets/Scripts/ActionGameManager.cs
index f6bcc985a..c60c8d034 100644
--- a/Assets/Scripts/ActionGameManager.cs
+++ b/Assets/Scripts/ActionGameManager.cs
@@ -15,8 +15,10 @@ public class ActionGameManager : MonoBehaviour
{
public GameSettings Settings;
public SectorRenderer SectorRenderer;
+ public MapView MapView;
public CinemachineVirtualCamera TopDownCamera;
public CinemachineVirtualCamera FollowCamera;
+ public GameObject GameplayUI;
//public PlayerInput Input;
private DirectoryInfo _filePath;
@@ -55,6 +57,8 @@ public class ActionGameManager : MonoBehaviour
_input = new AetheriaInput();
_input.Player.Enable();
+ _input.Global.Enable();
+ _input.UI.Enable();
_zoomLevelIndex = Settings.DefaultMinimapZoom;
_input.Player.MinimapZoom.performed += context =>
@@ -63,6 +67,22 @@ public class ActionGameManager : MonoBehaviour
SectorRenderer.MinimapDistance = Settings.MinimapZoomLevels[_zoomLevelIndex];
};
+ _input.Global.MapToggle.performed += context =>
+ {
+ MapView.enabled = !MapView.enabled;
+ GameplayUI.SetActive(!MapView.enabled);
+ if (MapView.enabled)
+ {
+ MapView.BindInput(_input.UI);
+ _input.Player.Disable();
+ }
+ else
+ {
+ _input.Player.Enable();
+ SectorRenderer.MinimapDistance = Settings.MinimapZoomLevels[_zoomLevelIndex];
+ }
+ };
+
ConsoleController.AddCommand("editmode", _ => ToggleEditMode());
ConsoleController.AddCommand("savezone", args =>
{
diff --git a/Assets/Scripts/AetheriaInput.cs b/Assets/Scripts/AetheriaInput.cs
index 6fc68ebe1..4c52d7534 100644
--- a/Assets/Scripts/AetheriaInput.cs
+++ b/Assets/Scripts/AetheriaInput.cs
@@ -1,4 +1,4 @@
-// GENERATED AUTOMATICALLY FROM 'Assets/Resources/Aetheria-Economy.inputactions'
+// GENERATED AUTOMATICALLY FROM 'Assets/Resources/Aetheria.inputactions'
using System;
using System.Collections;
@@ -12,7 +12,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
public @AetheriaInput()
{
asset = InputActionAsset.FromJson(@"{
- ""name"": ""Aetheria-Economy"",
+ ""name"": ""Aetheria"",
""maps"": [
{
""name"": ""Player"",
@@ -346,6 +346,14 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""expectedControlType"": ""Quaternion"",
""processors"": """",
""interactions"": """"
+ },
+ {
+ ""name"": ""Drag"",
+ ""type"": ""Value"",
+ ""id"": ""0c96ec22-9571-46c8-94bf-199e70e919ed"",
+ ""expectedControlType"": ""Vector2"",
+ ""processors"": """",
+ ""interactions"": """"
}
],
""bindings"": [
@@ -766,6 +774,44 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""action"": ""TrackedDeviceOrientation"",
""isComposite"": false,
""isPartOfComposite"": false
+ },
+ {
+ ""name"": """",
+ ""id"": ""618fb60f-5dc7-47ec-8dbf-fdc3d4c515a1"",
+ ""path"": ""/delta"",
+ ""interactions"": """",
+ ""processors"": ""ScaleVector2(x=1.25,y=1.25)"",
+ ""groups"": """",
+ ""action"": ""Drag"",
+ ""isComposite"": false,
+ ""isPartOfComposite"": false
+ }
+ ]
+ },
+ {
+ ""name"": ""Global"",
+ ""id"": ""2e2023b8-ce3b-4cb3-a12a-ff4ac610f11b"",
+ ""actions"": [
+ {
+ ""name"": ""Map Toggle"",
+ ""type"": ""Button"",
+ ""id"": ""e43f020b-dec0-43d2-a83b-1390d45819be"",
+ ""expectedControlType"": ""Button"",
+ ""processors"": """",
+ ""interactions"": """"
+ }
+ ],
+ ""bindings"": [
+ {
+ ""name"": """",
+ ""id"": ""7eadec25-7b3f-4d69-92b7-c756f5f9b0dd"",
+ ""path"": ""/m"",
+ ""interactions"": """",
+ ""processors"": """",
+ ""groups"": ""Keyboard&Mouse"",
+ ""action"": ""Map Toggle"",
+ ""isComposite"": false,
+ ""isPartOfComposite"": false
}
]
}
@@ -851,6 +897,10 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
m_UI_RightClick = m_UI.FindAction("RightClick", throwIfNotFound: true);
m_UI_TrackedDevicePosition = m_UI.FindAction("TrackedDevicePosition", throwIfNotFound: true);
m_UI_TrackedDeviceOrientation = m_UI.FindAction("TrackedDeviceOrientation", throwIfNotFound: true);
+ m_UI_Drag = m_UI.FindAction("Drag", throwIfNotFound: true);
+ // Global
+ m_Global = asset.FindActionMap("Global", throwIfNotFound: true);
+ m_Global_MapToggle = m_Global.FindAction("Map Toggle", throwIfNotFound: true);
}
public void Dispose()
@@ -967,6 +1017,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
private readonly InputAction m_UI_RightClick;
private readonly InputAction m_UI_TrackedDevicePosition;
private readonly InputAction m_UI_TrackedDeviceOrientation;
+ private readonly InputAction m_UI_Drag;
public struct UIActions
{
private @AetheriaInput m_Wrapper;
@@ -981,6 +1032,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
public InputAction @RightClick => m_Wrapper.m_UI_RightClick;
public InputAction @TrackedDevicePosition => m_Wrapper.m_UI_TrackedDevicePosition;
public InputAction @TrackedDeviceOrientation => m_Wrapper.m_UI_TrackedDeviceOrientation;
+ public InputAction @Drag => m_Wrapper.m_UI_Drag;
public InputActionMap Get() { return m_Wrapper.m_UI; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
@@ -1020,6 +1072,9 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
@TrackedDeviceOrientation.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation;
@TrackedDeviceOrientation.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation;
@TrackedDeviceOrientation.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation;
+ @Drag.started -= m_Wrapper.m_UIActionsCallbackInterface.OnDrag;
+ @Drag.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnDrag;
+ @Drag.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnDrag;
}
m_Wrapper.m_UIActionsCallbackInterface = instance;
if (instance != null)
@@ -1054,10 +1109,46 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
@TrackedDeviceOrientation.started += instance.OnTrackedDeviceOrientation;
@TrackedDeviceOrientation.performed += instance.OnTrackedDeviceOrientation;
@TrackedDeviceOrientation.canceled += instance.OnTrackedDeviceOrientation;
+ @Drag.started += instance.OnDrag;
+ @Drag.performed += instance.OnDrag;
+ @Drag.canceled += instance.OnDrag;
}
}
}
public UIActions @UI => new UIActions(this);
+
+ // Global
+ private readonly InputActionMap m_Global;
+ private IGlobalActions m_GlobalActionsCallbackInterface;
+ private readonly InputAction m_Global_MapToggle;
+ public struct GlobalActions
+ {
+ private @AetheriaInput m_Wrapper;
+ public GlobalActions(@AetheriaInput wrapper) { m_Wrapper = wrapper; }
+ public InputAction @MapToggle => m_Wrapper.m_Global_MapToggle;
+ public InputActionMap Get() { return m_Wrapper.m_Global; }
+ public void Enable() { Get().Enable(); }
+ public void Disable() { Get().Disable(); }
+ public bool enabled => Get().enabled;
+ public static implicit operator InputActionMap(GlobalActions set) { return set.Get(); }
+ public void SetCallbacks(IGlobalActions instance)
+ {
+ if (m_Wrapper.m_GlobalActionsCallbackInterface != null)
+ {
+ @MapToggle.started -= m_Wrapper.m_GlobalActionsCallbackInterface.OnMapToggle;
+ @MapToggle.performed -= m_Wrapper.m_GlobalActionsCallbackInterface.OnMapToggle;
+ @MapToggle.canceled -= m_Wrapper.m_GlobalActionsCallbackInterface.OnMapToggle;
+ }
+ m_Wrapper.m_GlobalActionsCallbackInterface = instance;
+ if (instance != null)
+ {
+ @MapToggle.started += instance.OnMapToggle;
+ @MapToggle.performed += instance.OnMapToggle;
+ @MapToggle.canceled += instance.OnMapToggle;
+ }
+ }
+ }
+ public GlobalActions @Global => new GlobalActions(this);
private int m_KeyboardMouseSchemeIndex = -1;
public InputControlScheme KeyboardMouseScheme
{
@@ -1122,5 +1213,10 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
void OnRightClick(InputAction.CallbackContext context);
void OnTrackedDevicePosition(InputAction.CallbackContext context);
void OnTrackedDeviceOrientation(InputAction.CallbackContext context);
+ void OnDrag(InputAction.CallbackContext context);
+ }
+ public interface IGlobalActions
+ {
+ void OnMapToggle(InputAction.CallbackContext context);
}
}
diff --git a/Assets/Scripts/CopyTransform.cs b/Assets/Scripts/Sector Display/CopyTransform.cs
similarity index 100%
rename from Assets/Scripts/CopyTransform.cs
rename to Assets/Scripts/Sector Display/CopyTransform.cs
diff --git a/Assets/Scripts/CopyTransform.cs.meta b/Assets/Scripts/Sector Display/CopyTransform.cs.meta
similarity index 100%
rename from Assets/Scripts/CopyTransform.cs.meta
rename to Assets/Scripts/Sector Display/CopyTransform.cs.meta
diff --git a/Assets/Scripts/Sector Display/MapView.cs b/Assets/Scripts/Sector Display/MapView.cs
new file mode 100644
index 000000000..eb0899f7b
--- /dev/null
+++ b/Assets/Scripts/Sector Display/MapView.cs
@@ -0,0 +1,104 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.InputSystem;
+
+public class MapView : MonoBehaviour
+{
+ public Camera Main;
+ public Camera MinimapGravity;
+ public Camera Minimap;
+ public MeshRenderer GravityRenderer;
+ public float ZoomSpeed;
+
+ private Transform _minimapTransform;
+ private CopyTransform _minimapCopyTransform;
+ private RenderTexture _minimapTexture;
+ private Transform _minimapGravityTransform;
+ private CopyTransform _minimapGravityCopyTransform;
+ private RenderTexture _minimapGravityTexture;
+ private Transform _gravityRendererTransform;
+ private CopyTransform _gravityRendererCopyTransform;
+ private RenderTexture _fullscreenGravityTexture;
+ private AetheriaInput.UIActions _input;
+ private float _viewDistance = 1024;
+ private float _aspectRatio;
+ private Vector3 _previousGravityRendererScale;
+
+ void OnEnable()
+ {
+ _aspectRatio = (float) Screen.width / Screen.height;
+ Main.gameObject.SetActive(false);
+ _minimapTexture = Minimap.targetTexture;
+ _minimapTransform = Minimap.transform;
+ _minimapCopyTransform = Minimap.GetComponent();
+ _minimapCopyTransform.enabled = false;
+ _minimapGravityTexture = MinimapGravity.targetTexture;
+ _minimapGravityTransform = MinimapGravity.transform;
+ _minimapGravityCopyTransform = MinimapGravity.GetComponent();
+ _minimapGravityCopyTransform.enabled = false;
+ _gravityRendererTransform = GravityRenderer.transform;
+ _gravityRendererCopyTransform = GravityRenderer.GetComponent();
+ _gravityRendererCopyTransform.enabled = false;
+ _previousGravityRendererScale = _gravityRendererTransform.localScale;
+
+ _fullscreenGravityTexture = new RenderTexture(Screen.width / 2, Screen.height / 2, 1, RenderTextureFormat.RFloat);
+ GravityRenderer.material.mainTexture = _fullscreenGravityTexture;
+ MinimapGravity.targetTexture = _fullscreenGravityTexture;
+ Minimap.targetTexture = null;
+ SetZoom();
+ }
+
+ void SetZoom()
+ {
+ Minimap.orthographicSize = MinimapGravity.orthographicSize = _viewDistance;
+ _gravityRendererTransform.localScale = new Vector3(_viewDistance*_aspectRatio*2, _viewDistance*2, 1);
+ }
+
+ public void BindInput(AetheriaInput.UIActions input)
+ {
+ _input = input;
+ _input.ScrollWheel.performed += OnScroll;
+ }
+
+ private void OnScroll(InputAction.CallbackContext context)
+ {
+ _viewDistance *= (1 - context.ReadValue().y * ZoomSpeed);
+ SetZoom();
+ }
+
+ void Update()
+ {
+ if (_input.Click.ReadValue() > .5f)
+ {
+ var delta = _input.Drag.ReadValue();
+
+ var pos = _minimapTransform.position;
+ pos.x -= delta.x * _viewDistance / Screen.height;
+ pos.z -= delta.y * _viewDistance / Screen.height;
+
+ var gravPos = _gravityRendererTransform.position;
+ gravPos.x = pos.x;
+ gravPos.z = pos.z;
+
+ _gravityRendererTransform.position = gravPos;
+ _minimapTransform.position = _minimapGravityTransform.position = pos;
+ }
+ }
+
+ private void OnDisable()
+ {
+ _input.ScrollWheel.performed -= OnScroll;
+
+ Main.gameObject.SetActive(true);
+ _minimapGravityCopyTransform.enabled = true;
+ _minimapCopyTransform.enabled = true;
+ _gravityRendererCopyTransform.enabled = true;
+
+ Minimap.targetTexture = _minimapTexture;
+ MinimapGravity.targetTexture = _minimapGravityTexture;
+ GravityRenderer.material.mainTexture = _minimapGravityTexture;
+ _fullscreenGravityTexture.Release();
+ }
+}
diff --git a/Assets/Scripts/Sector Display/MapView.cs.meta b/Assets/Scripts/Sector Display/MapView.cs.meta
new file mode 100644
index 000000000..b97643a75
--- /dev/null
+++ b/Assets/Scripts/Sector Display/MapView.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 76d9e45f376fcfe409f3a4f26ccb4f3e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Shaders/Isolines.shader b/Assets/Shaders/Isolines.shader
index 989f9fd48..84dec9fae 100644
--- a/Assets/Shaders/Isolines.shader
+++ b/Assets/Shaders/Isolines.shader
@@ -97,7 +97,7 @@
float isoline = abs(h + _StartDepth + (ih*spacing));
//float2 isograd = float2(ddx(isoline), ddy(isoline));
//float isomag = length(isograd);
- col += (1-smoothstep(_LineWidth, _LineWidth * _LineFade, isoline / planmag)) * lerp(_Color,_DangerColor,dangerblend) * blend; // Isoline
+ col += (1-smoothstep(_LineWidth, _LineWidth * _LineFade, isoline / planmag * _ScreenParams.y)) * lerp(_Color,_DangerColor,dangerblend) * blend; // Isoline
}
float angle = atan2(plan.y,plan.x) / 3.1415926536 + 1;
@@ -115,7 +115,7 @@
float isoline = abs(angle - ia / 6.0);// ;
//float2 isograd = float2(ddx_fine(isoline), ddy_fine(isoline));
//float isomag = min(length(isograd),0.025); // isomag is huge over atan2 boundary so clamp it to avoid false positives
- col += (1-smoothstep(_AngleWidth, _AngleWidth * _AngleFade, isoline / (angmag))) * lerp(_AngleColor,_DangerColor,dangerblend) * blend; // Isoline
+ col += (1-smoothstep(_AngleWidth, _AngleWidth * _AngleFade, isoline / angmag * _ScreenParams.y)) * lerp(_AngleColor,_DangerColor,dangerblend) * blend; // Isoline
}
//return float4(1,0,0,1);