37 lines
973 B
C#
37 lines
973 B
C#
using UnityEngine;
|
|
using UnityEngine.Rendering.Universal;
|
|
|
|
namespace NBF.Setting
|
|
{
|
|
[Sort(5)]
|
|
public class RenderScaleSetting : RangeOptionFloat
|
|
{
|
|
public override string Name => "RenderScale";
|
|
public override string Group => SettingsDef.Group.Graphic;
|
|
|
|
public override float MinValue => 0.1f;
|
|
public override float MaxValue => 2f;
|
|
|
|
protected override void OnInitialize()
|
|
{
|
|
}
|
|
|
|
protected override void OnApply()
|
|
{
|
|
// 获取当前URP Asset
|
|
UniversalRenderPipelineAsset URPAsset =
|
|
QualitySettings.GetRenderPipelineAssetAt(QualitySettings.GetQualityLevel()) as
|
|
UniversalRenderPipelineAsset;
|
|
if (URPAsset)
|
|
{
|
|
//渲染比例
|
|
URPAsset.renderScale = GetValue();
|
|
}
|
|
}
|
|
|
|
protected override void OnReset()
|
|
{
|
|
SetValue(1);
|
|
}
|
|
}
|
|
} |