修改编辑下相机报错

main
zhangaotian 2025-05-08 12:36:01 +08:00
parent 4ede122621
commit dbfb8f5be7
3 changed files with 8 additions and 5 deletions

View File

@ -122,7 +122,7 @@ public class CameraController : MonoBehaviour
targetZoomScale = ZoomScale;
targetPanPosition = transform.position;
var useOrthographic = CameraServiceLocator.CameraService.UseOrthographicMode;
var useOrthographic = Application.isPlaying && CameraServiceLocator.CameraService.UseOrthographicMode;
if (useOrthographic)
{
@ -362,8 +362,7 @@ public class CameraController : MonoBehaviour
public void InitializeCameraPosition(Vector3 targetPosition, MapData.CameraInfo cameraInfo = null)
{
var useOrthographic = CameraServiceLocator.CameraService.UseOrthographicMode;
var useOrthographic = Application.isPlaying && CameraServiceLocator.CameraService.UseOrthographicMode;
mainCamera.transform.position = CalculateCell2CameraPosition(targetPosition);
// 进入关卡初始化相机

View File

@ -72,7 +72,6 @@ public class ScenePostProcessor : PostProcessor
EditorSceneManager.CloseScene(scene, true);
}
DebugUtil.LogError($"克隆的Scene是{Scene.name}");
AssetDatabase.CopyAsset(Scene.path, OutputAssetPath);
AssetDatabase.Refresh();
ClonedScene = EditorSceneManager.OpenScene(OutputAssetPath, OpenSceneMode.Additive);

View File

@ -359,7 +359,12 @@ public static class MaterialUtils
// 如果是预制体实例,解包它
if (PrefabUtility.IsPartOfPrefabInstance(obj))
{
PrefabUtility.UnpackPrefabInstance(obj, PrefabUnpackMode.Completely, InteractionMode.AutomatedAction);
// 只有在对象是预制体根节点时才解包
GameObject prefabRoot = PrefabUtility.GetOutermostPrefabInstanceRoot(obj);
if (prefabRoot == obj)
{
PrefabUtility.UnpackPrefabInstance(obj, PrefabUnpackMode.Completely, InteractionMode.AutomatedAction);
}
}
}