57 lines
1.7 KiB
C#
57 lines
1.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public struct CameraSettingData : ICloneable{
|
|
public SettingValue<float> mainFieldOfView;
|
|
|
|
public SettingValue<Vector3> orbitPositionDamping;
|
|
public SettingValue<Vector3> orbitTargetOffset;
|
|
|
|
public SettingValue<bool> axisLookEnabledX;
|
|
public SettingValue<bool> axisLookEnabledY;
|
|
|
|
public SettingValue<float> axisLookGainX;
|
|
public SettingValue<float> axisLookGainY;
|
|
|
|
public SettingValue<float> orbitFollowTopHeight;
|
|
public SettingValue<float> orbitFollowTopRadius;
|
|
public SettingValue<float> orbitFollowCenterHeight;
|
|
public SettingValue<float> orbitFollowCenterRadius;
|
|
public SettingValue<float> orbitFollowBottomHeight;
|
|
public SettingValue<float> orbitFollowBottomRadius;
|
|
|
|
public SettingValue<Vector2> rotationComposerScreenPos;
|
|
|
|
public SettingValue<Vector3> cameraOffsetOffset;
|
|
|
|
public object Clone(){
|
|
return MemberwiseClone();
|
|
}
|
|
|
|
public List<IResettableSettingValue> GetAllSettings(){
|
|
var outputList = new List<IResettableSettingValue>();
|
|
|
|
IResettableSettingValue[] settings = new[]{
|
|
mainFieldOfView as IResettableSettingValue,
|
|
orbitPositionDamping,
|
|
orbitTargetOffset,
|
|
axisLookEnabledX,
|
|
axisLookEnabledY,
|
|
axisLookGainX,
|
|
axisLookGainY,
|
|
orbitFollowTopHeight,
|
|
orbitFollowTopRadius,
|
|
orbitFollowCenterHeight,
|
|
orbitFollowCenterRadius,
|
|
orbitFollowBottomHeight,
|
|
orbitFollowBottomRadius,
|
|
rotationComposerScreenPos,
|
|
cameraOffsetOffset,
|
|
};
|
|
|
|
outputList.AddRange(settings);
|
|
|
|
return outputList;
|
|
}
|
|
} |