Unity 2D相机自适应

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//Orthographic 屏幕 
//Scale 比例尺
//Rate 比率
public class Script_06_01 : MonoBehaviour
{
    public new Camera camera;

    // Update is called once per frame
    void Update()
    {
        float designWidth = 1136f;//开发中分辨率的宽度
        float designHeight = 640f;//开发中分辨率的高度
        float designOrthographicSize = 3.2f;//开发时正交摄像机的大小,3.2*100*2=640;×100是因为Unity中的pixels per unit是100,×2是因为想设置成屏幕的一半
        float designScale = designWidth / designHeight;
        float scaleRate = (float)Screen.width / (float)Screen.height;
        if(scaleRate < designScale)//判断我们设计的比例跟实际比例是否一致,若我们设置的大则进入自适应设置,小的话他会自动自适应
        {
            float scale = scaleRate / designScale;
            camera.orthographicSize = 3.2f / scale;
        }
        else
        {
            camera.orthographicSize = 3.2f;
        }
    }
    private void OnGUI()
    {
        GUILayout.Label(string.Format("<size=60><color=red>{0}X{1}</color></size>", Screen.width, Screen.height));
    }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值