【小工具】 Unity相机宽度适配

相机默认是根据高度适配的,但是在部分游戏中需要根据宽度进行适配

实现步骤

  • 定义标准屏幕宽、高
  • 判断标准屏幕宽高比与当前的是否相等
  • 通过**(标准宽度/当前宽度)= (标准高度 / 当前高度)**计算缩放
  • 调整相机fieldOfView即可

实现代码

csharp 复制代码
public class CameraAdjust : MonoBehaviour
    {
        [SerializeField] private int ManualWidth = 1080;
        [SerializeField] private int ManualHeight = 1920;

        private void Start()
        {
            float heigtht;
            if (Screen.height * 1f / Screen.width > ManualHeight * 1f / ManualWidth)
            {
                heigtht = ManualWidth * 1f / Screen.width * Screen.height;
            }
            else
            {
                heigtht = ManualHeight;
            }

            GetComponent<Camera>().fieldOfView *= heigtht / ManualHeight;
        }
    }
相关推荐
SmalBox2 小时前
【光照】Unity中的[光照模型]概念辨析
unity·渲染
挂科是不可能出现的2 小时前
unity导入blender动画
unity·游戏引擎·blender
派葛穆3 小时前
Unity-按钮实现场景跳转
java·unity·游戏引擎
程序猿多布5 小时前
XLua教程之Lua调用C#
unity·c#·lua·xlua
lrh302517 小时前
Custom SRP - Point and Spot Lights
unity·srp·render pipeline
绀目澄清17 小时前
unity UGUI 鼠标画线
unity·计算机外设·游戏引擎
Magnum Lehar18 小时前
3d wpf游戏引擎的导入文件功能c++的.h实现
3d·游戏引擎·wpf
作孽就得先起床18 小时前
unity pcd 二进制版 简单显示文件对象(单色)
unity·游戏引擎
SmalBox1 天前
【光照】Unity[经验模型]和[物理模型]
unity·渲染
在路上看风景1 天前
10. 游戏开发中的TCP与UDP
unity