diff --git a/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_acceptance.asset b/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_acceptance.asset index 0a88c34e2..9c0e31f5b 100644 --- a/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_acceptance.asset +++ b/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_acceptance.asset @@ -23,11 +23,14 @@ MonoBehaviour: y: 501000 zeroGroundLevelY: 0 EnableMinimap: 1 - minimapServiceUrl: https://t1.data.amsterdam.nl/topo_rd/{zoom}/{x}/{y}.png - MinimapTileNumberingType: 0 - minimapBottomLeftRD_X: -285401.9 - minimapBottomLeftRD_Y: 22598.08 - MinimapZoom0RDSize: 880803.8 + minimapServiceUrl: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=standaard&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + minimapTileSize: 256 + minimapOriginAlignment: 0 + minimapOrigin: + x: -285401.92 + y: 903401.92 + minimapPixelInMeters: 0.00028 + minimapScaleDenominator: 12288000 webserverRootPath: https://acc.3d.amsterdam.nl/web/data/develop/RD/ buildingsMetaDataPath: https://acc.3d.amsterdam.nl/web/data/develop/RD/Buildings_AHN4/ sharingBaseURL: https://acc.3d.amsterdam.nl/ diff --git a/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_production.asset b/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_production.asset index 263eb589e..193ea934a 100644 --- a/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_production.asset +++ b/3DAmsterdam/Assets/3DAmsterdam/Config3DAmsterdam_production.asset @@ -23,11 +23,14 @@ MonoBehaviour: y: 501000 zeroGroundLevelY: 0 EnableMinimap: 1 - minimapServiceUrl: https://t1.data.amsterdam.nl/topo_rd/{zoom}/{x}/{y}.png - MinimapTileNumberingType: 0 - minimapBottomLeftRD_X: -285401.9 - minimapBottomLeftRD_Y: 22598.08 - MinimapZoom0RDSize: 880803.8 + minimapServiceUrl: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=standaard&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + minimapTileSize: 256 + minimapOriginAlignment: 0 + minimapOrigin: + x: -285401.92 + y: 903401.92 + minimapPixelInMeters: 0.00028 + minimapScaleDenominator: 12288000 webserverRootPath: https://3d.amsterdam.nl/web/data/RD/ buildingsMetaDataPath: https://3d.amsterdam.nl/web/data/RD/Buildings_AHN4/ sharingBaseURL: https://3d.amsterdam.nl/ diff --git a/3DAmsterdam/Assets/3DAmsterdam/Scenes/3DAmsterdam.unity b/3DAmsterdam/Assets/3DAmsterdam/Scenes/3DAmsterdam.unity index 7873c94a6..94504e4e6 100644 --- a/3DAmsterdam/Assets/3DAmsterdam/Scenes/3DAmsterdam.unity +++ b/3DAmsterdam/Assets/3DAmsterdam/Scenes/3DAmsterdam.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fb3d4d2e9547b54e179e690a97639e8c26d86544ccb66da25fa3e673f6554007 -size 104933 +oid sha256:d160350a0c718090c8e8a5ac710e651d74ae6a9cd917ee4b0d060debd315ff57 +size 106834 diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources.meta b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects.meta similarity index 77% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources.meta rename to 3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects.meta index af2cc8f41..35ae9d8ef 100644 --- a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources.meta +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: ab65b25255ce5d0419858bef1ec80861 +guid: 16fa22ac1b116494a83e3bcc18e5ca85 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_BlackAndWhite.asset b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_BlackAndWhite.asset new file mode 100644 index 000000000..db6d57231 --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_BlackAndWhite.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: AmsterdamTopoRD_BlackAndWhite + m_EditorClassIdentifier: + ServiceUrl: https://t1.data.amsterdam.nl/topo_rd_zw/{zoom}/{x}/{y}.png + TileMatrixSet: {fileID: 11400000, guid: 7441cb4567639594abf896f74e9d1ea8, type: 2} diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_BlackAndWhite.asset.meta b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_BlackAndWhite.asset.meta new file mode 100644 index 000000000..e38aa10db --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_BlackAndWhite.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3ca5e815ebef3d04380d71ed91969243 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Default.asset b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Default.asset new file mode 100644 index 000000000..8ffde4653 --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Default.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: AmsterdamTopoRD_Default + m_EditorClassIdentifier: + ServiceUrl: https://t1.data.amsterdam.nl/topo_rd/{zoom}/{x}/{y}.png + TileMatrixSet: {fileID: 11400000, guid: 7441cb4567639594abf896f74e9d1ea8, type: 2} diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Default.asset.meta b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Default.asset.meta new file mode 100644 index 000000000..b1494ae32 --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Default.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 44cadc472cacd24438c24ded48e693fe +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Light.asset b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Light.asset new file mode 100644 index 000000000..59735420f --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Light.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: AmsterdamTopoRD_Light + m_EditorClassIdentifier: + ServiceUrl: https://t1.data.amsterdam.nl/topo_rd_light/{zoom}/{x}/{y}.png + TileMatrixSet: {fileID: 11400000, guid: 7441cb4567639594abf896f74e9d1ea8, type: 2} diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Light.asset.meta b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Light.asset.meta new file mode 100644 index 000000000..d5635cc6e --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Light.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9668a8f27a9b4aa4cb207ae582ced1d2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Photos.asset b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Photos.asset new file mode 100644 index 000000000..eb0570b13 --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Photos.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: AmsterdamTopoRD_Photos + m_EditorClassIdentifier: + ServiceUrl: https://t1.data.amsterdam.nl/lufo2017_RD/{zoom}/{x}/{y}.jpeg + TileMatrixSet: {fileID: 11400000, guid: 7441cb4567639594abf896f74e9d1ea8, type: 2} diff --git a/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Photos.asset.meta b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Photos.asset.meta new file mode 100644 index 000000000..6e66c3558 --- /dev/null +++ b/3DAmsterdam/Assets/3DAmsterdam/ScriptableObjects/AmsterdamTopoRD_Photos.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 293a7d78ceee7dc438d5d63a769464b0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Editor/MeshCombineWizard.cs b/3DAmsterdam/Assets/Netherlands3D/Editor/MeshCombineWizard.cs new file mode 100644 index 000000000..a6e4c8e17 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Editor/MeshCombineWizard.cs @@ -0,0 +1,134 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; +using UnityEngine.Rendering; + +public class MeshCombineWizard : ScriptableWizard +{ + public GameObject combineParent; + public bool is32bit = true; + + [MenuItem("E.S. Tools/Mesh Combine Wizard")] + static void CreateWizard() + { + var wizard = DisplayWizard("Mesh Combine Wizard"); + + // If there is selection, and the selection of one Scene object, auto-assign it + var selectionObjects = Selection.objects; + if (selectionObjects != null && selectionObjects.Length == 1) + { + var firstSelection = selectionObjects[0] as GameObject; + if (firstSelection != null) + { + wizard.combineParent = firstSelection; + } + } + } + + void OnWizardCreate() + { + // Verify there is existing object root, ptherwise bail. + if (combineParent == null) + { + Debug.LogError("Mesh Combine Wizard: Parent of objects to combne not assigned. Operation cancelled."); + return; + } + + // Remember the original position of the object. + // For the operation to work, the position must be temporarily set to (0,0,0). + Vector3 originalPosition = combineParent.transform.position; + combineParent.transform.position = Vector3.zero; + + // Locals + Dictionary> materialToMeshFilterList = new Dictionary>(); + List combinedObjects = new List(); + + MeshFilter[] meshFilters = combineParent.GetComponentsInChildren(); + + // Go through all mesh filters and establish the mapping between the materials and all mesh filters using it. + foreach (var meshFilter in meshFilters) + { + var meshRenderer = meshFilter.GetComponent(); + if (meshRenderer == null) + { + Debug.LogWarning("The Mesh Filter on object " + meshFilter.name + " has no Mesh Renderer component attached. Skipping."); + continue; + } + + var materials = meshRenderer.sharedMaterials; + if (materials == null) + { + Debug.LogWarning("The Mesh Renderer on object " + meshFilter.name + " has no material assigned. Skipping."); + continue; + } + + // If there are multiple materials on a single mesh, cancel. + if (materials.Length > 1) + { + // Rollback: return the object to original position + combineParent.transform.position = originalPosition; + Debug.LogError("Objects with multiple materials on the same mesh are not supported. Create multiple meshes from this object's sub-meshes in an external 3D tool and assign separate materials to each. Operation cancelled."); + return; + } + var material = materials[0]; + + // Add material to mesh filter mapping to dictionary + if (materialToMeshFilterList.ContainsKey(material)) materialToMeshFilterList[material].Add(meshFilter); + else materialToMeshFilterList.Add(material, new List() { meshFilter }); + } + + // For each material, create a new merged object, in the scene and in the assets folder. + foreach (var entry in materialToMeshFilterList) + { + List meshesWithSameMaterial = entry.Value; + // Create a convenient material name + string materialName = entry.Key.ToString().Split(' ')[0]; + + CombineInstance[] combine = new CombineInstance[meshesWithSameMaterial.Count]; + for (int i = 0; i < meshesWithSameMaterial.Count; i++) + { + combine[i].mesh = meshesWithSameMaterial[i].sharedMesh; + combine[i].transform = meshesWithSameMaterial[i].transform.localToWorldMatrix; + } + + // Create a new mesh using the combined properties + var format = is32bit ? IndexFormat.UInt32 : IndexFormat.UInt16; + Mesh combinedMesh = new Mesh { indexFormat = format }; + combinedMesh.CombineMeshes(combine); + + // Create asset + materialName += "_" + combinedMesh.GetInstanceID(); + AssetDatabase.CreateAsset(combinedMesh, "Assets/CombinedMeshes_" + materialName + ".asset"); + + // Create game object + string goName = (materialToMeshFilterList.Count > 1) ? "CombinedMeshes_" + materialName : "CombinedMeshes_" + combineParent.name; + GameObject combinedObject = new GameObject(goName); + var filter = combinedObject.AddComponent(); + filter.sharedMesh = combinedMesh; + var renderer = combinedObject.AddComponent(); + renderer.sharedMaterial = entry.Key; + combinedObjects.Add(combinedObject); + } + + // If there were more than one material, and thus multiple GOs created, parent them and work with result + GameObject resultGO = null; + if (combinedObjects.Count > 1) + { + resultGO = new GameObject("CombinedMeshes_" + combineParent.name); + foreach (var combinedObject in combinedObjects) combinedObject.transform.parent = resultGO.transform; + } + else + { + resultGO = combinedObjects[0]; + } + + // Create prefab + Object prefab = PrefabUtility.CreateEmptyPrefab("Assets/" + resultGO.name + ".prefab"); + PrefabUtility.ReplacePrefab(resultGO, prefab, ReplacePrefabOptions.ConnectToPrefab); + + // Disable the original and return both to original positions + combineParent.SetActive(false); + combineParent.transform.position = originalPosition; + resultGO.transform.position = originalPosition; + } +} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTiles.cs.meta b/3DAmsterdam/Assets/Netherlands3D/Editor/MeshCombineWizard.cs.meta similarity index 83% rename from 3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTiles.cs.meta rename to 3DAmsterdam/Assets/Netherlands3D/Editor/MeshCombineWizard.cs.meta index 11c8d0284..f06b11c90 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTiles.cs.meta +++ b/3DAmsterdam/Assets/Netherlands3D/Editor/MeshCombineWizard.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 7341749d3f89de849884f7077c301149 +guid: 011949ddd6e2844469cf9aa8f5360ae0 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/Camera/GodviewCamera.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/Camera/GodviewCamera.prefab index b332787a5..6895afa60 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/Camera/GodviewCamera.prefab +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/Camera/GodviewCamera.prefab @@ -113,6 +113,7 @@ MonoBehaviour: rotatingAroundPoint: 0 cameraOffsetForTargetLocation: {x: 100, y: 200, z: -100} LockFunctions: 0 + resetTransitionSpeed: 0.1 --- !u!114 &8089436527420917118 MonoBehaviour: m_ObjectHideFlags: 0 @@ -199,7 +200,6 @@ MonoBehaviour: screenshotRenderTexture: {fileID: 0} fileType: fileName: - snapshotSettings: {fileID: 0} snapshotUI: {fileID: 0} snapshotNavigation: {fileID: 0} snapshotLogo: {fileID: 0} @@ -209,3 +209,4 @@ MonoBehaviour: snapshotFileType: {fileID: 0} snapshotName: {fileID: 0} responsiveCanvas: {fileID: 0} + panelGraphics: [] diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Canvas.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Canvas.prefab index 26f295683..7e5cdfe68 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Canvas.prefab +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Canvas.prefab @@ -258,8 +258,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: canvasScaler: {fileID: 8480172012122228447} - mainMenu: {fileID: 371378253} - interfaceLayers: {fileID: 6717824931965327710} --- !u!114 &5870497789426664748 MonoBehaviour: m_ObjectHideFlags: 0 @@ -299,7 +297,7 @@ MonoBehaviour: - {fileID: 11400000, guid: d8a703f0e05b09145a20afdca8874501, type: 2} - {fileID: 11400000, guid: fcc5cd8e296527d4797619c408314e73, type: 2} interfaceLayers: {fileID: 5702142847852360716} - minimap: {fileID: 120734676061445784} + minimap: {fileID: 8336381040521333674} fpsCounter: {fileID: 6843730040500558109} stats: {fileID: 1802846755166398200, guid: 68c29ab80d86caf4398981161cc8f686, type: 3} --- !u!1 &5859755930558357313 @@ -3926,9 +3924,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: cc99f9dec8005e442b69b78d710325b4, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!114 &8155766771915449776 stripped +--- !u!114 &5764404879379986367 stripped MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 7984317947889234468, guid: 7cfbd80cff289264fa095e83062304ae, + m_CorrespondingSourceObject: {fileID: 5772950369629511723, guid: 7cfbd80cff289264fa095e83062304ae, type: 3} m_PrefabInstance: {fileID: 2297649947035752340} m_PrefabAsset: {fileID: 0} @@ -3974,9 +3972,9 @@ GameObject: type: 3} m_PrefabInstance: {fileID: 2297649947035752340} m_PrefabAsset: {fileID: 0} ---- !u!114 &5764404879379986367 stripped +--- !u!114 &8155766771915449776 stripped MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 5772950369629511723, guid: 7cfbd80cff289264fa095e83062304ae, + m_CorrespondingSourceObject: {fileID: 7984317947889234468, guid: 7cfbd80cff289264fa095e83062304ae, type: 3} m_PrefabInstance: {fileID: 2297649947035752340} m_PrefabAsset: {fileID: 0} @@ -3986,9 +3984,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: cc99f9dec8005e442b69b78d710325b4, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!114 &120734676061445784 stripped +--- !u!114 &8336381040521333674 stripped MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2183696030610229516, guid: 7cfbd80cff289264fa095e83062304ae, + m_CorrespondingSourceObject: {fileID: 7805338588107873342, guid: 7cfbd80cff289264fa095e83062304ae, type: 3} m_PrefabInstance: {fileID: 2297649947035752340} m_PrefabAsset: {fileID: 0} @@ -3998,19 +3996,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 9356d64e9f0ff1d4f8f6da6e1966ccb9, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1 &6717824931965327710 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 4816712341734067914, guid: 7cfbd80cff289264fa095e83062304ae, - type: 3} - m_PrefabInstance: {fileID: 2297649947035752340} - m_PrefabAsset: {fileID: 0} --- !u!114 &5702142847852360716 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 5818915432287232920, guid: 7cfbd80cff289264fa095e83062304ae, type: 3} m_PrefabInstance: {fileID: 2297649947035752340} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6717824931965327710} + m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4f7bd053eada1064e9e58e50aa8dac2f, type: 3} diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Compass.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Compass.prefab index 3de9d42d4..1e852f38e 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Compass.prefab +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Compass.prefab @@ -33,6 +33,7 @@ RectTransform: m_LocalScale: {x: 0.39455, y: 0.39455, z: 0.39455} m_Children: - {fileID: 8649099854998943361} + - {fileID: 4809667973801680625} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -92,6 +93,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: counterRotate: 0 + doubleClickTime: 0.5 --- !u!114 &6667394427083844630 MonoBehaviour: m_ObjectHideFlags: 0 @@ -160,7 +162,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: dc7240f5e2c5685479b6a96edeb98c55, type: 3} m_Name: m_EditorClassIdentifier: - tooltipText: Draai camera naar noorden + tooltipText: Klik Kijk naar het noorden --- !u!1 &3724894983124572339 GameObject: m_ObjectHideFlags: 0 @@ -172,7 +174,6 @@ GameObject: - component: {fileID: 8649099854998943361} - component: {fileID: 9003559041128254931} - component: {fileID: 9099198201469027834} - - component: {fileID: 4175571818742560405} m_Layer: 5 m_Name: North m_TagString: Untagged @@ -196,8 +197,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90.00001} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 46.2} - m_SizeDelta: {x: 25, y: 25} + m_AnchoredPosition: {x: 0, y: 20} + m_SizeDelta: {x: 40, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &9003559041128254931 CanvasRenderer: @@ -237,16 +238,78 @@ MonoBehaviour: m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 ---- !u!114 &4175571818742560405 +--- !u!1 &7633573266288027757 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4809667973801680625} + - component: {fileID: 886971251268071683} + - component: {fileID: 7866230802427580030} + m_Layer: 5 + m_Name: South + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4809667973801680625 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7633573266288027757} + m_LocalRotation: {x: -0, y: -0, z: 0.7071099, w: -0.7071037} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6516341115367222266} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 269.999} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -8, y: -20} + m_SizeDelta: {x: 40, y: 16} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &886971251268071683 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7633573266288027757} + m_CullTransparentMesh: 0 +--- !u!114 &7866230802427580030 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3724894983124572339} + m_GameObject: {fileID: 7633573266288027757} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d4b679cd9b33acb42875fd7e11dc530e, type: 3} + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: - colorStyle: 0 + m_Material: {fileID: 0} + m_Color: {r: 0.8584906, g: 0.8584906, b: 0.8584906, 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_Sprite: {fileID: 21300000, guid: 7b1b6b18776685241aca28b4c7e01f95, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/Map.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/Map.prefab deleted file mode 100644 index 6b7e20ae4..000000000 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/Map.prefab +++ /dev/null @@ -1,1004 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &564829643174307332 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2252753218734757862} - - component: {fileID: 6213940126322550762} - m_Layer: 5 - m_Name: MapTiles - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2252753218734757862 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 564829643174307332} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 7864502592279721921} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!114 &6213940126322550762 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 564829643174307332} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7341749d3f89de849884f7077c301149, type: 3} - m_Name: - m_EditorClassIdentifier: - startCellX: 28 - startCellY: 32 - pointer: {fileID: 7273606764847681180} - zoom: 6 - gridCells: 3 - maxTilesToLoad: 10 ---- !u!1 &1339107415031893616 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2622334218943523504} - - component: {fileID: 3129573317982016394} - - component: {fileID: 8899209355466509672} - m_Layer: 5 - m_Name: Arrow - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2622334218943523504 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1339107415031893616} - m_LocalRotation: {x: -0, y: -0, z: 0.70710576, w: 0.70710784} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 5536752858155191736} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90.00001} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 13.2} - m_SizeDelta: {x: 25, y: 10} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3129573317982016394 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1339107415031893616} - m_CullTransparentMesh: 0 ---- !u!114 &8899209355466509672 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1339107415031893616} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 0.21960784} - m_RaycastTarget: 1 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 7b1b6b18776685241aca28b4c7e01f95, type: 3} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1457532842470798073 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6091932768327564106} - - component: {fileID: 5680544648926925403} - - component: {fileID: 7612453317410752544} - - component: {fileID: 5294064495012942629} - m_Layer: 5 - m_Name: ZoomOut - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &6091932768327564106 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1457532842470798073} - 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: 1881760566811736862} - m_Father: {fileID: 4246756423207461256} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 0} - m_AnchorMax: {x: 1, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 30, y: 30} - m_Pivot: {x: 1, y: 0} ---- !u!222 &5680544648926925403 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1457532842470798073} - m_CullTransparentMesh: 0 ---- !u!114 &7612453317410752544 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1457532842470798073} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &5294064495012942629 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1457532842470798073} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 7612453317410752544} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 6213940126322550762} - m_MethodName: ZoomOut - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &2313868333340807030 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5536752858155191736} - - component: {fileID: 8302239407370317231} - - component: {fileID: 278370209088024628} - - component: {fileID: 7517133470704457228} - m_Layer: 5 - m_Name: Direction - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &5536752858155191736 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2313868333340807030} - 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: 2622334218943523504} - m_Father: {fileID: 6692238743016607799} - m_RootOrder: 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: 32, y: 32} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8302239407370317231 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2313868333340807030} - m_CullTransparentMesh: 0 ---- !u!114 &278370209088024628 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2313868333340807030} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 0 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 4950f25cb1cf8c04c98c1dad0523c778, type: 3} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &7517133470704457228 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2313868333340807030} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 095953c531832284ea01f42ca70be29e, type: 3} - m_Name: - m_EditorClassIdentifier: - counterRotate: 1 ---- !u!1 &2649577615248260733 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1881760566811736862} - - component: {fileID: 8388165068380960329} - - component: {fileID: 150989389771233562} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1881760566811736862 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2649577615248260733} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 6091932768327564106} - m_RootOrder: 0 - 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: 1.2} - m_SizeDelta: {x: 0, y: -0.39999998} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8388165068380960329 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2649577615248260733} - m_CullTransparentMesh: 0 ---- !u!114 &150989389771233562 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2649577615248260733} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 0 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 23 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: '-' ---- !u!1 &3563641506018413553 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 9011198916927758262} - - component: {fileID: 9148130039737658529} - - component: {fileID: 7893524078662319355} - - component: {fileID: 3889329025733939102} - m_Layer: 5 - m_Name: ZoomIn - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &9011198916927758262 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3563641506018413553} - 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: 1636394767566932264} - m_Father: {fileID: 4246756423207461256} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 0} - m_AnchorMax: {x: 1, y: 0} - m_AnchoredPosition: {x: 0, y: 30} - m_SizeDelta: {x: 30, y: 30} - m_Pivot: {x: 1, y: 0} ---- !u!222 &9148130039737658529 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3563641506018413553} - m_CullTransparentMesh: 0 ---- !u!114 &7893524078662319355 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3563641506018413553} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &3889329025733939102 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3563641506018413553} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 7893524078662319355} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 6213940126322550762} - m_MethodName: ZoomIn - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &3602078410305485429 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7864502592279721921} - m_Layer: 5 - m_Name: DraggableArea - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7864502592279721921 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3602078410305485429} - 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: 2252753218734757862} - - {fileID: 7273606764847681180} - m_Father: {fileID: 4373258711491771127} - m_RootOrder: 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: -425.96155, y: -396.03546} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!1 &4373258711491771124 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4373258711491771127} - - component: {fileID: 4373258711491771080} - - component: {fileID: 4373258711491771081} - - component: {fileID: 1902683239252922939} - - component: {fileID: 1951227824509421898} - - component: {fileID: 8150110172445628717} - m_Layer: 5 - m_Name: Map - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &4373258711491771127 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4373258711491771124} - 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: 7864502592279721921} - - {fileID: 4246756423207461256} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 0} - m_AnchorMax: {x: 1, y: 0} - m_AnchoredPosition: {x: -30, y: 30} - m_SizeDelta: {x: 100, y: 104} - m_Pivot: {x: 1, y: 0} ---- !u!222 &4373258711491771080 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4373258711491771124} - m_CullTransparentMesh: 0 ---- !u!114 &4373258711491771081 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4373258711491771124} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.8773585, g: 0.8773585, b: 0.8773585, a: 1} - m_RaycastTarget: 1 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1902683239252922939 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4373258711491771124} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: {x: 0, y: 0, z: 0, w: 0} - m_Softness: {x: 0, y: 0} ---- !u!114 &1951227824509421898 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4373258711491771124} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9356d64e9f0ff1d4f8f6da6e1966ccb9, type: 3} - m_Name: - m_EditorClassIdentifier: - mapTiles: {fileID: 6213940126322550762} - hoverResizeSpeed: 10 - dragTarget: {fileID: 7864502592279721921} - navigation: {fileID: 4246756423207461256} - hoverSize: {x: 222, y: 222} ---- !u!114 &8150110172445628717 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4373258711491771124} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3} - m_Name: - m_EditorClassIdentifier: - m_EffectColor: {r: 0.2830189, g: 0.2830189, b: 0.2830189, a: 1} - m_EffectDistance: {x: 1, y: -1} - m_UseGraphicAlpha: 0 ---- !u!1 &4437195404538723076 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7273606764847681180} - m_Layer: 5 - m_Name: Pointer - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7273606764847681180 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4437195404538723076} - 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: 6692238743016607799} - - {fileID: 5572874323024217345} - m_Father: {fileID: 7864502592279721921} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 122} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &5130670987659296045 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1636394767566932264} - - component: {fileID: 6357011703360079497} - - component: {fileID: 2336135596979071006} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1636394767566932264 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5130670987659296045} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 9011198916927758262} - m_RootOrder: 0 - 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: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &6357011703360079497 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5130670987659296045} - m_CullTransparentMesh: 0 ---- !u!114 &2336135596979071006 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5130670987659296045} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 0 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 23 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: + ---- !u!1 &6058826482073216784 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6692238743016607799} - - component: {fileID: 8882048442180135712} - m_Layer: 5 - m_Name: TiltDirection - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &6692238743016607799 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6058826482073216784} - m_LocalRotation: {x: 0.35482514, y: -0, z: -0, w: 0.9349327} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 5536752858155191736} - m_Father: {fileID: 7273606764847681180} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 41.565002, 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!222 &8882048442180135712 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6058826482073216784} - m_CullTransparentMesh: 0 ---- !u!1 &7735536493125058976 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4246756423207461256} - m_Layer: 5 - m_Name: Navigation - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &4246756423207461256 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7735536493125058976} - 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: 9011198916927758262} - - {fileID: 6091932768327564106} - m_Father: {fileID: 4373258711491771127} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 0} - m_AnchorMax: {x: 1, y: 0} - m_AnchoredPosition: {x: -5, y: 5} - m_SizeDelta: {x: 100, y: 104} - m_Pivot: {x: 1, y: 0} ---- !u!1 &8364779855186653637 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5572874323024217345} - - component: {fileID: 8708362777895184201} - - component: {fileID: 4944231785230605315} - - component: {fileID: 8971238809068469102} - m_Layer: 5 - m_Name: Arrow - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &5572874323024217345 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8364779855186653637} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 7273606764847681180} - m_RootOrder: 1 - 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: 21, y: 32} - m_Pivot: {x: 0.5, y: 0} ---- !u!222 &8708362777895184201 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8364779855186653637} - m_CullTransparentMesh: 0 ---- !u!114 &4944231785230605315 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8364779855186653637} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0.27450982, b: 0.6, a: 1} - m_RaycastTarget: 0 - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 58d609b78c854cd41a93f9ba61a98444, type: 3} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &8971238809068469102 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8364779855186653637} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d4b679cd9b33acb42875fd7e11dc530e, type: 3} - m_Name: - m_EditorClassIdentifier: - colorStyle: 1 diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/MapViewer.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/MapViewer.prefab new file mode 100644 index 000000000..40050b871 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/MapViewer.prefab @@ -0,0 +1,704 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3933052634613567015 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4132841050606542959} + - component: {fileID: 4020454543833261621} + - component: {fileID: 1175068756924335735} + - component: {fileID: 3416080621231773609} + m_Layer: 5 + m_Name: ZoomOut + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4132841050606542959 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3933052634613567015} + 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: 4856149964650613301} + m_Father: {fileID: 1404701913117016804} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 30, y: 30} + m_Pivot: {x: 1, y: 0} +--- !u!222 &4020454543833261621 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3933052634613567015} + m_CullTransparentMesh: 0 +--- !u!114 &1175068756924335735 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3933052634613567015} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &3416080621231773609 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3933052634613567015} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1175068756924335735} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 6379330094824325985} + m_TargetAssemblyTypeName: Netherlands3D.Interface.Minimap.MapViewer, Assembly-CSharp + m_MethodName: ZoomOut + m_Mode: 6 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!1 &4960712610477118128 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4705166984827380387} + - component: {fileID: 3391276655060556640} + - component: {fileID: 81579454376221743} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4705166984827380387 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960712610477118128} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4515094566554271171} + m_RootOrder: 0 + 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: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3391276655060556640 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960712610477118128} + m_CullTransparentMesh: 0 +--- !u!114 &81579454376221743 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960712610477118128} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: + +--- !u!1 &5603594167461659991 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5603594167461659988} + - component: {fileID: 2032325224665107851} + - component: {fileID: 4132106878187041419} + - component: {fileID: 490243889082863675} + - component: {fileID: 3654069850783846351} + - component: {fileID: 6379330094824325985} + m_Layer: 5 + m_Name: MapViewer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5603594167461659988 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5603594167461659991} + 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: 5559758686376464639} + - {fileID: 1404701913117016804} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: -937} + m_SizeDelta: {x: 222, y: 128} + m_Pivot: {x: 0, y: 1} +--- !u!222 &2032325224665107851 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5603594167461659991} + m_CullTransparentMesh: 1 +--- !u!114 &4132106878187041419 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5603594167461659991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &490243889082863675 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5603594167461659991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: {x: 0, y: 0, z: 0, w: 0} + m_Softness: {x: 0, y: 0} +--- !u!114 &3654069850783846351 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5603594167461659991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0.2830189, g: 0.2830189, b: 0.2830189, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 0 +--- !u!114 &6379330094824325985 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5603594167461659991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9356d64e9f0ff1d4f8f6da6e1966ccb9, type: 3} + m_Name: + m_EditorClassIdentifier: + mapTiles: {fileID: 5559758686376464639} + hoverResizeSpeed: 10 + navigation: {fileID: 1404701913117016804} + hoverSize: {x: 222, y: 222} + maxZoomScale: 6 +--- !u!1 &6370989592938413191 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1404701913117016804} + m_Layer: 5 + m_Name: Navigation + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1404701913117016804 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6370989592938413191} + 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: 4515094566554271171} + - {fileID: 4132841050606542959} + m_Father: {fileID: 5603594167461659988} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: -7, y: 5} + m_SizeDelta: {x: 100, y: 104} + m_Pivot: {x: 1, y: 0} +--- !u!1 &6914958288361407702 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4515094566554271171} + - component: {fileID: 4064968347570498821} + - component: {fileID: 8294353014018658141} + - component: {fileID: 4637109601325460816} + m_Layer: 5 + m_Name: ZoomIn + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4515094566554271171 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6914958288361407702} + 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: 4705166984827380387} + m_Father: {fileID: 1404701913117016804} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 30} + m_SizeDelta: {x: 30, y: 30} + m_Pivot: {x: 1, y: 0} +--- !u!222 &4064968347570498821 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6914958288361407702} + m_CullTransparentMesh: 0 +--- !u!114 &8294353014018658141 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6914958288361407702} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &4637109601325460816 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6914958288361407702} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 8294353014018658141} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 6379330094824325985} + m_TargetAssemblyTypeName: Netherlands3D.Interface.Minimap.MapViewer, Assembly-CSharp + m_MethodName: ZoomIn + m_Mode: 6 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!1 &8257943433648457040 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4856149964650613301} + - component: {fileID: 1637854020904399817} + - component: {fileID: 5025854984945790557} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4856149964650613301 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8257943433648457040} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4132841050606542959} + m_RootOrder: 0 + 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: 1.2} + m_SizeDelta: {x: 0, y: -0.39999998} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1637854020904399817 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8257943433648457040} + m_CullTransparentMesh: 0 +--- !u!114 &5025854984945790557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8257943433648457040} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: '-' +--- !u!1001 &6601036425719411679 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 5603594167461659988} + m_Modifications: + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_Pivot.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7951273732087248873, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + propertyPath: m_Name + value: WMTSMap + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 2254cc6f7ec0eb24bbb5eb256968d676, type: 3} +--- !u!224 &5559758686376464639 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 1635840988594823968, guid: 2254cc6f7ec0eb24bbb5eb256968d676, + type: 3} + m_PrefabInstance: {fileID: 6601036425719411679} + m_PrefabAsset: {fileID: 0} diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/Map.prefab.meta b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/MapViewer.prefab.meta similarity index 74% rename from 3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/Map.prefab.meta rename to 3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/MapViewer.prefab.meta index 761f267c3..bacb872a6 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/Map.prefab.meta +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/MapViewer.prefab.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 2da556a9f16781c4eaf37b958c288348 +guid: 100b47079e7e1e84e864865ed2bb56e4 PrefabImporter: externalObjects: {} userData: diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/WMTSMap.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/WMTSMap.prefab new file mode 100644 index 000000000..89fd095fe --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/WMTSMap.prefab @@ -0,0 +1,392 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4325570263065865581 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7246766942424185856} + - component: {fileID: 681071060053295196} + - component: {fileID: 3814062362514465532} + - component: {fileID: 5538871264773516009} + m_Layer: 5 + m_Name: Arrow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7246766942424185856 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4325570263065865581} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2583290967821285368} + m_RootOrder: 1 + 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: 21, y: 32} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &681071060053295196 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4325570263065865581} + m_CullTransparentMesh: 0 +--- !u!114 &3814062362514465532 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4325570263065865581} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0.27450982, b: 0.6, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 58d609b78c854cd41a93f9ba61a98444, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &5538871264773516009 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4325570263065865581} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d4b679cd9b33acb42875fd7e11dc530e, type: 3} + m_Name: + m_EditorClassIdentifier: + colorStyle: 1 +--- !u!1 &5270149900656479872 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8468966985900040651} + - component: {fileID: 3323601414920078194} + - component: {fileID: 8130511890453929099} + - component: {fileID: 8424339105250740459} + m_Layer: 5 + m_Name: Direction + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8468966985900040651 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5270149900656479872} + 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: 3041481306098689920} + m_Father: {fileID: 6753620635900795528} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 42.999, y: 0, z: 60.576004} + 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: 32, y: 32} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3323601414920078194 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5270149900656479872} + m_CullTransparentMesh: 0 +--- !u!114 &8130511890453929099 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5270149900656479872} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 4950f25cb1cf8c04c98c1dad0523c778, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &8424339105250740459 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5270149900656479872} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 095953c531832284ea01f42ca70be29e, type: 3} + m_Name: + m_EditorClassIdentifier: + counterRotate: 1 +--- !u!1 &6198490415630691819 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6753620635900795528} + - component: {fileID: 5730110250378995288} + m_Layer: 5 + m_Name: TiltDirection + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6753620635900795528 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6198490415630691819} + m_LocalRotation: {x: 0.35482514, y: -0, z: -0, w: 0.9349327} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8468966985900040651} + m_Father: {fileID: 2583290967821285368} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 41.565002, 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!222 &5730110250378995288 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6198490415630691819} + m_CullTransparentMesh: 0 +--- !u!1 &7951273732087248873 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1635840988594823968} + - component: {fileID: 5208011619700027835} + m_Layer: 5 + m_Name: WMTSMap + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1635840988594823968 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7951273732087248873} + 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: 2583290967821285368} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 1} +--- !u!114 &5208011619700027835 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7951273732087248873} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9f42c0a0748e7bf46a20acc6b3a11d65, type: 3} + m_Name: + m_EditorClassIdentifier: + pointer: {fileID: 2583290967821285368} + startIdentifier: 6 + centerPointerInView: 1 + minimapConfig: {fileID: 11400000, guid: f8278ff7c645df34e9348ff7aaf0d215, type: 2} + clampWithinParent: 1 +--- !u!1 &8409104612584133521 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3041481306098689920} + - component: {fileID: 5814034241698146326} + - component: {fileID: 3070316771012492221} + m_Layer: 5 + m_Name: Arrow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3041481306098689920 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8409104612584133521} + m_LocalRotation: {x: -0, y: -0, z: 0.70710576, w: 0.70710784} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 8468966985900040651} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90.00001} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 13.2} + m_SizeDelta: {x: 25, y: 10} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5814034241698146326 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8409104612584133521} + m_CullTransparentMesh: 0 +--- !u!114 &3070316771012492221 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8409104612584133521} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.21960784} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 7b1b6b18776685241aca28b4c7e01f95, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &8615303618599812643 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2583290967821285368} + m_Layer: 5 + m_Name: Pointer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &2583290967821285368 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8615303618599812643} + 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: 6753620635900795528} + - {fileID: 7246766942424185856} + m_Father: {fileID: 1635840988594823968} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: -221, y: 301} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources/BillingMode.json.meta b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/WMTSMap.prefab.meta similarity index 62% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources/BillingMode.json.meta rename to 3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/WMTSMap.prefab.meta index 18bb05d48..9a68f214c 100644 --- a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources/BillingMode.json.meta +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/Minimap/WMTSMap.prefab.meta @@ -1,6 +1,6 @@ fileFormatVersion: 2 -guid: fb05cde87b9f066438e125f38f69df27 -TextScriptImporter: +guid: 2254cc6f7ec0eb24bbb5eb256968d676 +PrefabImporter: externalObjects: {} userData: assetBundleName: diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/PerspectiveSwitch.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/PerspectiveSwitch.prefab new file mode 100644 index 000000000..177ce247b --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/PerspectiveSwitch.prefab @@ -0,0 +1,315 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2849965594986360437 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9028312062092443388} + - component: {fileID: 4998824490088456849} + - component: {fileID: 2576747040280915191} + - component: {fileID: 8908937701719865616} + - component: {fileID: 7912978629332645894} + - component: {fileID: 4760868678127430542} + m_Layer: 5 + m_Name: PerspectiveSwitch + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &9028312062092443388 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2849965594986360437} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.39455, y: 0.39455, z: 0.39455} + m_Children: + - {fileID: 2338700564466595606} + - {fileID: 7872950163130704894} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: -243, y: 40} + m_SizeDelta: {x: 128, y: 128} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4998824490088456849 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2849965594986360437} + m_CullTransparentMesh: 0 +--- !u!114 &2576747040280915191 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2849965594986360437} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 21300000, guid: 4950f25cb1cf8c04c98c1dad0523c778, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &8908937701719865616 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2849965594986360437} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 2576747040280915191} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 7912978629332645894} + m_TargetAssemblyTypeName: PerspectiveSwitch, Assembly-CSharp + m_MethodName: ToggleCameraPerspective + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &7912978629332645894 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2849965594986360437} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8392e72a471d50a4c97f1f81c607cff0, type: 3} + m_Name: + m_EditorClassIdentifier: + perspectiveIcon: {fileID: 3235985420525886568} + ortographicIcon: {fileID: 1531315316968597331} +--- !u!114 &4760868678127430542 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2849965594986360437} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc7240f5e2c5685479b6a96edeb98c55, type: 3} + m_Name: + m_EditorClassIdentifier: + tooltipText: Wissel tussen ortografisch/perspectief +--- !u!1 &4808914709091493759 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7872950163130704894} + - component: {fileID: 5245131530638361199} + - component: {fileID: 3235985420525886568} + m_Layer: 5 + m_Name: Perspective + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7872950163130704894 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4808914709091493759} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 9028312062092443388} + m_RootOrder: 1 + 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: 0} + m_SizeDelta: {x: -50, y: -50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5245131530638361199 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4808914709091493759} + m_CullTransparentMesh: 1 +--- !u!114 &3235985420525886568 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4808914709091493759} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 9bd63813fd73bba41b7b1db1aef6ead5, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &5927788624185022863 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2338700564466595606} + - component: {fileID: 8279794879285913697} + - component: {fileID: 1531315316968597331} + m_Layer: 5 + m_Name: Ortographic + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &2338700564466595606 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5927788624185022863} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 9028312062092443388} + m_RootOrder: 0 + 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: 0} + m_SizeDelta: {x: -50, y: -50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8279794879285913697 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5927788624185022863} + m_CullTransparentMesh: 1 +--- !u!114 &1531315316968597331 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5927788624185022863} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 89d28db6db8c5fd4696b10b6a39a4c0f, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/PerspectiveSwitch.prefab.meta b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/PerspectiveSwitch.prefab.meta new file mode 100644 index 000000000..72e9ee9f7 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/PerspectiveSwitch.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b43997262ce153e46843eb1fdfe6f8c1 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/SidePanel/SidePanel.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/SidePanel/SidePanel.prefab index 4b2c5326a..11bb7a5e9 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/SidePanel/SidePanel.prefab +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/SidePanel/SidePanel.prefab @@ -198,8 +198,9 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4563895281594187579} - - {fileID: 4173362438388021937} - {fileID: 936134243309661595} + - {fileID: 8725227091008150027} + - {fileID: 5134698320063767947} m_Father: {fileID: 7599562963145111751} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -230,125 +231,265 @@ MonoBehaviour: annotationsContainer: {fileID: 2534885638861334160} cameraContainer: {fileID: 4110384795647470943} layerVisualsDialog: {fileID: 7222801889008690497} ---- !u!1001 &385669809876631622 +--- !u!1001 &3807174440184651615 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 7312608633736036488} m_Modifications: - - target: {fileID: 4373258711491771124, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 3416080621231773609, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} - propertyPath: m_Name - value: Map + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 0} + - target: {fileID: 4637109601325460816, guid: 100b47079e7e1e84e864865ed2bb56e4, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_Pivot.x - value: 1 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, + type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_RootOrder - value: 1 + value: 2 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_AnchorMax.x - value: 1 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_AnchorMin.x - value: 1 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_SizeDelta.x value: 222 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_SizeDelta.y value: 128 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_AnchoredPosition.x - value: 20 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_AnchoredPosition.y - value: 15 + value: 20 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 5536752858155191736, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 5603594167461659991, guid: 100b47079e7e1e84e864865ed2bb56e4, + type: 3} + propertyPath: m_Name + value: WMTSMapViewer + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 100b47079e7e1e84e864865ed2bb56e4, type: 3} +--- !u!224 &8725227091008150027 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 5603594167461659988, guid: 100b47079e7e1e84e864865ed2bb56e4, + type: 3} + m_PrefabInstance: {fileID: 3807174440184651615} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &4181905710698126199 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 7312608633736036488} + m_Modifications: + - target: {fileID: 2849965594986360437, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_Name + value: OrtographicSwitch + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_AnchorMin.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_SizeDelta.x + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_SizeDelta.y + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_AnchoredPosition.x + value: -300 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 40 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, type: 3} propertyPath: m_LocalEulerAnglesHint.x - value: 42.999 + value: 0 objectReference: {fileID: 0} - - target: {fileID: 5536752858155191736, guid: 2da556a9f16781c4eaf37b958c288348, + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, type: 3} propertyPath: m_LocalEulerAnglesHint.z - value: 60.576004 + value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 2da556a9f16781c4eaf37b958c288348, type: 3} ---- !u!224 &4173362438388021937 stripped + m_SourcePrefab: {fileID: 100100000, guid: b43997262ce153e46843eb1fdfe6f8c1, type: 3} +--- !u!224 &5134698320063767947 stripped RectTransform: - m_CorrespondingSourceObject: {fileID: 4373258711491771127, guid: 2da556a9f16781c4eaf37b958c288348, + m_CorrespondingSourceObject: {fileID: 9028312062092443388, guid: b43997262ce153e46843eb1fdfe6f8c1, type: 3} - m_PrefabInstance: {fileID: 385669809876631622} + m_PrefabInstance: {fileID: 4181905710698126199} m_PrefabAsset: {fileID: 0} --- !u!1001 &5533549267884870271 PrefabInstance: @@ -417,30 +558,50 @@ PrefabInstance: propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: objectReference: {fileID: 6543721933795909082} + - target: {fileID: 211894760872378487, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 211894760872378487, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 211894760872378487, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 211894760872378487, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} - target: {fileID: 374777055007662599, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 374777055007662599, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 374777055007662599, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y - value: 20.75 + value: 0 objectReference: {fileID: 0} - target: {fileID: 374777055007662599, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 30 + value: 0 objectReference: {fileID: 0} - target: {fileID: 374777055007662599, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -58.5 + value: 0 objectReference: {fileID: 0} - target: {fileID: 445344772382859104, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -475,27 +636,27 @@ PrefabInstance: - target: {fileID: 919558182411289843, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 919558182411289843, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 919558182411289843, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y - value: 20.75 + value: 0 objectReference: {fileID: 0} - target: {fileID: 919558182411289843, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 30 + value: 0 objectReference: {fileID: 0} - target: {fileID: 919558182411289843, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -79.25 + value: 0 objectReference: {fileID: 0} - target: {fileID: 936050633215296546, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -543,6 +704,31 @@ PrefabInstance: propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} + - target: {fileID: 1167347488388601913, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1167347488388601913, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1167347488388601913, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1167347488388601913, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1167347488388601913, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} - target: {fileID: 1318765755921484745, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y @@ -566,27 +752,27 @@ PrefabInstance: - target: {fileID: 1436606986661509120, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1436606986661509120, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1436606986661509120, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 368 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1436606986661509120, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 204 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1436606986661509120, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -80 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1491018026922621516, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -601,17 +787,17 @@ PrefabInstance: - target: {fileID: 1565175038992827573, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.x - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1565175038992827573, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1565175038992827573, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1572148284192100962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -881,12 +1067,12 @@ PrefabInstance: - target: {fileID: 2828434559716879962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2828434559716879962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2828434559716879962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -896,7 +1082,7 @@ PrefabInstance: - target: {fileID: 2828434559716879962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y - value: 355 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2828434559716879962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -906,32 +1092,32 @@ PrefabInstance: - target: {fileID: 2828434559716879962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -160 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2874999375047991972, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2874999375047991972, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2874999375047991972, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 368 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2874999375047991972, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 204 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2874999375047991972, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -515 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2886098270007028326, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -946,17 +1132,17 @@ PrefabInstance: - target: {fileID: 3017033427850426865, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3017033427850426865, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3017033427850426865, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 460 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3017033427850426865, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -966,37 +1152,37 @@ PrefabInstance: - target: {fileID: 3017033427850426865, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 250 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3017033427850426865, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -605 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3038503290140845962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3038503290140845962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3038503290140845962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 368 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3038503290140845962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 204 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3038503290140845962, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -40 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3093498220444612854, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1023,6 +1209,31 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 3136107247981932352, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3136107247981932352, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3136107247981932352, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_SizeDelta.x + value: 368 + objectReference: {fileID: 0} + - target: {fileID: 3136107247981932352, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 204 + objectReference: {fileID: 0} + - target: {fileID: 3136107247981932352, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} - target: {fileID: 3140590038290926493, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x @@ -1061,22 +1272,22 @@ PrefabInstance: - target: {fileID: 3470712231740798401, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3470712231740798401, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3470712231740798401, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 242.5 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3470712231740798401, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -100 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3572937018992633365, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1146,27 +1357,27 @@ PrefabInstance: - target: {fileID: 3790825574247260342, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3790825574247260342, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3790825574247260342, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y - value: 20.75 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3790825574247260342, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 30 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3790825574247260342, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -37.75 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3830890770430137948, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1181,12 +1392,12 @@ PrefabInstance: - target: {fileID: 3841506051299711108, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.x - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3841506051299711108, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3841506051299711108, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1221,37 +1432,37 @@ PrefabInstance: - target: {fileID: 3999183683665274926, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.x - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3999183683665274926, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3999183683665274926, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: -2 + value: 0 objectReference: {fileID: 0} - target: {fileID: 4106645168955344286, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 4106645168955344286, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 4106645168955344286, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 110.333336 + value: 0 objectReference: {fileID: 0} - target: {fileID: 4106645168955344286, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -100 + value: 0 objectReference: {fileID: 0} - target: {fileID: 4165698889136883655, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1333,6 +1544,26 @@ PrefabInstance: propertyPath: m_Text value: 2021 objectReference: {fileID: 0} + - target: {fileID: 4753089281825274740, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4753089281825274740, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4753089281825274740, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4753089281825274740, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} - target: {fileID: 4892656625578209348, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y @@ -1406,57 +1637,57 @@ PrefabInstance: - target: {fileID: 5323761060306985330, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5323761060306985330, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5323761060306985330, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 368 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5323761060306985330, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 204 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5559851700052498774, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5559851700052498774, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5559851700052498774, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 286.1667 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5559851700052498774, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -100 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5779205746874841402, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.x - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5779205746874841402, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5779205746874841402, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 5817056802238928263, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1486,27 +1717,27 @@ PrefabInstance: - target: {fileID: 6436116452438652997, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6436116452438652997, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6436116452438652997, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 368 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6436116452438652997, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 204 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6436116452438652997, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -120 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6453878793139870312, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1546,32 +1777,32 @@ PrefabInstance: - target: {fileID: 6794328097838332229, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6794328097838332229, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6794328097838332229, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.x - value: 308 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6794328097838332229, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 184 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6794328097838332229, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -170 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6895656845740255980, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y - value: -6 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6895656845740255980, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1663,6 +1894,26 @@ PrefabInstance: propertyPath: toggleOjects.Array.data[1] value: objectReference: {fileID: 3271471495654427025} + - target: {fileID: 7579477452282392995, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7579477452282392995, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7579477452282392995, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7579477452282392995, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} - target: {fileID: 7819235214994094115, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode @@ -1696,22 +1947,22 @@ PrefabInstance: - target: {fileID: 7908144947745713063, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7908144947745713063, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7908144947745713063, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_SizeDelta.y - value: 37.75 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7908144947745713063, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 30 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7908144947745713063, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1746,22 +1997,22 @@ PrefabInstance: - target: {fileID: 7934304064235181857, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7934304064235181857, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7934304064235181857, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.x - value: 184 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7934304064235181857, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_AnchoredPosition.y - value: -37.5 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7969829884323273677, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1793,10 +2044,35 @@ PrefabInstance: propertyPath: tabPaneTitle value: CSV Importeren objectReference: {fileID: 0} + - target: {fileID: 8750624497925296157, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8750624497925296157, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8750624497925296157, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8750624497925296157, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8750624497925296157, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} - target: {fileID: 8825392794818555733, guid: 02ad944e407562d40ae7234a9622449a, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 8908625200139631479, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1823,6 +2099,31 @@ PrefabInstance: propertyPath: m_Text value: 6 objectReference: {fileID: 0} + - target: {fileID: 9197375361140528292, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9197375361140528292, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9197375361140528292, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9197375361140528292, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9197375361140528292, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 966287129571883711, guid: 02ad944e407562d40ae7234a9622449a, type: 3} - {fileID: 3132547801037613001, guid: 02ad944e407562d40ae7234a9622449a, type: 3} @@ -1863,18 +2164,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 784b1a064d46f5748a170dbf49aed0e6, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!114 &7067143822108905586 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 3375611066624203277, guid: 02ad944e407562d40ae7234a9622449a, - type: 3} - m_PrefabInstance: {fileID: 5533549267884870271} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 784b1a064d46f5748a170dbf49aed0e6, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &3271471495654427025 stripped GameObject: m_CorrespondingSourceObject: {fileID: 7038427219104547822, guid: 02ad944e407562d40ae7234a9622449a, @@ -2007,6 +2296,18 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 784b1a064d46f5748a170dbf49aed0e6, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!114 &7067143822108905586 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3375611066624203277, guid: 02ad944e407562d40ae7234a9622449a, + type: 3} + m_PrefabInstance: {fileID: 5533549267884870271} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 784b1a064d46f5748a170dbf49aed0e6, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!114 &4704733281842877249 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 973213216032512318, guid: 02ad944e407562d40ae7234a9622449a, @@ -2171,6 +2472,11 @@ PrefabInstance: propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 4182317819244027975, guid: fa341848ec16ef84e8f7d63ae9682064, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0.8399658 + objectReference: {fileID: 0} - target: {fileID: 5174864613497383268, guid: fa341848ec16ef84e8f7d63ae9682064, type: 3} propertyPath: m_OnValueChanged.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName @@ -2199,7 +2505,7 @@ PrefabInstance: - target: {fileID: 7421446867431096731, guid: fa341848ec16ef84e8f7d63ae9682064, type: 3} propertyPath: m_RootOrder - value: 2 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7421446867431096731, guid: fa341848ec16ef84e8f7d63ae9682064, type: 3} diff --git a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/TooltipDialog.prefab b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/TooltipDialog.prefab index 8ad21c70a..657f6778c 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/TooltipDialog.prefab +++ b/3DAmsterdam/Assets/Netherlands3D/Prefabs/UI/TooltipDialog.prefab @@ -65,6 +65,7 @@ MonoBehaviour: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: @@ -123,6 +124,7 @@ MonoBehaviour: m_ChildControlHeight: 0 m_ChildScaleWidth: 0 m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 --- !u!114 &9048860143458511727 MonoBehaviour: m_ObjectHideFlags: 0 @@ -210,6 +212,7 @@ MonoBehaviour: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: @@ -223,7 +226,7 @@ MonoBehaviour: m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 - m_RichText: 0 + m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ConfigurationFile.cs b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ConfigurationFile.cs index 70abfc517..264bf2af6 100644 --- a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ConfigurationFile.cs +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ConfigurationFile.cs @@ -1,4 +1,21 @@ -using Amsterdam3D.Sewerage; +/* +* Copyright (C) X Gemeente +* X Amsterdam +* X Economic Services Departments +* +* Licensed under the EUPL, Version 1.2 or later (the "License"); +* You may not use this work except in compliance with the License. +* You may obtain a copy of the License at: +* +* https://github.com/Amsterdam/3DAmsterdam/blob/master/LICENSE.txt +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" basis, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +* implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ +using Amsterdam3D.Sewerage; using ConvertCoordinates; using Netherlands3D.BAG; using System.Collections; @@ -11,11 +28,10 @@ namespace Netherlands3D [System.Serializable] public class ConfigurationFile : ScriptableObject { - public enum TmsTileNumberingType + public enum MinimapOriginAlignment { - GoogleAndOSM, // (0 to 2zoom-1, 0 to 2zoom-1) for the range(-180, +85.0511) - (+180, -85.0511) - TMS, //'Tile Map Service' (0 to 2zoom-1, 2zoom-1 to 0) for the range(-180, +85.0511) - (+180, -85.0511). (That is, the same as the previous with the Y value flipped.) - QuadTrees //Used by Microsoft + TopLeft, + BottomLeft } [Header("Bounding Box coordinates")] @@ -25,16 +41,6 @@ public enum TmsTileNumberingType public float zeroGroundLevelY = 43.0f; - [Header("Minimap Tiled Web Map")] - [Tooltip("The variables {x} and {y} in the URL will be replaced with their corresponding RD coordinates.")] - public bool EnableMinimap = true; - public string minimapServiceUrl = "https://t1.data.amsterdam.nl/topo_rd/{zoom}/{x}/{y}.png"; - public TmsTileNumberingType MinimapTileNumberingType = TmsTileNumberingType.GoogleAndOSM; - public float minimapBottomLeftRD_X = -285401.920f; // zoomlevel 0 at RD WMTS - public float minimapBottomLeftRD_Y = 22598.080f; // zoomlevel 0 at RD WMTS - [Tooltip("Zoomlevel 0 width/height of tiles")] - public float MinimapZoom0RDSize = 880803.84f; - [Header("Tile layers external assets paths")] public string webserverRootPath = "https://3d.amsterdam.nl/web/data/"; public string buildingsMetaDataPath = "https://3d.amsterdam.nl/web/data/buildings/objectdata/"; @@ -70,5 +76,5 @@ public enum TmsTileNumberingType public Color primaryColor; public Color secondaryColor; - } + } } \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups.meta new file mode 100644 index 000000000..4c6615c64 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 22b9e733aa4c033408891eb835ded5bf +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Trees.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups/Trees.asset similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Trees.asset rename to 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups/Trees.asset diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Trees.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups/Trees.asset.meta similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Trees.asset.meta rename to 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/GameObjectGroups/Trees.asset.meta diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfig.cs b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfig.cs new file mode 100644 index 000000000..634b3340e --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfig.cs @@ -0,0 +1,31 @@ +/* +* Copyright (C) X Gemeente +* X Amsterdam +* X Economic Services Departments +* +* Licensed under the EUPL, Version 1.2 or later (the "License"); +* You may not use this work except in compliance with the License. +* You may obtain a copy of the License at: +* +* https://github.com/Amsterdam/3DAmsterdam/blob/master/LICENSE.txt +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" basis, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +* implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace Netherlands3D.Interface.Minimap +{ + [CreateAssetMenu(fileName = "Data", menuName = "ScriptableObjects/MinimapConfig", order = 0)] + [System.Serializable] + public class MinimapConfig : ScriptableObject + { + public string ServiceUrl = "https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=standaard&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y}"; + public TileMatrixSet TileMatrixSet; + } +} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfig.cs.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfig.cs.meta new file mode 100644 index 000000000..c737dd0d0 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfig.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 64449b37e0cfda9419601ec1b1c99c8c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs.meta new file mode 100644 index 000000000..ba56bcf6e --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a9c74c9b5ae3b0e45917fa288ad54fd8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Grey.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Grey.asset new file mode 100644 index 000000000..eeba32c2b --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Grey.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: BRT_Grey + m_EditorClassIdentifier: + ServiceUrl: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=grijs&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + TileMatrixSet: {fileID: 11400000, guid: 1b17a1ba445eb6c45b18ac4fb01ee559, type: 2} diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Grey.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Grey.asset.meta new file mode 100644 index 000000000..bb6bfeedc --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Grey.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e82064f434e9464db83e9aada836af2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Pastel.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Pastel.asset new file mode 100644 index 000000000..00258c18c --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Pastel.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: BRT_Pastel + m_EditorClassIdentifier: + ServiceUrl: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=pastel&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + TileMatrixSet: {fileID: 11400000, guid: 1b17a1ba445eb6c45b18ac4fb01ee559, type: 2} diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Pastel.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Pastel.asset.meta new file mode 100644 index 000000000..f447dcdbc --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Pastel.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a4e7afd9f4e62fd42b31555fc69c3a86 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Standard.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Standard.asset new file mode 100644 index 000000000..c8dbbdf5d --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Standard.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: BRT_Standard + m_EditorClassIdentifier: + ServiceUrl: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=standaard&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + TileMatrixSet: {fileID: 11400000, guid: 1b17a1ba445eb6c45b18ac4fb01ee559, type: 2} diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Standard.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Standard.asset.meta new file mode 100644 index 000000000..be5610bd8 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Standard.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f8278ff7c645df34e9348ff7aaf0d215 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Water.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Water.asset new file mode 100644 index 000000000..95f3ffe75 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Water.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: BRT_Water + m_EditorClassIdentifier: + ServiceUrl: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0?layer=water&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + TileMatrixSet: {fileID: 11400000, guid: 1b17a1ba445eb6c45b18ac4fb01ee559, type: 2} diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Water.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Water.asset.meta new file mode 100644 index 000000000..d1b1ac115 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/BRT_Water.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5084662919c96b5438f676c84fea733b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/PDOK_Satellite.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/PDOK_Satellite.asset new file mode 100644 index 000000000..8f03c3ebc --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/PDOK_Satellite.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 64449b37e0cfda9419601ec1b1c99c8c, type: 3} + m_Name: PDOK_Satellite + m_EditorClassIdentifier: + ServiceUrl: https://service.pdok.nl/hwh/luchtfotorgb/wmts/v1_0?layer=Actueel_ortho25&style=default&tilematrixset=EPSG%3A28992&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image%2Fpng&TileMatrix=EPSG%3A28992%3A{zoom}&TileCol={x}&TileRow={y} + TileMatrixSet: {fileID: 11400000, guid: 1b17a1ba445eb6c45b18ac4fb01ee559, type: 2} diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/PDOK_Satellite.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/PDOK_Satellite.asset.meta new file mode 100644 index 000000000..dfe32ebb9 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/PDOK_Satellite.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f9f0e64d4ffbc8247bb7d7361c8894b0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets.meta new file mode 100644 index 000000000..29ba87228 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6648fec86ff570a469a0dfff1f160081 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/EPSG28992.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/EPSG28992.asset new file mode 100644 index 000000000..5d35fe29f --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/EPSG28992.asset @@ -0,0 +1,21 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fc0f9e99d4f684846a7b546568eebdea, type: 3} + m_Name: EPSG28992 + m_EditorClassIdentifier: + minimapTileSize: 256 + minimapOriginAlignment: 0 + minimapOrigin: + x: 0 + y: 0 + minimapPixelInMeters: 0.00028 + minimapScaleDenominator: 12288000 diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/EPSG28992.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/EPSG28992.asset.meta new file mode 100644 index 000000000..81c50d200 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/EPSG28992.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1b17a1ba445eb6c45b18ac4fb01ee559 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/NL_Grid.asset b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/NL_Grid.asset new file mode 100644 index 000000000..f877ef302 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/NL_Grid.asset @@ -0,0 +1,21 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fc0f9e99d4f684846a7b546568eebdea, type: 3} + m_Name: NL_Grid + m_EditorClassIdentifier: + TileSize: 256 + minimapOriginAlignment: 1 + Origin: + x: -285401.9 + y: 22598.08 + PixelInMeters: 0.00028 + ScaleDenominator: 12288000 diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/NL_Grid.asset.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/NL_Grid.asset.meta new file mode 100644 index 000000000..f63f4004d --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/MinimapConfigs/TileMatrixSets/NL_Grid.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7441cb4567639594abf896f74e9d1ea8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources/BillingMode.json b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources/BillingMode.json deleted file mode 100644 index 6f4bfb710..000000000 --- a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Resources/BillingMode.json +++ /dev/null @@ -1 +0,0 @@ -{"androidStore":"GooglePlay"} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/TileMatrixSet.cs b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/TileMatrixSet.cs new file mode 100644 index 000000000..7a000593b --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/TileMatrixSet.cs @@ -0,0 +1,40 @@ +/* +* Copyright (C) X Gemeente +* X Amsterdam +* X Economic Services Departments +* +* Licensed under the EUPL, Version 1.2 or later (the "License"); +* You may not use this work except in compliance with the License. +* You may obtain a copy of the License at: +* +* https://github.com/Amsterdam/3DAmsterdam/blob/master/LICENSE.txt +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" basis, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +* implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ +using ConvertCoordinates; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace Netherlands3D.Interface.Minimap +{ + [CreateAssetMenu(fileName = "Data", menuName = "ScriptableObjects/TileMatrixSet", order = 0)] + [System.Serializable] + public class TileMatrixSet : ScriptableObject + { + public enum OriginAlignment + { + TopLeft, + BottomLeft + } + public int TileSize = 256; + public OriginAlignment minimapOriginAlignment = OriginAlignment.TopLeft; + public Vector2RD Origin = new Vector2RD(-285401.92, 903401.92); + public double PixelInMeters = 0.00028; + public double ScaleDenominator = 12288000; + } +} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/TileMatrixSet.cs.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/TileMatrixSet.cs.meta new file mode 100644 index 000000000..ee4cd1bd8 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/TileMatrixSet.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc0f9e99d4f684846a7b546568eebdea +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ApplicationSettingsProfile.cs b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/UserSettingsProfiles/ApplicationSettingsProfile.cs similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ApplicationSettingsProfile.cs rename to 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/UserSettingsProfiles/ApplicationSettingsProfile.cs diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ApplicationSettingsProfile.cs.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/UserSettingsProfiles/ApplicationSettingsProfile.cs.meta similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/ApplicationSettingsProfile.cs.meta rename to 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/UserSettingsProfiles/ApplicationSettingsProfile.cs.meta diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Vissim/VissimType.cs b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/VissimType.cs similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Vissim/VissimType.cs rename to 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/VissimType.cs diff --git a/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Vissim/VissimType.cs.meta b/3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/VissimType.cs.meta similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/Vissim/VissimType.cs.meta rename to 3DAmsterdam/Assets/Netherlands3D/ScriptableObjects/VissimType.cs.meta diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/CameraModeChanger.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/CameraModeChanger.cs index a9373fb86..b10a1bd1d 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/CameraModeChanger.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/CameraModeChanger.cs @@ -24,6 +24,12 @@ public class CameraModeChanger : MonoBehaviour public delegate void OnGodViewMode(); public event OnGodViewMode OnGodViewModeEvent; + public delegate void OnOrtographicMode(); + public event OnOrtographicMode OnOrtographicModeEvent; + + public delegate void OnPerspectiveMode(); + public event OnPerspectiveMode OnPerspectiveModeEvent; + private Quaternion oldGodViewRotation; public CameraMode CameraMode { get; private set; } @@ -33,6 +39,8 @@ public class CameraModeChanger : MonoBehaviour [SerializeField] private float groundTransitionOffset = 2.0f; + private bool ortographic = false; + private void Awake() { streetView = FindObjectOfType(); @@ -80,6 +88,25 @@ public void TransitionCamera(Transform cameraTransform, Vector3 position, Quater } } + public bool TogglePerspective() + { + ortographic = !ortographic; + CurrentCameraControls.ToggleOrtographic(ortographic); + + //Invoke an event, so UI a.o. items can hide/show themselves + switch (ortographic) + { + case true: + OnOrtographicModeEvent?.Invoke(); + break; + case false: + OnPerspectiveModeEvent?.Invoke(); + break; + } + + return ortographic; + } + /// /// Used from Javascript to move the camera to a specific WGS84 (gps) location based on the hash # in the url /// diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/FirstPersonExtents.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/FirstPersonExtents.cs index 1e8826c67..23f54d7e7 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/FirstPersonExtents.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/FirstPersonExtents.cs @@ -40,11 +40,11 @@ private Extent CalculateExtents() } // Convert min and max to WGS84 coordinates - var wGSMin = CoordConvert.UnitytoWGS84(unityMin); - var wGSMax = CoordConvert.UnitytoWGS84(unityMax); + var rdMin = CoordConvert.UnitytoRD(unityMin); + var rdMax = CoordConvert.UnitytoRD(unityMax); // Area that should be loaded - var extent = new Extent(wGSMin.lon, wGSMin.lat, wGSMax.lon, wGSMax.lat); + var extent = new Extent(rdMin.x, rdMin.y, rdMax.x, rdMax.y); return extent; } diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCamera.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCamera.cs index 456d7caae..114895d65 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCamera.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCamera.cs @@ -9,6 +9,7 @@ using System.Collections.Generic; using Netherlands3D.Interface; using Netherlands3D.Settings; +using System.Collections; namespace Netherlands3D.Cameras { @@ -23,6 +24,7 @@ public class GodViewCamera : MonoBehaviour, ICameraControls [SerializeField] private float spinSpeed = 0.5f; + private const float minOrtographicZoom = 20f; private const float maxZoomOut = 2500f; [SerializeField] @@ -32,25 +34,20 @@ public class GodViewCamera : MonoBehaviour, ICameraControls public bool HoldingInteraction => (dragging || rotatingAroundPoint); private const float rotationSpeed = 50.0f; - - private const float minAngle = -89f; - private const float maxAngle = 89f; private const float speedFactor = 50.0f; private float maxClickDragDistance = 5000.0f; private float maxTravelDistance = 20000.0f; - private const float rotationSensitivity = 20.0f; - - private const float floorOffset = 1.8f; - private Vector3 startMouseDrag; [SerializeField] - private Vector3 cameraOffsetForTargetLocation = new Vector3(100,100,200); + private Vector3 cameraOffsetForTargetLocation = new Vector3(100, 100, 200); private float scrollDelta; + #if UNITY_WEBGL && !UNITY_EDITOR + //This is a temporary solution untill unity normalizes the WebGL input float webGLScrollMultiplier = 100.0f; #endif @@ -94,36 +91,40 @@ public class GodViewCamera : MonoBehaviour, ICameraControls List availableActionMaps; - void Awake() - { + [SerializeField] + private float resetTransitionSpeed = 0.5f; + private Coroutine resetNorthTransition; + + void Awake() + { cameraComponent = GetComponent(); } void Start() - { + { worldPlane = new Plane(Vector3.up, new Vector3(0, Config.activeConfiguration.zeroGroundLevelY, 0)); - + availableActionMaps = new List() { ActionHandler.actions.GodViewMouse, - ActionHandler.actions.GodViewKeyboard + ActionHandler.actions.GodViewKeyboard }; - + currentRotation = new Vector2(cameraComponent.transform.rotation.eulerAngles.y, cameraComponent.transform.rotation.eulerAngles.x); - AddActionListeners(); - } + AddActionListeners(); + } private void AddActionListeners() - { + { //Mouse actions dragActionMouse = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewMouse.Drag); - rotateActionMouse = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewMouse.SpinDrag); + rotateActionMouse = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewMouse.SpinDrag); zoomScrollActionMouse = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewMouse.Zoom); zoomDragActionMouse = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewMouse.ZoomDrag); //Keyboard actions moveActionKeyboard = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewKeyboard.MoveCamera); - rotateActionKeyboard = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewKeyboard.RotateCamera); + rotateActionKeyboard = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewKeyboard.RotateCamera); zoomActionKeyboard = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewKeyboard.Zoom); moveHeightActionKeyboard = ActionHandler.instance.GetAction(ActionHandler.actions.GodViewKeyboard.MoveCameraHeight); @@ -170,7 +171,7 @@ public void EnableMouseActionMap(bool enabled) { ActionHandler.actions.GodViewMouse.Enable(); } - else if(!enabled && ((!rotatingAroundPoint && !dragging) || Selector.Instance.GetActiveInteractable()) && ActionHandler.actions.GodViewMouse.enabled) + else if (!enabled && ((!rotatingAroundPoint && !dragging) || Selector.Instance.GetActiveInteractable()) && ActionHandler.actions.GodViewMouse.enabled) { dragging = false; dragMomentum = Vector3.zero; @@ -205,11 +206,11 @@ private void RotateAroundModifier(IAction action) private void Zoom(IAction action) { - scrollDelta = ActionHandler.actions.GodViewMouse.Zoom.ReadValue().y; + scrollDelta = ActionHandler.actions.GodViewMouse.Zoom.ReadValue().y; //A bug with the new inputsystem only fixed in Unity 2021 causes scroll input to be very low on WebGL builds #if UNITY_WEBGL && !UNITY_EDITOR - scrollDelta *= webGLScrollMultiplier; + scrollDelta *= webGLScrollMultiplier; #endif if (scrollDelta != 0) @@ -220,12 +221,12 @@ private void Zoom(IAction action) } private void Drag(IAction action) - { - if(action.Cancelled) + { + if (action.Cancelled) { dragging = false; rotatingAroundPoint = false; - } + } else if (action.Performed) { startMouseDrag = GetMousePositionInWorld(); @@ -247,7 +248,7 @@ private void SpinDrag(IAction action) } void Update() - { + { if (dragging) { CheckRotatingAround(); @@ -271,7 +272,7 @@ void Update() { RotateAroundPoint(); } - else if(!BlockedByTextInput()) + else if (!BlockedByTextInput()) { HandleTranslationInput(); HandleRotationInput(); @@ -283,7 +284,8 @@ void Update() } } - LimitPosition(); + Clamping(); + //ClampRotation(); //clamping doesnt work because we rotate around point, moving the camera } void CheckRotatingAround() @@ -302,17 +304,32 @@ void CheckRotatingAround() /// /// Clamps the camera within the max travel distance bounding box /// - private void LimitPosition() - { - this.transform.position = new Vector3(Mathf.Clamp(this.transform.position.x,-maxTravelDistance, maxTravelDistance), Mathf.Clamp(this.transform.position.y, minUndergroundY, maxZoomOut), Mathf.Clamp(this.transform.position.z, -maxTravelDistance, maxTravelDistance)); - } + private void Clamping() + { + //Make sure orto cameras only look down, and do not go too low + if (cameraComponent.orthographic) + { + cameraComponent.transform.rotation = Quaternion.LookRotation(Vector3.down,cameraComponent.transform.up); + this.transform.position = new Vector3( + this.transform.position.x, + Mathf.Clamp(cameraComponent.orthographicSize, 100, maxZoomOut), + this.transform.position.z + ); + } + + this.transform.position = new Vector3( + Mathf.Clamp(this.transform.position.x, -maxTravelDistance, maxTravelDistance), + Mathf.Clamp(this.transform.position.y, minUndergroundY, maxZoomOut), + Mathf.Clamp(this.transform.position.z, -maxTravelDistance, maxTravelDistance) + ); + } - private bool BlockedByTextInput(){ + private bool BlockedByTextInput() { return EventSystem.current.currentSelectedGameObject != null && EventSystem.current.currentSelectedGameObject.GetComponent(); } - public void MoveAndFocusOnLocation(Vector3 targetLocation, Quaternion targetRotation = new Quaternion()) - { + public void MoveAndFocusOnLocation(Vector3 targetLocation, Quaternion targetRotation = new Quaternion()) + { cameraComponent.transform.position = targetLocation + cameraOffsetForTargetLocation; cameraComponent.transform.LookAt(targetLocation, Vector3.up); @@ -323,14 +340,14 @@ void HandleTranslationInput() { moveSpeed = Mathf.Sqrt(Mathf.Abs(cameraComponent.transform.position.y)) * speedFactor; var heightchange = moveHeightActionKeyboard.ReadValue(); + Vector3 movement = moveActionKeyboard.ReadValue(); - if (movement == Vector3.zero && heightchange == 0) return; - + movement.z = movement.y; movement.y = heightchange * 0.1f; movement = Quaternion.AngleAxis(cameraComponent.transform.eulerAngles.y, Vector3.up) * movement; - cameraComponent.transform.position += movement * moveSpeed * Time.deltaTime; + cameraComponent.transform.position += movement * moveSpeed * Time.deltaTime; } private void HandleRotationInput() @@ -351,7 +368,7 @@ private void HandleFly() Vector2 val = flyActionGamepad.ReadValue(); if (val == Vector2.zero) return; - + var newpos = cameraComponent.transform.position += cameraComponent.transform.forward.normalized * val.y * moveSpeed * Time.deltaTime * 0.3f; newpos += cameraComponent.transform.right * val.x * moveSpeed * Time.deltaTime * 0.1f; @@ -360,30 +377,22 @@ private void HandleFly() } private void FirstPersonLook() - { + { var mouseDelta = Mouse.current.delta.ReadValue(); - //Convert mouse position into local rotations - currentRotation.x += mouseDelta.x * spinSpeed * ApplicationSettings.settings.rotateSensitivity; - currentRotation.y -= mouseDelta.y * spinSpeed * ApplicationSettings.settings.rotateSensitivity; + //Convert mouse position into local rotations + currentRotation.x += mouseDelta.x * spinSpeed * ApplicationSettings.settings.rotateSensitivity; + currentRotation.y -= mouseDelta.y * spinSpeed * ApplicationSettings.settings.rotateSensitivity; - //Adjust camera rotation - cameraComponent.transform.rotation = Quaternion.Euler(currentRotation.y, currentRotation.x, 0); - } - - private void ClampRotation() - { - cameraComponent.transform.rotation = Quaternion.Euler(new Vector3( - ClampAngle(cameraComponent.transform.localEulerAngles.x, minAngle, maxAngle), - cameraComponent.transform.localEulerAngles.y, - cameraComponent.transform.localEulerAngles.z)); + //Adjust camera rotation + cameraComponent.transform.rotation = Quaternion.Euler(currentRotation.y, currentRotation.x, 0); } /// /// Use a normalized value to set the camera height between floor level and maximum height /// /// Range from 0 to 1 - public void SetNormalizedCameraHeight(float normalizedHeight){ + public void SetNormalizedCameraHeight(float normalizedHeight) { var newHeight = Mathf.Lerp(minUndergroundY, maxZoomOut, normalizedHeight); cameraComponent.transform.position = new Vector3(cameraComponent.transform.position.x, newHeight, cameraComponent.transform.position.z); } @@ -392,58 +401,74 @@ public void SetNormalizedCameraHeight(float normalizedHeight){ /// Returns the normalized 0 to 1 value of the camera height /// /// Normalized 0 to 1 value of the camera height - public float GetNormalizedCameraHeight(){ + public float GetNormalizedCameraHeight() { return Mathf.InverseLerp(minUndergroundY, maxZoomOut, cameraComponent.transform.position.y); } + //Return value representing camera height in borth ortographic as default public float GetCameraHeight() { - return cameraComponent.transform.position.y; + return (cameraComponent.orthographic) ? cameraComponent.orthographicSize : cameraComponent.transform.position.y; } private void ZoomInDirection(float zoomAmount, Vector3 zoomDirectionPoint) { - var heightSpeed = cameraComponent.transform.position.y; //The higher we are, the faster we zoom - zoomDirection = (zoomDirectionPoint - cameraComponent.transform.position).normalized; - cameraComponent.transform.Translate(zoomDirection * zoomSpeed * zoomAmount * heightSpeed, Space.World); + var cameraHeight = cameraComponent.transform.position.y; //The higher we are, the faster we zoom + + if (cameraComponent.orthographic) + { + cameraComponent.orthographicSize = Mathf.Clamp(cameraComponent.orthographicSize - cameraComponent.orthographicSize * zoomAmount * zoomSpeed, minOrtographicZoom, maxZoomOut); + + //An ortographic camera moves towards the zoom direction point in its own 2D plane + if (cameraComponent.transform.position.y < maxZoomOut) + { + var localPointPosition = cameraComponent.transform.InverseTransformPoint(zoomDirectionPoint); + localPointPosition.z = 0; + cameraComponent.transform.Translate(localPointPosition * zoomSpeed * zoomAmount); + } + } + else{ + //A perspective camera moves its position towards to zoom direction point + zoomDirection = (zoomDirectionPoint - cameraComponent.transform.position).normalized; + cameraComponent.transform.Translate(zoomDirection * zoomSpeed * zoomAmount * cameraHeight, Space.World); + } + focusingOnTargetPoint.Invoke(zoomDirectionPoint); } private void Dragging() - { + { if (!ActionHandler.actions.GodViewMouse.enabled) return; dragMomentum = (GetMousePositionInWorld() - startMouseDrag); - if (dragMomentum.magnitude > 0.1f) - transform.position -= dragMomentum; + if (dragMomentum.magnitude > 0.1f) + transform.position -= dragMomentum; //Filter out extreme swings - if (dragMomentum.magnitude > maxMomentum) dragMomentum = Vector3.ClampMagnitude(dragMomentum, maxMomentum); - } - - private void EazeOutDragVelocity() - { - //Slide forward in dragged direction - dragMomentum = Vector3.Lerp(dragMomentum, Vector3.zero, Time.deltaTime * deceleration); - if (dragMomentum.magnitude > 0.1f) - { - this.transform.position -= dragMomentum; - } - } + if (dragMomentum.magnitude > maxMomentum) dragMomentum = Vector3.ClampMagnitude(dragMomentum, maxMomentum); + } + private void EazeOutDragVelocity() + { + //Slide forward in dragged direction + dragMomentum = Vector3.Lerp(dragMomentum, Vector3.zero, Time.deltaTime * deceleration); + if (dragMomentum.magnitude > 0.1f) + { + this.transform.position -= dragMomentum; + } + } public Ray GetMainPointerRay() { var pointerPosition = Mouse.current.position.ReadValue(); return cameraComponent.ScreenPointToRay(pointerPosition); } - public Vector3 GetMousePositionInWorld(Vector3 optionalPositionOverride = default) { var pointerPosition = Mouse.current.position.ReadValue(); if (optionalPositionOverride != default) pointerPosition = optionalPositionOverride; - var screenRay = cameraComponent.ScreenPointToRay(pointerPosition); + var screenRay = cameraComponent.ScreenPointToRay(pointerPosition); worldPlane.Raycast(screenRay, out float distance); var samplePoint = screenRay.GetPoint(Mathf.Min(maxClickDragDistance, distance)); @@ -452,62 +477,110 @@ public Vector3 GetMousePositionInWorld(Vector3 optionalPositionOverride = defaul return samplePoint; } + /// + /// Resets the camera rotation so it points north + /// The general modifier key input is used to optionaly also reset the camera so it looks down + /// + public void ResetNorth(bool resetTopDown = false) { + + if (resetNorthTransition != null) StopCoroutine(resetNorthTransition); + resetNorthTransition = StartCoroutine(TransitionResetToNorth(resetTopDown)); + } + + private IEnumerator TransitionResetToNorth(bool resetTopDown = false) { + + Quaternion newTargetRotation; + + //If modifier is used, also make camera to look down + if (resetTopDown) + { + newTargetRotation = Quaternion.LookRotation(Vector3.down, Vector3.forward); + } + else { + newTargetRotation = Quaternion.Euler(cameraComponent.transform.eulerAngles.x, 0, cameraComponent.transform.eulerAngles.z); + } + + //Transition north, with camera looking down + while (Quaternion.Angle(cameraComponent.transform.rotation, newTargetRotation) > 0.01f) + { + cameraComponent.transform.rotation = Quaternion.Lerp(cameraComponent.transform.rotation, newTargetRotation, resetTransitionSpeed); + yield return new WaitForEndOfFrame(); + } + + //Round it up + cameraComponent.transform.rotation = newTargetRotation; + resetNorthTransition = null; + } + private void RotateAroundPoint() - { - var mouseDelta = Mouse.current.delta.ReadValue(); + { + var mouseDelta = Mouse.current.delta.ReadValue(); - var previousPosition = cameraComponent.transform.position; - var previousRotation = cameraComponent.transform.rotation; + var previousPosition = cameraComponent.transform.position; + var previousRotation = cameraComponent.transform.rotation; - cameraComponent.transform.RotateAround(rotatePoint, cameraComponent.transform.right, -mouseDelta.y * spinSpeed * ApplicationSettings.settings.rotateSensitivity); - cameraComponent.transform.RotateAround(rotatePoint, Vector3.up, mouseDelta.x * spinSpeed * ApplicationSettings.settings.rotateSensitivity); + if(!cameraComponent.orthographic) + cameraComponent.transform.RotateAround(rotatePoint, cameraComponent.transform.right, -mouseDelta.y * spinSpeed * ApplicationSettings.settings.rotateSensitivity); + cameraComponent.transform.RotateAround(rotatePoint, Vector3.up, mouseDelta.x * spinSpeed * ApplicationSettings.settings.rotateSensitivity); - if (cameraComponent.transform.position.y < minUndergroundY) - { - //Do not let the camera go beyond the rotationpoint height - cameraComponent.transform.position = previousPosition; - cameraComponent.transform.rotation = previousRotation; - } + if (cameraComponent.transform.position.y < minUndergroundY) + { + //Do not let the camera go beyond the rotationpoint height + cameraComponent.transform.position = previousPosition; + cameraComponent.transform.rotation = previousRotation; + } - currentRotation = new Vector2(cameraComponent.transform.rotation.eulerAngles.y, cameraComponent.transform.rotation.eulerAngles.x); + currentRotation = new Vector2(cameraComponent.transform.rotation.eulerAngles.y, cameraComponent.transform.rotation.eulerAngles.x); - focusingOnTargetPoint.Invoke(rotatePoint); - } + focusingOnTargetPoint.Invoke(rotatePoint); + } - private void SetFocusPoint() - { - var pointerPosition = Mouse.current.position.ReadValue(); - - RaycastHit hit; - var screenRay = cameraComponent.ScreenPointToRay(pointerPosition); - - //Determine the point we will spin around - if (Transformable.lastSelectedTransformable != null) - { - rotatePoint = Transformable.lastSelectedTransformable.transform.position; - } - else if (Physics.Raycast(screenRay, out hit)) - { - rotatePoint = hit.point; - focusingOnTargetPoint(rotatePoint); - } - else - { - rotatePoint = GetMousePositionInWorld(); - focusingOnTargetPoint(rotatePoint); - } - } + private void SetFocusPoint() + { + var pointerPosition = Mouse.current.position.ReadValue(); + + RaycastHit hit; + var screenRay = cameraComponent.ScreenPointToRay(pointerPosition); + + //Determine the point we will spin around + if (Transformable.lastSelectedTransformable != null) + { + rotatePoint = Transformable.lastSelectedTransformable.transform.position; + } + else if (Physics.Raycast(screenRay, out hit)) + { + rotatePoint = hit.point; + focusingOnTargetPoint(rotatePoint); + } + else + { + rotatePoint = GetMousePositionInWorld(); + focusingOnTargetPoint(rotatePoint); + } + } - private float ClampAngle(float angle, float from, float to) + public bool UsesActionMap(InputActionMap actionMap) { - if (angle < 0f) angle = 360 + angle; - if (angle > 180f) return Mathf.Max(angle, 360 + from); - return Mathf.Min(angle, to); + return availableActionMaps.Contains(actionMap); } - public bool UsesActionMap(InputActionMap actionMap) - { - return availableActionMaps.Contains(actionMap); + public void ToggleOrtographic(bool ortographicOn) + { + cameraComponent.orthographic = ortographicOn; + + if (ortographicOn) + { + //Set the orto size according to camera height, so our fov looks a bit like the perspective fov + cameraComponent.orthographicSize = cameraComponent.transform.position.y; + + //Slide forward based on camera angle, to get an expected centerpoint for our view + var forwardAmount = Vector3.Dot(cameraComponent.transform.up, Vector3.up); + cameraComponent.transform.Translate(cameraComponent.transform.up * forwardAmount * cameraComponent.transform.position.y); + print("Ortographic"); + } + else{ + print("Perspective"); + } } } } \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCameraExtents.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCameraExtents.cs index 8f8b15861..f143cda83 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCameraExtents.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/GodViewCameraExtents.cs @@ -57,11 +57,11 @@ private Extent CameraExtent() } // Convert min and max to WGS84 coordinates - var wGSMin = CoordConvert.UnitytoWGS84(unityMin); - var wGSMax = CoordConvert.UnitytoWGS84(unityMax); + var rdMin = CoordConvert.UnitytoRD(unityMin); + var rdMax = CoordConvert.UnitytoRD(unityMax); // Area that should be loaded - var extent = new Extent(wGSMin.lon, wGSMin.lat, wGSMax.lon, wGSMax.lat); + var extent = new Extent(rdMin.x, rdMin.y, rdMax.x, rdMax.y); return extent; } @@ -72,31 +72,32 @@ private Vector3 GetCornerPoint(Corners corner) switch (corner) { case Corners.TOP_LEFT: - screenPosition.x = CameraModeChanger.Instance.ActiveCamera.pixelRect.xMin; - screenPosition.y = CameraModeChanger.Instance.ActiveCamera.pixelRect.yMax; + screenPosition.x = 0; + screenPosition.y = 1; + break; case Corners.TOP_RIGHT: - screenPosition.x = CameraModeChanger.Instance.ActiveCamera.pixelRect.xMax; - screenPosition.y = CameraModeChanger.Instance.ActiveCamera.pixelRect.yMax; + screenPosition.x = 1; + screenPosition.y = 1; break; case Corners.BOTTOM_LEFT: - screenPosition.x = CameraModeChanger.Instance.ActiveCamera.pixelRect.xMin; - screenPosition.y = CameraModeChanger.Instance.ActiveCamera.pixelRect.yMin; + screenPosition.x = 0; + screenPosition.y = 0; break; case Corners.BOTTOM_RIGHT: - screenPosition.x = CameraModeChanger.Instance.ActiveCamera.pixelRect.xMax; - screenPosition.y = CameraModeChanger.Instance.ActiveCamera.pixelRect.yMin; + screenPosition.x = 1; + screenPosition.y = 0; break; default: break; } var output = new Vector3(); - var topLeftCornerStart = CameraModeChanger.Instance.ActiveCamera.transform.position; - var topLeftCornerFar = CameraModeChanger.Instance.ActiveCamera.ScreenToWorldPoint(new Vector3(screenPosition.x, screenPosition.y, 3010)); - + var topScreenPointFar = CameraModeChanger.Instance.ActiveCamera.ViewportToWorldPoint(new Vector3(screenPosition.x, screenPosition.y, 10000)); + var topScreenPointNear = CameraModeChanger.Instance.ActiveCamera.ViewportToWorldPoint(new Vector3(screenPosition.x, screenPosition.y, 10)); + // Calculate direction vector - Vector3 direction = topLeftCornerStart - topLeftCornerFar; + Vector3 direction = topScreenPointNear - topScreenPointFar; float factor; //factor waarmee de Richtingvector vermenigvuldigd moet worden om op het maaiveld te stoppen if (direction.y < 0) //wanneer de Richtingvector omhooggaat deze factor op 1 instellen { @@ -104,13 +105,13 @@ private Vector3 GetCornerPoint(Corners corner) } else { - factor = ((CameraModeChanger.Instance.ActiveCamera.transform.localPosition.y - 40) / direction.y); //factor bepalen t.o.v. maaiveld (aanname maaiveld op 0 NAP = ca 40 Unityeenheden in Y-richting) + factor = ((topScreenPointNear.y) / direction.y); //factor bepalen t.o.v. maaiveld (aanname maaiveld op 0 NAP = ca 40 Unityeenheden in Y-richting) } // Determine the X, Y, en Z location where the viewline ends - output.x = CameraModeChanger.Instance.ActiveCamera.transform.localPosition.x - Mathf.Clamp((factor * direction.x), -1 * maximumViewDistance, maximumViewDistance); - output.y = CameraModeChanger.Instance.ActiveCamera.transform.localPosition.y - Mathf.Clamp((factor * direction.y), -1 * maximumViewDistance, maximumViewDistance); - output.z = CameraModeChanger.Instance.ActiveCamera.transform.localPosition.z - Mathf.Clamp((factor * direction.z), -1 * maximumViewDistance, maximumViewDistance); + output.x = topScreenPointNear.x - Mathf.Clamp((factor * direction.x), -1 * maximumViewDistance, maximumViewDistance); + output.y = topScreenPointNear.y - Mathf.Clamp((factor * direction.y), -1 * maximumViewDistance, maximumViewDistance); + output.z = topScreenPointNear.z - Mathf.Clamp((factor * direction.z), -1 * maximumViewDistance, maximumViewDistance); return output; } diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/ICameraControls.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/ICameraControls.cs index acf396828..62678573e 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/ICameraControls.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/ICameraControls.cs @@ -16,6 +16,8 @@ public interface ICameraControls void SetNormalizedCameraHeight(float height); + void ToggleOrtographic(bool ortographicOn); + void MoveAndFocusOnLocation(Vector3 targetLocation, Quaternion rotation); Vector3 GetMousePositionInWorld(Vector3 optionalPositionOverride = default); @@ -27,5 +29,7 @@ public interface ICameraControls void EnableMouseActionMap(bool enabled); bool UsesActionMap(InputActionMap actionMap); - } + + void ResetNorth(bool resetTopDown = false); + } } \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/Snapshot.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/Snapshot.cs index 3085c3c88..9539b7f55 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/Snapshot.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/Snapshot.cs @@ -249,8 +249,15 @@ private void RenderCameraToTexture() screenShot = new Texture2D(width, height, TextureFormat.RGB24, false); snapshotCamera.targetTexture = screenshotRenderTexture; + snapshotCamera.fieldOfView = CameraModeChanger.Instance.ActiveCamera.fieldOfView; + snapshotCamera.orthographic = CameraModeChanger.Instance.ActiveCamera.orthographic; + snapshotCamera.orthographicSize = CameraModeChanger.Instance.ActiveCamera.orthographicSize; RenderTexture.active = screenshotRenderTexture; + //Hide these panel renderers + Graphic[] allGraphics = GetComponentsInChildren(); + foreach (var graphic in allGraphics) graphic.enabled = false; + // Calls events on the camera related to rendering snapshotCamera.Render(); @@ -273,6 +280,9 @@ private void RenderCameraToTexture() Destroy(screenshotRenderTexture); Destroy(screenShot); + //Show this panel again + foreach (var graphic in allGraphics) graphic.enabled = true; + // If no filetype is given, make it a png if (fileType == "") { diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/StreetViewCamera.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/StreetViewCamera.cs index 8a9e08ba1..93e466975 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/StreetViewCamera.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Cameras/StreetViewCamera.cs @@ -120,7 +120,6 @@ void Update() FollowMouseRotation(); } } - private void FollowMouseRotation() { rotation.y += Mouse.current.delta.ReadValue().x * speed * ApplicationSettings.settings.rotateSensitivity; @@ -213,5 +212,24 @@ public bool UsesActionMap(InputActionMap actionMap) //TODO: Requires switch to actionmap inputs return false; } + + public void ResetNorth(bool resetTopDown = false) + { + //Not implemented + } + + /// + /// Ortographic wouldnt make sense in an FPS camera, but we can change the fov to something a little less extreme as a fallback. + /// + /// Ortographic on + public void ToggleOrtographic(bool ortographicOn) + { + if (ortographicOn) + { + cameraComponent.fieldOfView = 30; + } + + cameraComponent.fieldOfView = 60; + } } } \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/CameraHeightSlider.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/CameraHeightSlider.cs index 1485c809d..01b5ee277 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/CameraHeightSlider.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/CameraHeightSlider.cs @@ -27,6 +27,24 @@ private void Awake() }; } + private void Start() + { + CameraModeChanger.Instance.OnGodViewModeEvent += EnableObject; + CameraModeChanger.Instance.OnFirstPersonModeEvent += DisableObject; + + CameraModeChanger.Instance.OnOrtographicModeEvent += DisableObject; + CameraModeChanger.Instance.OnPerspectiveModeEvent += EnableObject; + } + + private void EnableObject() + { + gameObject.SetActive(true); + } + private void DisableObject() + { + gameObject.SetActive(false); + } + public void HeightSliderChanged(float sliderValue) { CameraModeChanger.Instance.CurrentCameraControls.SetNormalizedCameraHeight(sliderValue); diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Compass.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Compass.cs index 35d2d1a07..000925a4f 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Compass.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Compass.cs @@ -11,7 +11,15 @@ public class Compass : MonoBehaviour [SerializeField] private bool counterRotate = false; - + + private float lastClick = 0; + + [SerializeField] + private bool doubleClickLooksDown = false; + + [SerializeField] + private float doubleClickTime = 0.5f; + void Update() { direction.z = CameraModeChanger.Instance.ActiveCamera.transform.eulerAngles.y; @@ -24,9 +32,15 @@ void Update() public void ResetCameraToNorth() { print("Reset camera to north"); - var resetEuler = CameraModeChanger.Instance.ActiveCamera.transform.eulerAngles; - resetEuler.y = 0; - CameraModeChanger.Instance.ActiveCamera.transform.eulerAngles = resetEuler; + if (doubleClickLooksDown && (Time.realtimeSinceStartup - lastClick) < doubleClickTime) + { + CameraModeChanger.Instance.CurrentCameraControls.ResetNorth(true); + } + else{ + CameraModeChanger.Instance.CurrentCameraControls.ResetNorth(false); + } + + lastClick = Time.realtimeSinceStartup; } } } \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Measuring/MeasuringLine.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Measuring/MeasuringLine.cs index abe70eac0..b5b9b0607 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Measuring/MeasuringLine.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Measuring/MeasuringLine.cs @@ -260,7 +260,7 @@ private void UpdateLinePositions() lineRenderer.SetPositions(positions); //Draw the distance text on top of our line if points differ - if (positions[0] != positions[1]) + if (positions[0] != positions[1] || Selector.doingMultiselect) { var lineCenter = Vector3.Lerp(positions[0], positions[1], 0.5f); if (!distanceText) distanceText = CoordinateNumbers.Instance.CreateDistanceNumber(); diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/Map.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/Map.cs deleted file mode 100644 index 10a672f03..000000000 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/Map.cs +++ /dev/null @@ -1,143 +0,0 @@ -using Netherlands3D.JavascriptConnection; -using ConvertCoordinates; -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using UnityEngine.EventSystems; - -namespace Netherlands3D.Interface.Minimap -{ - public class Map : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, IScrollHandler, IPointerEnterHandler, IPointerExitHandler - { - private Vector3 dragOffset; - - [SerializeField] - private MapTiles mapTiles; - - private RectTransform rectTransform; - - [SerializeField] - private float hoverResizeSpeed = 1.0f; - - [SerializeField] - private RectTransform dragTarget; - [SerializeField] - private RectTransform navigation; - - private Vector2 defaultSize; - [SerializeField] - private Vector2 hoverSize; - - private bool dragging = false; - - private bool interactingWithMap = false; - - private void Awake() - { - rectTransform = this.GetComponent(); - defaultSize = rectTransform.sizeDelta; - navigation.gameObject.SetActive(false); - } - - private void OnEnable() - { - StartCoroutine(InitializeMapTiles()); - } - - IEnumerator InitializeMapTiles(){ - while (!Config.activeConfiguration) - { - yield return new WaitForEndOfFrame(); - } - - mapTiles.Initialize(rectTransform, dragTarget); - } - - - void LateUpdate() - { - if(!interactingWithMap && mapTiles.Initialized) - { - mapTiles.CenterMapOnPointer(); - } - } - - private void StartedMapInteraction() - { - interactingWithMap = true; - navigation.gameObject.SetActive(true); - - ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.POINTER); - - StopAllCoroutines(); - StartCoroutine(HoverResize(hoverSize)); - } - - private void StoppedMapInteraction() - { - interactingWithMap = false; - navigation.gameObject.SetActive(false); - - ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.AUTO); - - StopAllCoroutines(); - StartCoroutine(HoverResize(defaultSize)); - } - - public void OnBeginDrag(PointerEventData eventData) - { - dragging = true; - - ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.GRABBING); - - dragOffset = dragTarget.position - Input.mousePosition; - } - - public void OnDrag(PointerEventData eventData) - { - mapTiles.ClampInViewBounds(Input.mousePosition + dragOffset); - mapTiles.LoadTilesInView(); - } - - public void OnEndDrag(PointerEventData eventData) - { - dragging = false; - - ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.POINTER); - } - public void OnScroll(PointerEventData eventData) - { - if (eventData.scrollDelta.y > 0) - { - mapTiles.ZoomIn(); - } - else if (eventData.scrollDelta.y < 0) - { - mapTiles.ZoomOut(); - } - } - public void OnPointerEnter(PointerEventData eventData) - { - StartedMapInteraction(); - } - - public void OnPointerExit(PointerEventData eventData) - { - if (!dragging) - { - StoppedMapInteraction(); - } - } - - - IEnumerator HoverResize(Vector2 targetScale) - { - while (Vector2.Distance(targetScale, transform.localScale) > 0.01f) - { - rectTransform.sizeDelta = Vector2.Lerp(rectTransform.sizeDelta, targetScale, hoverResizeSpeed * Time.deltaTime); - yield return null; - } - } - } -} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTile.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTile.cs index d1dc5de83..974098735 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTile.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTile.cs @@ -1,8 +1,26 @@ -using System.Collections; +/* +* Copyright (C) X Gemeente +* X Amsterdam +* X Economic Services Departments +* +* Licensed under the EUPL, Version 1.2 or later (the "License"); +* You may not use this work except in compliance with the License. +* You may obtain a copy of the License at: +* +* https://github.com/Amsterdam/3DAmsterdam/blob/master/LICENSE.txt +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" basis, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +* implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ +using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; +using UnityEngine.EventSystems; namespace Netherlands3D.Interface.Minimap { @@ -15,40 +33,55 @@ public class MapTile : MonoBehaviour private const float fadeSpeed = 3.0f; private UnityWebRequest uwr; - public void Initialize(Transform parentTo, int zoomLevel, int size, int xLocation, int yLocation, Vector2 key, bool rayCastTile) + private int zoomLevel = 0; + private MinimapConfig config; + + public void Initialize(Transform container, int zoom, float size, float xLocation, float yLocation, Vector2 key, MinimapConfig minimapConfig) { + zoomLevel = zoom; tileKey = key; name = tileKey.x + "/" + tileKey.y; - transform.SetParent(parentTo, false); + config = minimapConfig; + + transform.SetParent(container, false); //generate a new rawimage TextureTargetRawImage = this.gameObject.AddComponent(); - TextureTargetRawImage.raycastTarget = rayCastTile; - TextureTargetRawImage.rectTransform.pivot = Vector2.zero; + TextureTargetRawImage.raycastTarget = false; + TextureTargetRawImage.rectTransform.pivot = new Vector2(0, 1); + TextureTargetRawImage.rectTransform.anchorMin = TextureTargetRawImage.rectTransform.anchorMax = new Vector2(0, 1); TextureTargetRawImage.rectTransform.sizeDelta = Vector2.one * size; - TextureTargetRawImage.enabled = false; + ClearTextureImage(); + + //Position it in our parent according to x an y grid + transform.localPosition = new Vector3(xLocation, yLocation, 0); - //Posotion it in our parent according to x an y grid - transform.localPosition = new Vector3(xLocation * size, yLocation * size, 0); - StartCoroutine(LoadTexture(zoomLevel, (int)key.x, (int)key.y)); + StartCoroutine(LoadTexture(zoomLevel, (int)tileKey.x, (int)tileKey.y)); + } + + private void ClearTextureImage() + { + TextureTargetRawImage.enabled = false; + TextureTargetRawImage.color = new Color(1.0f, 1.0f, 1.0f, 0.0f); } private IEnumerator LoadTexture(int zoom, int x, int y) { - var tileImageUrl = Config.activeConfiguration.minimapServiceUrl.Replace("{zoom}", zoom.ToString()).Replace("{x}", x.ToString()).Replace("{y}", y.ToString()); + var tileImageUrl = config.ServiceUrl.Replace("{zoom}", zoom.ToString()).Replace("{x}", x.ToString()).Replace("{y}", y.ToString()); using (uwr = UnityWebRequestTexture.GetTexture(tileImageUrl)) { yield return uwr.SendWebRequest(); - if (uwr.isNetworkError || uwr.isHttpError) + if (uwr.result != UnityWebRequest.Result.Success) { Debug.Log("Could not find minimap tile :" + tileImageUrl); } else { var texture = DownloadHandlerTexture.GetContent(uwr); + texture.wrapMode = TextureWrapMode.Clamp; TextureTargetRawImage.texture = texture; TextureTargetRawImage.enabled = true; TextureTargetRawImage.color = new Color(1.0f, 1.0f, 1.0f, 0.0f); diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTiles.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTiles.cs deleted file mode 100644 index 6de68f9c6..000000000 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapTiles.cs +++ /dev/null @@ -1,334 +0,0 @@ -using Netherlands3D.Cameras; -using ConvertCoordinates; -using System; -using System.Collections; -using System.Collections.Generic; -using System.Linq; -using UnityEngine; -using UnityEngine.EventSystems; -using UnityEngine.Networking; -using UnityEngine.UI; - -namespace Netherlands3D.Interface.Minimap -{ - public class MapTiles : MonoBehaviour, IPointerClickHandler - { - private bool loadedBottomLayer = false; - - private int minZoom = 6; - private int maxZoom = 12; - - [SerializeField] - private int startCellX = 28; - [SerializeField] - private int startCellY = 32; - - [SerializeField] - private RectTransform pointer; - - private Vector2 mapBottomLeftRDCoordinates; - private Vector2 mapTopRightRDCoordinates; - - [SerializeField] - private int zoom = 6; - [SerializeField] - private int gridCells = 3; - - private int baseGridCells = 3; - - public Vector2 MapBottomLeftRDCoordinates { get => mapBottomLeftRDCoordinates; } - public Vector2 MapTopRightRDCoordinates { get => mapTopRightRDCoordinates; } - - private Vector3 bottomLeftUnityCoordinates, topRightUnityCoordinates; - public Vector3 BottomLeftUnityCoordinates { get => bottomLeftUnityCoordinates; } - public Vector3 TopRightUnityCoordinates { get => topRightUnityCoordinates; } - - public int Zoom { get => zoom; } - public int GridCells { get => gridCells; } - public int StartCellX { get => startCellX; } - public int StartCellY { get => startCellY; } - public int TilePixelSize { get => tilePixelSize; } - public int MapPixelWidth { get => mapPixelWidth; } - public bool Initialized { get => initialized; private set => initialized = value; } - - private float keyTileSize; - private float distanceX; - private float distanceY; - private float tileOffsetX; - private float tileOffsetY; - - private const float viewLoadMargin = 500.0f; - - private RectTransform tilesDraggableContainer; - private RectTransform viewBoundsArea; - private RectTransform zoomLevelParent; - - private const int tilePixelSize = 256; //Width/height pixels - private float currentRelativeTileSize; - private int mapPixelWidth; - - [SerializeField] - private int maxTilesToLoad = 6; - - private Dictionary zoomLevelContainers; - private Dictionary loadedTiles; - - private Vector3 lastDraggedPointerPosition; - - private Canvas canvas; - - private bool initialized = false; - - public void Initialize(RectTransform view, RectTransform drag) - { - loadedBottomLayer = false; - - canvas = FindObjectOfType(); - - tilesDraggableContainer = drag; - viewBoundsArea = view; - - mapPixelWidth = TilePixelSize * baseGridCells; - - loadedTiles = new Dictionary(); - - zoomLevelContainers = new Dictionary(); - zoomLevelParent = GetZoomLevelParent(Zoom); - - CalculateMapCoordinates(); - LoadTilesInView(); - - pointer.localScale = Vector3.one / tilesDraggableContainer.localScale.x; - - Initialized = true; - } - - public void OnDisable() - { - //Make sure to remove all containers on disable (to free memory when not using minimap) - ClearZoomLevelContainers(true); - } - - public void CenterMapOnPointer() - { - tilesDraggableContainer.anchoredPosition = -pointer.transform.localPosition* tilesDraggableContainer.localScale.x; - - if (Vector3.Distance(lastDraggedPointerPosition, tilesDraggableContainer.localPosition) > tilePixelSize / tilesDraggableContainer.localScale.y) - { - LoadTilesInView(); - } - } - - void Update() - { - if(Initialized) - PutPointerOnCameraLocation(); - } - - private void PutPointerOnCameraLocation() - { - var cameraRDPosition = CoordConvert.UnitytoRD(CameraModeChanger.Instance.ActiveCamera.transform.position); - - var posX = Mathf.InverseLerp(mapBottomLeftRDCoordinates.x, mapTopRightRDCoordinates.x, (float)cameraRDPosition.x); - var posY = Mathf.InverseLerp(mapBottomLeftRDCoordinates.y, mapTopRightRDCoordinates.y, (float)cameraRDPosition.y); - - pointer.anchoredPosition = new Vector3(posX * mapPixelWidth * transform.localScale.x, posY * mapPixelWidth * transform.localScale.y, 0.0f); - } - - public void ClampInViewBounds(Vector3 targetPosition) - { - tilesDraggableContainer.position = new Vector3() - { - x = Mathf.Clamp(targetPosition.x, viewBoundsArea.position.x - (MapPixelWidth * tilesDraggableContainer.localScale.x * canvas.scaleFactor), viewBoundsArea.position.x - TilePixelSize), - y = Mathf.Clamp(targetPosition.y, viewBoundsArea.position.y - (MapPixelWidth * tilesDraggableContainer.localScale.y * canvas.scaleFactor) + TilePixelSize, viewBoundsArea.position.y) - }; - } - - public void OnPointerClick(PointerEventData eventData) - { - Vector3 localClickPosition = transform.InverseTransformPoint(eventData.position); - - var RDcoordinate = CoordConvert.RDtoUnity(new Vector3RD - { - x = Mathf.Lerp(mapBottomLeftRDCoordinates.x, mapTopRightRDCoordinates.x, localClickPosition.x / mapPixelWidth), - y = Mathf.Lerp(MapBottomLeftRDCoordinates.y, MapTopRightRDCoordinates.y, localClickPosition.y / mapPixelWidth), - z = 0.0 - }); - RDcoordinate.y = CameraModeChanger.Instance.ActiveCamera.transform.position.y; - CameraModeChanger.Instance.ActiveCamera.transform.position = RDcoordinate; - } - - private void CalculateMapCoordinates() - { - var gridCellTileSize = Config.activeConfiguration.MinimapZoom0RDSize / Mathf.Pow(2, Zoom); - mapBottomLeftRDCoordinates = new Vector2(Config.activeConfiguration.minimapBottomLeftRD_X + (gridCellTileSize * StartCellX), Config.activeConfiguration.minimapBottomLeftRD_Y + (gridCellTileSize * StartCellY)); - mapTopRightRDCoordinates = new Vector2(Config.activeConfiguration.minimapBottomLeftRD_X + (gridCellTileSize * (StartCellX + gridCells)), Config.activeConfiguration.minimapBottomLeftRD_Y + (gridCellTileSize * (StartCellY + gridCells))); - - bottomLeftUnityCoordinates = CoordConvert.RDtoUnity(new Vector3(mapBottomLeftRDCoordinates.x, mapBottomLeftRDCoordinates.y, 0.0f)); - topRightUnityCoordinates = CoordConvert.RDtoUnity(new Vector3(mapTopRightRDCoordinates.x, mapTopRightRDCoordinates.y, 0.0f)); - - CalculateGridOffset(); - } - private void CalculateGridOffset() - { - keyTileSize = Config.activeConfiguration.MinimapZoom0RDSize / Mathf.Pow(2, Zoom); - - distanceX = MapBottomLeftRDCoordinates.x - Config.activeConfiguration.minimapBottomLeftRD_X; - distanceY = MapBottomLeftRDCoordinates.y - Config.activeConfiguration.minimapBottomLeftRD_Y; - tileOffsetX = Mathf.Floor(distanceX / keyTileSize); - tileOffsetY = Mathf.Floor(distanceY / keyTileSize); - } - - public void LoadTilesInView() - { - lastDraggedPointerPosition = tilesDraggableContainer.localPosition; - for (int x = 0; x < GridCells; x++) - { - for (int y = 0; y < GridCells; y++) - { - var key = new Vector2(tileOffsetX + x, tileOffsetY + y); - var tileIsInView = Mathf.Abs(tilesDraggableContainer.localPosition.x + (currentRelativeTileSize*x) + currentRelativeTileSize/2.0f) < viewLoadMargin && Mathf.Abs(tilesDraggableContainer.localPosition.y + (currentRelativeTileSize * y) + currentRelativeTileSize / 2.0f) < 500.0f; - - //Only load a tile if its the initial bottom layer, or if it is in view and didnt load yet - if ((zoom == minZoom && !loadedBottomLayer) || (zoom != minZoom && tileIsInView && !loadedTiles.ContainsKey(key))) - { - var newTileObject = new GameObject(); - var mapTile = newTileObject.AddComponent(); - mapTile.Initialize(zoomLevelParent, Zoom, tilePixelSize, x, y, key, (zoom == minZoom)); - loadedTiles.Add(key, mapTile); - } - else if (zoom != minZoom && !tileIsInView && loadedTiles.Count > maxTilesToLoad && loadedTiles.ContainsKey(key) && loadedTiles.TryGetValue(key, out MapTile mapTile)) - { - loadedTiles.Remove(key); - if(mapTile) - Destroy(mapTile.gameObject); - } - } - } - //We only load the base layer once, because it will never be destroyed - if(minZoom == zoom) - { - loadedBottomLayer = true; - } - } - - public void ClearZoomLevelContainers(bool clearAll = false) - { - //Remove all zoomlevel containers with images that are not the base zoomlevel, and are two levels down - //from current zoomlevel, or above. - if(clearAll) - { - var itemsToRemove = zoomLevelContainers.ToList(); - foreach (var zoomLevelContainer in itemsToRemove) - { - Destroy(zoomLevelContainer.Value); - zoomLevelContainers.Remove(zoomLevelContainer.Key); - } - } - else{ - var itemsToRemove = zoomLevelContainers.Where(f => (f.Key < zoom - 1 || f.Key > zoom) && f.Key != minZoom).ToArray(); - foreach (var zoomLevelContainer in itemsToRemove) - { - Destroy(zoomLevelContainer.Value); - zoomLevelContainers.Remove(zoomLevelContainer.Key); - } - } - - - //Clear current level loaded tiles list - loadedTiles.Clear(); - } - - public void ZoomIn(bool useMousePosition = true) - { - if (Zoom < maxZoom) - { - zoom++; - gridCells *= 2; - ZoomTowardsLocation(useMousePosition); - CalculateGridOffset(); - zoomLevelParent = GetZoomLevelParent(Zoom); - - StopAllCoroutines(); - StartCoroutine(DelayLoadingTiles()); - } - } - - public void ZoomOut(bool useMousePosition = true) - { - if (Zoom > minZoom) - { - zoom--; - gridCells /= 2; - ZoomTowardsLocation(useMousePosition); - CalculateGridOffset(); - zoomLevelParent = GetZoomLevelParent(Zoom); - - StopAllCoroutines(); - StartCoroutine(DelayLoadingTiles()); - } - } - - IEnumerator DelayLoadingTiles() - { - yield return new WaitForSeconds(0.2f); - ClearZoomLevelContainers(); - LoadTilesInView(); - } - - private void ZoomTowardsLocation(bool useMouse = true) - { - var zoomTarget = Vector3.zero; - var zoomFactor = Mathf.Pow(2.0f, (Zoom - minZoom)); - - if (useMouse) - { - zoomTarget = Input.mousePosition; - } - else - { - zoomTarget = viewBoundsArea.position + new Vector3(-viewBoundsArea.sizeDelta.x * 0.5f, viewBoundsArea.sizeDelta.y * 0.5f); - } - - ScaleOverOrigin(tilesDraggableContainer.gameObject, zoomTarget, Vector3.one * zoomFactor); - - ClampInViewBounds(tilesDraggableContainer.transform.position); - - //Match pointer scale to resized container - pointer.localScale = Vector3.one / tilesDraggableContainer.localScale.x; - } - - public void ScaleOverOrigin(GameObject target, Vector3 scaleOrigin, Vector3 newScale) - { - var targetPosition = target.transform.position; - var origin = scaleOrigin; - var newOrigin = targetPosition - origin; - var relativeScale = newScale.x / target.transform.localScale.x; - var finalPosition = origin + newOrigin * relativeScale; - - target.transform.localScale = newScale; - target.transform.position = finalPosition; - } - - private RectTransform GetZoomLevelParent(int zoom) - { - if (!zoomLevelContainers.ContainsKey(zoom)) - { - var newZoomLevelParent = new GameObject().AddComponent(); - newZoomLevelParent.name = zoom.ToString(); - zoomLevelContainers.Add(zoom, newZoomLevelParent.gameObject); - newZoomLevelParent.pivot = Vector2.zero; - newZoomLevelParent.localScale = Vector3.one * Mathf.Pow(2, -(zoom - minZoom)); - newZoomLevelParent.SetParent(transform, false); - currentRelativeTileSize = tilePixelSize * newZoomLevelParent.transform.localScale.x * tilesDraggableContainer.localScale.x; - return newZoomLevelParent; - } - else if (zoomLevelContainers.TryGetValue(zoom, out GameObject existingZoomLevelParent)) - { - currentRelativeTileSize = tilePixelSize * existingZoomLevelParent.transform.localScale.x * tilesDraggableContainer.localScale.x; - return existingZoomLevelParent.GetComponent(); - } - return null; - } - } -} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapViewer.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapViewer.cs new file mode 100644 index 000000000..d21bb0472 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapViewer.cs @@ -0,0 +1,186 @@ +using Netherlands3D.JavascriptConnection; +using ConvertCoordinates; +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace Netherlands3D.Interface.Minimap +{ + public class MapViewer : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, IScrollHandler, IPointerEnterHandler, IPointerExitHandler, IPointerClickHandler + { + private Vector3 dragOffset; + + [SerializeField] + private RectTransform mapTiles; + + private WMTSMap wmtsMap; + + private RectTransform rectTransform; + + [SerializeField] + private float hoverResizeSpeed = 1.0f; + + [SerializeField] + private RectTransform navigation; + + private Vector2 defaultSize; + [SerializeField] + private Vector2 hoverSize; + + private bool dragging = false; + private bool interactingWithMap = false; + + [SerializeField] + private float maxZoomScale = 6.0f; + + private float minZoomScale = 0.0f; + private float zoomScale = 0.0f; + + private void Awake() + { + zoomScale = minZoomScale; + wmtsMap = mapTiles.GetComponent(); + rectTransform = this.GetComponent(); + + defaultSize = rectTransform.sizeDelta; + navigation.gameObject.SetActive(false); + } + + private void StartedMapInteraction() + { + interactingWithMap = true; + navigation.gameObject.SetActive(true); + ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.POINTER); + + StopAllCoroutines(); + StartCoroutine(HoverResize(hoverSize)); + } + + private void StoppedMapInteraction() + { + interactingWithMap = false; + navigation.gameObject.SetActive(false); + wmtsMap.CenterPointerInView = true; + ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.AUTO); + + StopAllCoroutines(); + StartCoroutine(HoverResize(defaultSize)); + } + + public void OnBeginDrag(PointerEventData eventData) + { + dragging = true; + wmtsMap.CenterPointerInView = false; + ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.GRABBING); + dragOffset = mapTiles.position - Input.mousePosition; + } + + public void OnDrag(PointerEventData eventData) + { + mapTiles.transform.position = Input.mousePosition + dragOffset; + } + + public void OnEndDrag(PointerEventData eventData) + { + dragging = false; + ChangePointerStyleHandler.ChangeCursor(ChangePointerStyleHandler.Style.POINTER); + } + public void OnScroll(PointerEventData eventData) + { + if (eventData.scrollDelta.y > 0) + { + ZoomIn(); + } + else if (eventData.scrollDelta.y < 0) + { + ZoomOut(); + } + } + public void OnPointerEnter(PointerEventData eventData) + { + StartedMapInteraction(); + } + + public void OnPointerExit(PointerEventData eventData) + { + if (!dragging) + { + StoppedMapInteraction(); + } + } + + public void ZoomIn(bool useMousePosition = true) + { + if (zoomScale < maxZoomScale) + { + zoomScale++; + ZoomTowardsLocation(useMousePosition); + wmtsMap.Zoomed((int)zoomScale); + } + } + + public void ZoomOut(bool useMousePosition = true) + { + if (zoomScale > minZoomScale) + { + zoomScale--; + ZoomTowardsLocation(useMousePosition); + wmtsMap.Zoomed((int)zoomScale); + } + } + private void ZoomTowardsLocation(bool useMouse = true) + { + var zoomTarget = Vector3.zero; + if (useMouse) + { + zoomTarget = Input.mousePosition; + } + else + { + zoomTarget = rectTransform.position + new Vector3(rectTransform.sizeDelta.x * 0.5f, rectTransform.sizeDelta.y * 0.5f); + } + + ScaleMapOverOrigin(zoomTarget, Vector3.one * Mathf.Pow(2.0f, zoomScale)); + } + + public void OnPointerClick(PointerEventData eventData) + { + if (!dragging) + { + wmtsMap.ClickedMap(eventData); + } + } + + public void ScaleMapOverOrigin(Vector3 scaleOrigin, Vector3 newScale) + { + var targetPosition = mapTiles.position; + var origin = scaleOrigin; + var newOrigin = targetPosition - origin; + var relativeScale = newScale.x / mapTiles.localScale.x; + var finalPosition = origin + newOrigin * relativeScale; + + mapTiles.localScale = newScale; + mapTiles.position = finalPosition; + } + + IEnumerator HoverResize(Vector2 targetScale) + { + while (true) + { + if (Vector2.Distance(targetScale, rectTransform.sizeDelta) > 0.5f) + { + //Eaze out to target scale + rectTransform.sizeDelta = Vector2.Lerp(rectTransform.sizeDelta, targetScale, hoverResizeSpeed * Time.deltaTime); + } + else{ + //Finish animation + rectTransform.sizeDelta = targetScale; + yield break; + } + yield return null; + } + } + } +} \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/Map.cs.meta b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapViewer.cs.meta similarity index 100% rename from 3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/Map.cs.meta rename to 3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/MapViewer.cs.meta diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS.meta b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS.meta new file mode 100644 index 000000000..6eec79dc7 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a3d8af0222411f044b351e3f7a127a5c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS/WMTSMap.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS/WMTSMap.cs new file mode 100644 index 000000000..2f4bff231 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS/WMTSMap.cs @@ -0,0 +1,324 @@ +/* +* Copyright (C) X Gemeente +* X Amsterdam +* X Economic Services Departments +* +* Licensed under the EUPL, Version 1.2 or later (the "License"); +* You may not use this work except in compliance with the License. +* You may obtain a copy of the License at: +* +* https://github.com/Amsterdam/3DAmsterdam/blob/master/LICENSE.txt +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" basis, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +* implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ +using ConvertCoordinates; +using Netherlands3D.Cameras; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace Netherlands3D.Interface.Minimap +{ + [HelpURL("https://portal.opengeospatial.org/files/?artifact_id=35326")] + public class WMTSMap : MonoBehaviour + { + private double minimapTopLeftX = -285401.92; + private double minimapTopLeftY = 903401.92; + + private Dictionary> mapTileLayers; + + [SerializeField] + private RectTransform pointer; + + [SerializeField] + private int startIdentifier = 5; + private int layerIdentifier = 5; + + private float boundsTilesX = 0; + private float boundsTilesY = 0; + + private float tileOffsetX = 0; + private float tileOffsetY = 0; + + private float tileSize = 256; + private float baseTileSize = 256; + private double tileSizeInMeters = 0; + private float startMeterInPixels = 0; + + private double divide = 0; + + private double pixelInMeters = 0.00028; + private double scaleDenominator = 12288000; //Zero zoomlevel is 1:12288000 + private double mapSizeInMeters = 0; + + private MapViewer parentMapViewer; + private RectTransform viewerTransform; + private RectTransform mapTransform; + + private Vector2 layerTilesOffset = Vector2.zero; + + private float boundsWidthInMeters; + private float boundsHeightInMeters; + + [SerializeField] + private bool centerPointerInView; + public bool CenterPointerInView { get => centerPointerInView; set => centerPointerInView = value; } + + [SerializeField] + private MinimapConfig minimapConfig; + + [SerializeField] + private bool clampWithinParent = true; + + private void Start() + { + layerIdentifier = startIdentifier; + + //Use settingsprofile values + tileSize = minimapConfig.TileMatrixSet.TileSize; + pixelInMeters = minimapConfig.TileMatrixSet.PixelInMeters; + scaleDenominator = minimapConfig.TileMatrixSet.ScaleDenominator; + + //Coverage of our application bounds + boundsWidthInMeters = (float)Config.activeConfiguration.TopRightRD.x - (float)Config.activeConfiguration.BottomLeftRD.x; + boundsHeightInMeters = (float)Config.activeConfiguration.TopRightRD.y - (float)Config.activeConfiguration.BottomLeftRD.y; + + baseTileSize = tileSize; + + mapTileLayers = new Dictionary>(); + + parentMapViewer = GetComponentInParent(); + viewerTransform = parentMapViewer.transform as RectTransform; + mapTransform = transform as RectTransform; + + //Calculate map width in meters based on zoomlevel 0 setting values + mapSizeInMeters = baseTileSize * pixelInMeters * scaleDenominator; + print($"mapWidthInMeters = {baseTileSize} * {pixelInMeters} * {scaleDenominator}"); + + DetermineTopLeftOrigin(); + + CalculateGridScaling(); + ActivateMapLayer(); + + //Calculate base meters in pixels to do calculations converting local coordinates to meters + startMeterInPixels = (float)tileSizeInMeters / (float)baseTileSize; + + pointer.gameObject.SetActive(true); + } + + private void DetermineTopLeftOrigin() + { + switch(minimapConfig.TileMatrixSet.minimapOriginAlignment){ + case TileMatrixSet.OriginAlignment.BottomLeft: + minimapTopLeftX = minimapConfig.TileMatrixSet.Origin.x; + minimapTopLeftY = minimapConfig.TileMatrixSet.Origin.y + mapSizeInMeters; + break; + default: + minimapTopLeftX = minimapConfig.TileMatrixSet.Origin.x; + minimapTopLeftY = minimapConfig.TileMatrixSet.Origin.y; + break; + } + } + + public void ClickedMap(PointerEventData eventData) + { + //The point we clicked on the map in local coordinates + Vector3 localClickPosition = transform.InverseTransformPoint(eventData.position); + + //Distance in meters from top left corner of this map + var meterX = localClickPosition.x * startMeterInPixels; + var meterY = localClickPosition.y * startMeterInPixels; + + var RDcoordinate = CoordConvert.RDtoUnity(new Vector3RD + { + x = (float)Config.activeConfiguration.BottomLeftRD.x + meterX, + y = (float)Config.activeConfiguration.TopRightRD.y + meterY, + z = 0.0 + }); + RDcoordinate.y = CameraModeChanger.Instance.ActiveCamera.transform.position.y; + + print(RDcoordinate); + + CameraModeChanger.Instance.ActiveCamera.transform.position = RDcoordinate; + } + + /// + /// Position a RectTransform object on the map using RD coordinates + /// Handy if you want to place markers/location indicators on the minimap. + /// + /// RectTransform object to be placed + /// RD coordinate to place the object + public void PositionObjectOnMap(RectTransform targetObject, Vector3RD targetPosition) + { + var meterX = targetPosition.x - (float)Config.activeConfiguration.BottomLeftRD.x; + var meterY = targetPosition.y - (float)Config.activeConfiguration.TopRightRD.y; + + var pixelX = meterX / startMeterInPixels; + var pixelY = meterY / startMeterInPixels; + + targetObject.transform.localScale = Vector3.one / mapTransform.localScale.x; + targetObject.transform.localPosition = new Vector3((float)pixelX, (float)pixelY); + } + + /// + /// The zoomlevel of the viewer. Not to be confused with the map identifier. + /// The viewer starts at zoom level 0, our map identifier can start at a different identifier. + /// + /// The viewer zoomlevel + public void Zoomed(int viewerZoom) + { + tileSize = baseTileSize / Mathf.Pow(2, viewerZoom); + + layerIdentifier = startIdentifier + viewerZoom; + CalculateGridScaling(); + ActivateMapLayer(); + } + + private void CalculateGridScaling() + { + divide = Mathf.Pow(2, layerIdentifier); + tileSizeInMeters = mapSizeInMeters / divide; + + //The tile 0,0 its top left does not align with our region top left. So here we determine the offset. + layerTilesOffset = new Vector2( + ((float)Config.activeConfiguration.BottomLeftRD.x - (float)minimapTopLeftX) / (float)tileSizeInMeters, + ((float)minimapTopLeftY - (float)Config.activeConfiguration.TopRightRD.y) / (float)tileSizeInMeters + ); + + //Based on tile numbering type + tileOffsetX = Mathf.Floor(layerTilesOffset.x); + tileOffsetY = Mathf.Floor(layerTilesOffset.y); + + //Store the remaining value to offset layer + layerTilesOffset.x -= tileOffsetX; + layerTilesOffset.y -= tileOffsetY; + + //Calculate the amount of tiles needed for our app bounding box + boundsTilesX = Mathf.CeilToInt(boundsWidthInMeters / (float)tileSizeInMeters); + boundsTilesY = Mathf.CeilToInt(boundsHeightInMeters / (float)tileSizeInMeters); + } + + private void RemoveOtherLayers() + { + List mapTileKeys = new List(mapTileLayers.Keys); + foreach (int layerKey in mapTileKeys) + { + //Remove all layers behind top layer except the first, and the one right below our layer + if((layerKey < layerIdentifier-1 && layerKey != startIdentifier) || layerKey > layerIdentifier) + { + foreach(var tile in mapTileLayers[layerKey]) + { + Destroy(tile.Value.gameObject); + } + mapTileLayers.Remove(layerKey); + } + } + } + + private void Update() + { + Clamp(); + + //Continiously check if tiles of the active layer identifier should be loaded + ShowLayerTiles(mapTileLayers[layerIdentifier]); + MovePointer(); + } + + public void Clamp() + { + var maxPositionXInUnits = -(boundsWidthInMeters / startMeterInPixels) * transform.localScale.x; + var maxPositionYInUnits = (boundsHeightInMeters / startMeterInPixels) * transform.localScale.x; + + this.transform.localPosition = new Vector3( + Mathf.Clamp(this.transform.localPosition.x, maxPositionXInUnits + viewerTransform.sizeDelta.x, 0), + Mathf.Clamp(this.transform.localPosition.y, viewerTransform.sizeDelta.y, maxPositionYInUnits), + 0 + ); + } + + private void MovePointer() + { + pointer.SetAsLastSibling(); //Pointer is on top of map + + PositionObjectOnMap(pointer, CoordConvert.UnitytoRD(CameraModeChanger.Instance.ActiveCamera.transform.position)); + + if(CenterPointerInView) + { + this.transform.localPosition = -pointer.localPosition * mapTransform.localScale.x + (Vector3)viewerTransform.sizeDelta*0.5f; + } + } + + private void ActivateMapLayer() + { + RemoveOtherLayers(); + + Dictionary tileList; + if (!mapTileLayers.ContainsKey(layerIdentifier)) + { + tileList = new Dictionary(); + mapTileLayers.Add(layerIdentifier, tileList); + } + else + { + tileList = mapTileLayers[layerIdentifier]; + } + } + + private void ShowLayerTiles(Dictionary tileList) + { + for (int x = 0; x <= boundsTilesX; x++) + { + for (int y = 0; y <= boundsTilesY; y++) + { + Vector2 tileKey; + + //Tile position within this container + float xPosition = (x * tileSize) - (layerTilesOffset.x * tileSize); + float yPosition = -((y * tileSize) - (layerTilesOffset.y * tileSize)); + + //Origin alignment determines the way we count our grid + switch (minimapConfig.TileMatrixSet.minimapOriginAlignment) + { + case TileMatrixSet.OriginAlignment.BottomLeft: + tileKey = new Vector2(x + tileOffsetX, (float)(divide-1) - (y + tileOffsetY)); + break; + case TileMatrixSet.OriginAlignment.TopLeft: + default: + tileKey = new Vector2(x + tileOffsetX, y + tileOffsetY); + break; + } + + //Tile position to check if they are in viewer + float compareXPosition = xPosition * mapTransform.localScale.x + mapTransform.transform.localPosition.x; + float compareYPosition = yPosition * mapTransform.localScale.x + mapTransform.transform.localPosition.y; + + //Is this tile within the viewer rectangle? + bool xWithinView = (compareXPosition+baseTileSize > 0 && compareXPosition < viewerTransform.sizeDelta.x); + bool yWithinView = (compareYPosition > 0 && compareYPosition-baseTileSize < viewerTransform.sizeDelta.y); + + if (xWithinView && yWithinView) + { + if (!tileList.ContainsKey(tileKey)) + { + var newTileObject = new GameObject(); + var mapTile = newTileObject.AddComponent(); + mapTile.Initialize(this.transform, layerIdentifier, tileSize, xPosition, yPosition, tileKey, minimapConfig); + + tileList.Add(tileKey, mapTile); + } + } + else if (tileList.ContainsKey(tileKey)) + { + Destroy(tileList[tileKey].gameObject); + tileList.Remove(tileKey); + } + } + } + } + } +} diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS/WMTSMap.cs.meta b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS/WMTSMap.cs.meta new file mode 100644 index 000000000..676d546e7 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/Minimap/WMTS/WMTSMap.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9f42c0a0748e7bf46a20acc6b3a11d65 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/PerspectiveSwitch.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/PerspectiveSwitch.cs new file mode 100644 index 000000000..eaf712871 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/PerspectiveSwitch.cs @@ -0,0 +1,33 @@ +using Netherlands3D.Cameras; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.UI; + +public class PerspectiveSwitch : MonoBehaviour +{ + [SerializeField] + private Image perspectiveIcon, ortographicIcon; + + void Start(){ + CameraModeChanger.Instance.OnGodViewModeEvent += EnableObject; + CameraModeChanger.Instance.OnFirstPersonModeEvent += DisableObject; + } + + private void EnableObject() + { + gameObject.SetActive(true); + } + private void DisableObject() + { + gameObject.SetActive(false); + } + + public void ToggleCameraPerspective() + { + bool cameraIsPerspective = CameraModeChanger.Instance.TogglePerspective(); + + perspectiveIcon.gameObject.SetActive(!cameraIsPerspective); + ortographicIcon.gameObject.SetActive(cameraIsPerspective); + } +} diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/PerspectiveSwitch.cs.meta b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/PerspectiveSwitch.cs.meta new file mode 100644 index 000000000..5c1d962be --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Interface/PerspectiveSwitch.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8392e72a471d50a4c97f1f81c607cff0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/LayerSystem/TileHandler.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/LayerSystem/TileHandler.cs index d7ad4ffb3..cab1ac951 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/LayerSystem/TileHandler.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/LayerSystem/TileHandler.cs @@ -221,13 +221,12 @@ public void TileRemoved(TileChange handledTileChange) /// private Vector4 GetViewRange(ICameraExtents cameraExtents) { - var bottomLeft = CoordConvert.WGS84toRD(cameraExtents.GetExtent().MinX, cameraExtents.GetExtent().MinY); - var topRight = CoordConvert.WGS84toRD(cameraExtents.GetExtent().MaxX, cameraExtents.GetExtent().MaxY); + Extent extent = cameraExtents.GetExtent(); Vector4 viewRange = new Vector4(); - viewRange.x = (float)bottomLeft.x; - viewRange.y = (float)bottomLeft.y; - viewRange.z = (float)(topRight.x - bottomLeft.x); - viewRange.w = (float)(topRight.y - bottomLeft.y); + viewRange.x = (float)extent.MinX; + viewRange.y = (float)extent.MinY; + viewRange.z = (float)(extent.MaxX - extent.MinX); + viewRange.w = (float)(extent.MaxY - extent.MinY); return viewRange; } diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Masking/MaskDome.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Masking/MaskDome.cs index 4ba6776a0..08a6016b5 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Masking/MaskDome.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Masking/MaskDome.cs @@ -49,7 +49,7 @@ private void MoveWithPointer() } transform.position = CameraModeChanger.Instance.CurrentCameraControls.GetMousePositionInWorld(); - transform.transform.localScale = Vector3.one * runtimeMask.MaskScaleMultiplier * CameraModeChanger.Instance.ActiveCamera.transform.position.y; + transform.transform.localScale = Vector3.one * runtimeMask.MaskScaleMultiplier * CameraModeChanger.Instance.CurrentCameraControls.GetCameraHeight(); } } } \ No newline at end of file diff --git a/3DAmsterdam/Assets/Netherlands3D/Scripts/Settings/ApplicationSettings.cs b/3DAmsterdam/Assets/Netherlands3D/Scripts/Settings/ApplicationSettings.cs index 52002e14c..5ee751c06 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Scripts/Settings/ApplicationSettings.cs +++ b/3DAmsterdam/Assets/Netherlands3D/Scripts/Settings/ApplicationSettings.cs @@ -25,7 +25,7 @@ public class ApplicationSettings : MonoBehaviour private InterfaceLayers interfaceLayers; [SerializeField] - private Map minimap; + private MapViewer minimap; [SerializeField] private Fps fpsCounter; @@ -177,10 +177,7 @@ public void ApplySettings() fpsCounter.ToggleVisualFPS(settings.drawFPS); - if (Config.activeConfiguration.EnableMinimap) - { - minimap.gameObject.SetActive(settings.drawMap); - } + minimap.gameObject.SetActive(settings.drawMap); ToggleActiveEvent.Raise(settings.showExperimentelFeatures); diff --git a/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Ortographic.png b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Ortographic.png new file mode 100644 index 000000000..06e6c4707 Binary files /dev/null and b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Ortographic.png differ diff --git a/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Ortographic.png.meta b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Ortographic.png.meta new file mode 100644 index 000000000..8c5f4c350 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Ortographic.png.meta @@ -0,0 +1,132 @@ +fileFormatVersion: 2 +guid: 89d28db6db8c5fd4696b10b6a39a4c0f +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Perspective.png b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Perspective.png new file mode 100644 index 000000000..31666639d Binary files /dev/null and b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Perspective.png differ diff --git a/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Perspective.png.meta b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Perspective.png.meta new file mode 100644 index 000000000..b8ae6b025 --- /dev/null +++ b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/Icons/Icon_Perspective.png.meta @@ -0,0 +1,132 @@ +fileFormatVersion: 2 +guid: 9bd63813fd73bba41b7b1db1aef6ead5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/3DAmsterdam/Assets/Netherlands3D/Textures/UI/UIAtlas.spriteatlas b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/UIAtlas.spriteatlas index 98e518495..d5056a34e 100644 --- a/3DAmsterdam/Assets/Netherlands3D/Textures/UI/UIAtlas.spriteatlas +++ b/3DAmsterdam/Assets/Netherlands3D/Textures/UI/UIAtlas.spriteatlas @@ -32,7 +32,7 @@ SpriteAtlas: variantMultiplier: 1 packables: - {fileID: 102900000, guid: 32fe519f385dbf2489dbd2e5e87a9563, type: 3} - totalSpriteSurfaceArea: 190393 + totalSpriteSurfaceArea: 198585 bindAsDefault: 1 isAtlasV2: 0 cachedData: {fileID: 0} @@ -54,6 +54,7 @@ SpriteAtlas: - {fileID: 21300000, guid: 9b5d8cd2f438d654b8a3a8e38e038322, type: 3} - {fileID: 21300000, guid: b6ae0ee2278413b4f9693aaef97366aa, type: 3} - {fileID: 21300000, guid: e1ff41f279d669247981c5ccfb073e1b, type: 3} + - {fileID: 21300000, guid: 9bd63813fd73bba41b7b1db1aef6ead5, type: 3} - {fileID: 21300000, guid: 63b6b0636900ca942b96fd6f94643cb2, type: 3} - {fileID: 21300000, guid: d6beee735c7d06645bd3ff987b12bd48, type: 3} - {fileID: 21300000, guid: 2652d8149d482e2489b642049815b9c7, type: 3} @@ -69,6 +70,7 @@ SpriteAtlas: - {fileID: 21300000, guid: a4403a95fcadff846bfc11a3d3295390, type: 3} - {fileID: 21300000, guid: 282de9d52b878d4488b9a8fbdb890aee, type: 3} - {fileID: 21300000, guid: 1772942681d606140b352c19a544650c, type: 3} + - {fileID: 21300000, guid: 89d28db6db8c5fd4696b10b6a39a4c0f, type: 3} - {fileID: 21300000, guid: 67cfd04716ac34d43a9af111a9c9c47b, type: 3} - {fileID: 21300000, guid: fce9f047552e6dd4f95599fc698a4560, type: 3} - {fileID: 21300000, guid: 58d609b78c854cd41a93f9ba61a98444, type: 3} @@ -119,6 +121,7 @@ SpriteAtlas: - Icon_Search - Icon_Annotation - Icon_Ruler + - Icon_Perspective - Icon_Transformables - ServerWarning - city-car @@ -134,6 +137,7 @@ SpriteAtlas: - intensitySlider - csv-file-white64 - Field + - Icon_Ortographic - TabField_Unactive - city-car_1 - LocationPointer diff --git a/3DAmsterdam/ProjectSettings/ProjectSettings.asset b/3DAmsterdam/ProjectSettings/ProjectSettings.asset index 0ca1139ce..435ad4a84 100644 --- a/3DAmsterdam/ProjectSettings/ProjectSettings.asset +++ b/3DAmsterdam/ProjectSettings/ProjectSettings.asset @@ -127,7 +127,7 @@ PlayerSettings: 16:10: 1 16:9: 1 Others: 1 - bundleVersion: 2.6.2 + bundleVersion: 2.7.0 preloadedAssets: - {fileID: 11400000, guid: d5f272a8231831941994b3ff3281aa1d, type: 2} metroInputSource: 0 diff --git a/3DAmsterdam/UserSettings/EditorUserSettings.asset b/3DAmsterdam/UserSettings/EditorUserSettings.asset index e0d21dc08..74680203f 100644 --- a/3DAmsterdam/UserSettings/EditorUserSettings.asset +++ b/3DAmsterdam/UserSettings/EditorUserSettings.asset @@ -12,16 +12,25 @@ EditorUserSettings: value: 2242470311464608292f013104264d14171a57192f2d28353e663932f6e1133dece224e8f33330327625ea32012c002bf7281c02fa0f0305163af40214ec36011ec83fc015e22c33e55709c0c409c8 flags: 0 RecentlyUsedScenePath-2: - value: 2242470311464608292f013104264d14171a57192f2d28353e663932f6e1133dece224e8f33330327625ea32012c002bf7281c02fa0f0305163af40214ec36011ec837e730860a12c20d05 + value: 2242470311464608292f013104264d14171a57192f2d28353e663932f6e1133dece224e8f33330327625ea32012c002bf73e0c19e40a03052507f10b02b1051d18d101 flags: 0 RecentlyUsedScenePath-3: - value: 2242470311464608292f013104264d14171a57192f2d28353e663932f6e1133dece224e8f33330327625ea32012c002bf73e0c19e40a03052507f10b02b1051d18d101 + value: 2242470311464608292f013104264d14171a57192f2d28353e663932f6e1133dece224e8f33330327625ea32012c002bf7281c02fa0f0305163af40214ec36011ec837e730860a12c20d05 flags: 0 RecentlyUsedScenePath-4: + value: 2242470311464608292f013104264d14171a57192f2d28353e663932f6e1133dece224e8f33330327636ea2f100a0833f719471ef8021e12 + flags: 0 + RecentlyUsedScenePath-5: value: 2242470311464608292f013104264d14171a57192f2d28353e664e17c3ed272ce7f532e8ea742a323016f6 flags: 0 + UnityEditor.ShaderGraph.Blackboard: + value: 18135939215a0a5004000b0e15254b524c030a3f2964643d120d1230e9e93a3fd6e826abbd3c3e302a07a37e0901373ae01e0008f707250d171df81a53a5445d41895ac825e0100ec20313c0d91cddccd3d0c7efcca9bd80908fecb0f9cfddf1eff4e7a1b1eae482f0fdaee1e1928b86d888ed909c968797a7cf + flags: 0 UnityEditor.ShaderGraph.FloatingWindowsLayout2: - value: 181344140043005e1a220d3b1f364b524c0c5a27130c293326201334cee5322ca0bd30e8eb293a707b0fd0180b3d0a36fc0d3d04e649500d1002ee0b5dbd1d2c27c00ad113cb1e10e41f1addc80993b9859884a69ae6d8f0d1cda9e8fbfefaf9f9dea3fdb9ade882f0ffb0e1e380cafbf2c3adc18e9cd285a2908b87ee819c8395949c9483d38b8d97ddbd90eed2a5a892a2af949aa48bafb19f85bd75a7ed3a7d25658598b7b58bb4b76aaf777690ca2863946c72c6cd81b6b6708f9f879f88769589d91c8f888e64d20f935e796571755c6b546677696a486c781c073c6f23696429450074652134203e56454c514e4352305f78621d07746f0243326d645d4b5f450e471441155071767740736e6130644f727d47667b34007c5f3fe12420e62304f4e023e03efadde518f54165ebb4efba505858565e5d45bf0a809a4048928946d4da + value: 181344140043005e1a220d3b1f364b524c0c5a27130c293326201334cee5322ca0bd30e8eb293a707b0fd0180b3d0a36fc0d3d04e649500d1002ee0b5dbd1d2c27c00ad113cb1e10e41f1addc80993b9859884a69ae6d8f0d1cda9e8fbfefaf9f9dea3fdb9ade882f0ffb0e1e380cafbf2c3adc18e9cd285a2908b87ee819c8395949c9483d38b8d97ddbd90bf + flags: 0 + UnityEditor.ShaderGraph.InspectorWindow: + value: 18135939215a0a5004000b0e15254b524c1119263f2d6a722016393ce1eb3d36e5d339f9a5602b2e2c07a37e0901373ae01e0008f707250d171df81a53a5485d41895ac825e0100ec20313c0d91cddccd3d0c7efcca9bd80908fecb0f9cfddf1eff4e7a1b1eae482f0fcaee1e1928b86d888ed969b938797a7cf flags: 0 vcSharedLogLevel: value: 0d5e400f0650