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

Unity 2D地图在不同屏幕分辨率下显示不一致问题求助

解决2D塔防竞技游戏不同分辨率下视野公平问题

先看你的两张对比画面:
1920x1080(横屏)下的游戏画面
2960x1440(横屏)下的游戏画面

核心问题是不同宽高比的屏幕导致相机视野范围不一致,竞技游戏必须保证所有玩家看到的区域完全相同,这里给你两种新手友好的解决方法:

方法一:通过Player Settings快速固定视野(无需脚本)

这是最简单的方案,直接限制游戏的宽高比适配逻辑:

  1. 打开Unity菜单栏的Edit > Project Settings > Player,找到Resolution and Presentation板块。
  2. 在Aspect Ratio设置里,选择16:9(你的设计分辨率1920x1080的宽高比),把下方的Match选项设为1(Height)。
  3. 这样设置后,当玩家用宽于16:9的屏幕(比如2960x1440)运行游戏时,屏幕左右会自动填充黑边,相机只会显示16:9范围内的内容,不会泄露额外地图区域。

方法二:用脚本灵活控制相机边界(适合需要自定义适配的场景)

如果不想用黑边,希望尽可能利用屏幕空间但又不显示额外区域,可以写个简单脚本固定相机的左右边界:

using UnityEngine;

public class CameraBounds : MonoBehaviour
{
    // 根据你的地图实际范围修改这两个值(示例对应1920x1080正交相机的左右边界)
    public float leftBound = -9.6f;
    public float rightBound = 9.6f;

    private Camera mainCamera;
    private int lastScreenWidth;
    private int lastScreenHeight;

    void Start()
    {
        mainCamera = GetComponent<Camera>();
        lastScreenWidth = Screen.width;
        lastScreenHeight = Screen.height;
        AdjustCameraView();
    }

    void Update()
    {
        // 仅在分辨率变化时调整,避免重复计算
        if (Screen.width != lastScreenWidth || Screen.height != lastScreenHeight)
        {
            lastScreenWidth = Screen.width;
            lastScreenHeight = Screen.height;
            AdjustCameraView();
        }
    }

    void AdjustCameraView()
    {
        // 计算当前相机的半宽度
        float currentHalfWidth = mainCamera.orthographicSize * mainCamera.aspect;
        // 设计分辨率下的半宽度
        float targetHalfWidth = (rightBound - leftBound) / 2f;

        // 如果当前半宽度超过目标值,缩小正交大小,保证视野不超出左右边界
        if (currentHalfWidth > targetHalfWidth)
        {
            mainCamera.orthographicSize = targetHalfWidth / mainCamera.aspect;
        }
    }
}

使用步骤:

  1. 把这个脚本拖到主相机对象上。
  2. 在Inspector面板里,根据你的地图实际可显示范围,修改leftBound和rightBound的值(比如1920x1080下正交相机大小为5.4时,半宽度是5.4*(16/9)=9.6,所以左右边界设为-9.6和9.6)。

这样无论屏幕宽高比如何变化,相机都只会显示你设定的左右边界内的区域,完全避免视野不公平的问题。

内容的提问来源于stack exchange,提问作者Zeruma

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 22:57:29