You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity中如何将Pixel Perfect Camera尺寸设置为5?

解决Unity Pixel Perfect Camera强制固定正交尺寸为5的方法

Pixel Perfect Camera会根据屏幕分辨率和Pixels per Unit自动计算适配的正交尺寸,这就是你手动设5但实际变成5.4的原因。以下是几种可行的解决办法:

方法一:调整Pixels Per Unit匹配目标尺寸

根据相机正交尺寸公式:相机高度(单位)= 屏幕高度像素 / (2 * Pixels per Unit),反过来推导,要固定高度为5,对应的Pixels per Unit应为:
1080 / (2 * 5) = 108

  • 将项目的Pixels per Unit统一设置为108(包括Sprite资源的导入设置)
  • 此时Pixel Perfect Camera计算出的尺寸正好是5,同时保持像素完美适配

方法二:修改Pixel Perfect Camera的适配设置

直接关闭自动尺寸计算,强制使用手动设置的值:

  • 选中挂载Pixel Perfect Camera的相机,在组件面板中找到Resolution Match选项
  • 将其改为Match Width Or Height,设置Match值为0(优先匹配宽度)或1(优先匹配高度)
  • 勾选Manual Orthographic Size,此时你设置的Size=5会被强制生效

注意:这种方式可能会让屏幕出现黑边或轻微拉伸,需要根据你的游戏画面需求权衡

方法三:通过代码强制锁定尺寸

如果需要保留原有Pixels per Unit和适配逻辑,同时强制锁定尺寸,可以用脚本实现:

using UnityEngine;
using UnityEngine.U2D;

public class LockCameraOrthographicSize : MonoBehaviour
{
    [SerializeField] private float targetSize = 5f;
    private PixelPerfectCamera _pixelCam;

    private void Awake()
    {
        _pixelCam = GetComponent<PixelPerfectCamera>();
        if (_pixelCam == null) return;
        
        _pixelCam.manualOrthographicSize = true;
        _pixelCam.orthographicSize = targetSize;
        _pixelCam.Refresh();
    }
}
  • 将该脚本挂载到相机对象上,即可强制锁定正交尺寸为5,同时保留像素对齐功能

内容的提问来源于stack exchange,提问作者Иван

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 08:46:07