From 95fd22f2d89d78d93d27c7ec9b841427ec851b9c Mon Sep 17 00:00:00 2001
From: pengjunwu <1263019465@qq.com>
Date: Wed, 17 Jan 2024 19:18:23 +0800
Subject: [PATCH] =?UTF-8?q?=E7=9B=B8=E6=9C=BA=E6=9C=BA=E4=BD=8D=E6=8E=A7?=
=?UTF-8?q?=E5=88=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Assets/Code/Scripts/Gameplay/Camera.meta | 8 ++++
.../{Map => Camera}/CameraController.cs | 0
.../{Map => Camera}/CameraController.cs.meta | 0
.../Scripts/Gameplay/Camera/CameraStand.cs | 44 +++++++++++++++++++
.../Gameplay/Camera/CameraStand.cs.meta | 11 +++++
5 files changed, 63 insertions(+)
create mode 100644 ProjectNLD/Assets/Code/Scripts/Gameplay/Camera.meta
rename ProjectNLD/Assets/Code/Scripts/Gameplay/{Map => Camera}/CameraController.cs (100%)
rename ProjectNLD/Assets/Code/Scripts/Gameplay/{Map => Camera}/CameraController.cs.meta (100%)
create mode 100644 ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs
create mode 100644 ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs.meta
diff --git a/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera.meta b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera.meta
new file mode 100644
index 00000000000..e8b3a5a684a
--- /dev/null
+++ b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 905277e7c44a6ed4bb97265276a54938
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/ProjectNLD/Assets/Code/Scripts/Gameplay/Map/CameraController.cs b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraController.cs
similarity index 100%
rename from ProjectNLD/Assets/Code/Scripts/Gameplay/Map/CameraController.cs
rename to ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraController.cs
diff --git a/ProjectNLD/Assets/Code/Scripts/Gameplay/Map/CameraController.cs.meta b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraController.cs.meta
similarity index 100%
rename from ProjectNLD/Assets/Code/Scripts/Gameplay/Map/CameraController.cs.meta
rename to ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraController.cs.meta
diff --git a/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs
new file mode 100644
index 00000000000..dee15aacd51
--- /dev/null
+++ b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs
@@ -0,0 +1,44 @@
+using System.Collections;
+using System.Collections.Generic;
+using Gameplay;
+using PhxhSDK;
+using Sirenix.OdinInspector;
+using UnityEngine;
+
+///
+/// 记录一个相机的机位
+///
+public class CameraStand : MonoBehaviour
+{
+ [LabelText("是否正交")]
+ [SerializeField]
+ private bool _isOrthographic;
+
+ [ShowIf("isOrthographic")]
+ [LabelText("正交size")]
+ [SerializeField]
+ private float _size;
+
+ [HideIf("isOrthographic")]
+ [LabelText("FOV")]
+ [SerializeField]
+ private float _fov;
+
+ private Camera DefaultCamera => CommonUtils.GetSceneRootComponent(gameObject.scene) ?? Camera.main;
+
+ [Button("测试机位")]
+ private void TestStand()
+ {
+ Apply();
+ }
+
+ public void Apply(Camera targetCamera = null)
+ {
+ targetCamera = targetCamera ? targetCamera : DefaultCamera;
+ var trans = transform;
+ targetCamera.transform.SetPositionAndRotation(trans.position, trans.rotation);
+ targetCamera.orthographic = _isOrthographic;
+ targetCamera.orthographicSize = _size > 0 ? _size : targetCamera.orthographicSize;
+ targetCamera.fieldOfView = _fov > 0 ? _fov : targetCamera.fieldOfView;
+ }
+}
\ No newline at end of file
diff --git a/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs.meta b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs.meta
new file mode 100644
index 00000000000..75db321bc6a
--- /dev/null
+++ b/ProjectNLD/Assets/Code/Scripts/Gameplay/Camera/CameraStand.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4f06003f27e2f0046bc4ef474712ceea
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: