要通过代码修改UnityEditor下的Scene窗口中Persp模式的x、y、z,可以使用SceneView类中的静态属性cameraSettings。

例如,以下代码可以将Persp模式的x、y、z设置为10、10、10:

using UnityEditor;
using UnityEngine;

public class SceneViewSettings : EditorWindow
{
    [MenuItem("Window/SceneViewSettings")]
    static void Init()
    {
        SceneView.onSceneGUIDelegate += OnSceneGUI;
    }

    static void OnSceneGUI(SceneView sceneView)
    {
        SceneView.CameraSettings cameraSettings = sceneView.cameraSettings;
        cameraSettings.pivot = new Vector3(0, 0, 0);
        cameraSettings.rotation = Quaternion.identity;
        cameraSettings.size = 5f;
        cameraSettings.nearClip = 0.3f;
        cameraSettings.farClip = 1000f;
        cameraSettings.fieldOfView = 60f;
        cameraSettings.orthographic = false;
        cameraSettings.orthoSize = 5f;
        cameraSettings.renderingPath = RenderingPath.UsePlayerSettings;
        cameraSettings.hdr = true;
        cameraSettings.targetDisplay = 0;
        cameraSettings.clearFlags = CameraClearFlags.Skybox;
        cameraSettings.backgroundColor = Color.gray;
        cameraSettings.showImageEffects = false;
        cameraSettings.showSkybox = true;
        cameraSettings.showFlares = true;
        cameraSettings.renderMode = DrawCameraMode.Normal;
        cameraSettings.cameraType = CameraType.Perspective;
        cameraSettings.x = 10f;
        cameraSettings.y = 10f;
        cameraSettings.z = 10f;
        sceneView.cameraSettings = cameraSettings;
    }
}

在这个示例中,使用了SceneView.onSceneGUIDelegate事件来调用OnSceneGUI方法,该方法获取了当前场景视图的cameraSettings属性,并将其修改为所需的值。最后,通过将修改后的cameraSettings属性重新分配给场景视图的cameraSettings属性来应用更改。

UnityEditor下的Scene窗口如何用代码修改Persp模式的x、y、z

原文地址: https://www.cveoy.top/t/topic/xVe 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录