推动Config新增

This commit is contained in:
2025-12-16 17:54:51 +08:00
parent 39a051eacf
commit 60df9a93aa
21 changed files with 427 additions and 117 deletions

View File

@@ -7,9 +7,58 @@ using Cinemachine;
using Convention.WindowsUI.Variant;
using UnityEngine;
using Demo.Game.Attr;
using System.IO;
using Convention;
namespace Demo.Game
{
namespace ConfigType
{
public class CameraObjectConfig : ScriptLoadableConfig
{
public bool orthographic;
public float fieldOfView;
public float orthographicSize;
public float nearClipPlane;
public float farClipPlane;
public float depth;
public int VirtualCameraFollow;
public int VirtualCameraLookAt;
public Vector3 VirtualCameraFollowOffset;
public Vector3 VirtualCameraLookAtDamping;
public override void Deserialize(BinaryReader reader)
{
orthographic = BinarySerializeUtility.ReadBool(reader);
fieldOfView = BinarySerializeUtility.ReadFloat(reader);
orthographicSize = BinarySerializeUtility.ReadFloat(reader);
nearClipPlane = BinarySerializeUtility.ReadFloat(reader);
farClipPlane = BinarySerializeUtility.ReadFloat(reader);
depth = BinarySerializeUtility.ReadFloat(reader);
VirtualCameraFollow = BinarySerializeUtility.ReadInt(reader);
VirtualCameraLookAt = BinarySerializeUtility.ReadInt(reader);
VirtualCameraFollowOffset = BinarySerializeUtility.ReadVec3(reader);
VirtualCameraLookAtDamping = BinarySerializeUtility.ReadVec3(reader);
base.Deserialize(reader);
}
public override void Serialize(BinaryWriter writer)
{
BinarySerializeUtility.WriteBool(writer, orthographic);
BinarySerializeUtility.WriteFloat(writer, fieldOfView);
BinarySerializeUtility.WriteFloat(writer, orthographicSize);
BinarySerializeUtility.WriteFloat(writer, nearClipPlane);
BinarySerializeUtility.WriteFloat(writer, farClipPlane);
BinarySerializeUtility.WriteFloat(writer, depth);
BinarySerializeUtility.WriteInt(writer, VirtualCameraFollow);
BinarySerializeUtility.WriteInt(writer,VirtualCameraLookAt);
BinarySerializeUtility.WriteVec3(writer, VirtualCameraFollowOffset);
BinarySerializeUtility.WriteVec3(writer, VirtualCameraLookAtDamping);
base.Serialize(writer);
}
}
}
[Scriptable(nameof(MakeCameraObject))]
public class CameraObject : ScriptableObject
{