调整Bloom
This commit is contained in:
@@ -57,16 +57,23 @@ namespace Ichni.RhythmGame
|
||||
gameCamera.orthographicSize = orthographicSize;
|
||||
gameCamera.cameraTransform = gameCamera.transform;
|
||||
|
||||
float ratioDifference = UIManager.GetScreenRatio() - UIManager.StandardRatio;
|
||||
if (ratioDifference > 0)
|
||||
float currentAspect = UIManager.GetScreenRatio();
|
||||
float targetAspect = UIManager.StandardRatio;
|
||||
|
||||
if (currentAspect < targetAspect)
|
||||
{
|
||||
//gameCamera.perspectiveOffset = 12.5f * ratioDifference;
|
||||
// 屏幕比较方 (如 4:3 平板),需要增加垂直 FOV 以保持 16:9 标准下的水平绝对视野
|
||||
float hFovRad = 2.0f * Mathf.Atan(Mathf.Tan(perspectiveAngle * Mathf.Deg2Rad / 2.0f) * targetAspect);
|
||||
float newVFovRad = 2.0f * Mathf.Atan(Mathf.Tan(hFovRad / 2.0f) / currentAspect);
|
||||
|
||||
// 设置 perspectiveOffset 以完美补足被裁切的空间
|
||||
gameCamera.perspectiveOffset = (newVFovRad * Mathf.Rad2Deg) - perspectiveAngle;
|
||||
}
|
||||
else
|
||||
{
|
||||
gameCamera.perspectiveOffset = -25f * ratioDifference;
|
||||
// 屏幕比较长 (如 20:9 手机),维持原有垂直 FOV,左右延展屏幕用于渲染环境背景
|
||||
gameCamera.perspectiveOffset = 0f;
|
||||
}
|
||||
|
||||
gameCamera.RefreshFOV();
|
||||
return gameCamera;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user