网上演练贵港万达广场(人员密集)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

50 lines
1.4 KiB

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class UICameraScale : MonoBehaviour
{
public float standard_width; //初始宽度
public float standard_height; //初始高度
private float ScreenWith; //当前设备宽度
private float ScreenHeight; //当前设备高度
void Start()
{
AutoScale();
}
private void AutoScale()
{
Debug.Log(Screen.currentResolution);
//屏幕矫正比例
float adjustor = 0f;
//获取设备宽高
ScreenWith = Screen.width;
ScreenHeight = Screen.height;
//计算宽高比例
float standard_aspect = standard_width / standard_height;
float device_aspect = ScreenWith / ScreenHeight;
//计算矫正比例
if (device_aspect < standard_aspect)
{
adjustor = standard_aspect / device_aspect;
}
CanvasScaler canvasScalerTemp = GetComponent<CanvasScaler>();
if (adjustor == 0)
{
canvasScalerTemp.matchWidthOrHeight = 1;
}
else
{
canvasScalerTemp.matchWidthOrHeight = 0;
}
}
void Update()
{
if (ScreenWith != Screen.width || ScreenHeight != Screen.height)
{
AutoScale();
}
}
}