这能叫例行更新吗

Signed-off-by: TRAfoer <lhf190@outlook.com>
This commit is contained in:
2026-02-09 23:10:55 +08:00
parent 77726bcb6c
commit a76f650998
40 changed files with 1323 additions and 866 deletions

View File

@@ -19,24 +19,40 @@ namespace Ichni.Editor
public BaseElement_BM matchedBM { get; set; }
[HideInInspector]
public Vector3 cameraPosition; //注意这里的Position和EulerAngles是transform的中介变量仅能用于Inspector显示
public Vector3 cameraPosition
{
get => sceneCamera.transform.position;
set
{
sceneCamera.transform.position = value;
}
}
[HideInInspector]
public Vector3 cameraEulerAngles;
public Vector3 cameraEulerAngles
{
get => sceneCamera.transform.eulerAngles;
set
{
sceneCamera.transform.eulerAngles = value;
}
}
public bool CanBeFreeRotate => EditorManager.instance.cameraManager.panelDrawer.isEditing;
public void SetUpInspector()
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Scene Camera");
//摄像机参数设置
var cameraSettings = container.GenerateSubcontainer(3);
var viewTypeDropdown =
var viewTypeDropdown =
inspector.GenerateDropdown(this, cameraSettings, "View Type", typeof(GameCamera.CameraViewType), nameof(viewType))
.AddListenerFunction(() => sceneCamera.orthographic = viewType == GameCamera.CameraViewType.Orthographic);
var perspectiveAngleField =
var perspectiveAngleField =
inspector.GenerateInputField(this, cameraSettings, "Perspective Angle", nameof(perspectiveAngle))
.AddListenerFunction(() => sceneCamera.fieldOfView = perspectiveAngle);
var orthographicSizeField =
var orthographicSizeField =
inspector.GenerateInputField(this, cameraSettings, "Orthographic Size", nameof(orthographicSize))
.AddListenerFunction(() => sceneCamera.orthographicSize = orthographicSize);
@@ -45,7 +61,7 @@ namespace Ichni.Editor
var positionInputFields =
inspector.GenerateVector3InputField(this, transformSettings, "Position", nameof(cameraPosition), true)
.AddListenerFunction(() => sceneCamera.transform.position = cameraPosition);
var eulerAnglesInputFields =
var eulerAnglesInputFields =
inspector.GenerateVector3InputField(this, transformSettings, "Euler Angles", nameof(cameraEulerAngles), true)
.AddListenerFunction(() => sceneCamera.transform.eulerAngles = cameraEulerAngles);
}