【问题标题】:In Unity Android build, the black background flash blue light when make the game inactive then awake it在Unity Android build中,当游戏处于非活动状态然后唤醒它时,黑色背景会闪烁蓝光
【发布时间】:2026-01-29 08:00:01
【问题描述】:

为了适应不同的屏幕分辨率,我在下面添加了代码以在屏幕分辨率不同时添加黑边。当我在android中打开游戏时它工作正常。但是当我睡着手机,或者切换到另一个应用程序并切换回来时,黑色的一面开始闪烁蓝色。任何建议可能是什么原因?或者有没有更好的方法来修复屏幕分辨率?谢谢!

private void Awake()
{
    FitCamera(Camera.main);
}

public void FitCamera(Camera camera)
{
    if (DevelopRate <= ScreenRate)
    {
        camera.rect = new Rect(0, (1 - cameraRectHeightRate) / 2, 1, cameraRectHeightRate);
    }
    else
    {
        camera.rect = new Rect((1 - cameraRectWidthRate) / 2, 0, cameraRectWidthRate, 1);
    }
}

【问题讨论】:

    标签: android unity3d


    【解决方案1】:

    尝试将此脚本附加到您的相机,它会在渲染前清除整个屏幕。

    public class ClearScreen : MonoBehaviour
    {
        void OnPreRender()
        {
            GL.Clear(true, true, Color.black);
        }
    }
    

    【讨论】: