代码
using UnityEngine;
using UnityEngine.Rendering;
public class SkipToScreen
{
//在显示启动画面之前
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSplashScreen)]
private static void BeforeSplashScreen()
{
#if UNITY_WEBGL
Application.focusChanged += Application_focusToChanged;
#else
System.Threading.Tasks.Task.Run(AsyncToSkip);
#endif
}
#if UNITY_WEBGL
private static void Application_focusToChanged(bool obj)
{
Application.focusChanged -= Application_focusToChanged;
SplashScreen.Stop(SplashScreen.StopBehavior.StopImmediate);
}
#else
private static void AsyncToSkip()
{
//停止画面渲染
SplashScreen.Stop(SplashScreen.StopBehavior.StopImmediate);
}
#endif
}
效果
注意
- 将此脚本放到除了Editor以外的位置
- 适合于小项目,庞大的项目会有几秒的黑屏空档,体验会差些。
最后
不知道要走多远的路你才能成功,但保持热情有一天你会成为顶尖的开发者!
这里是井队,天高任鸟飞,海阔凭鱼跃,点个关注不迷路,我们下期再见。