UnityEditor下的Scene窗口如何用代码修改Persp模式的x、y、z
要通过代码修改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属性来应用更改。
原文地址: https://www.cveoy.top/t/topic/xVe 著作权归作者所有。请勿转载和采集!