当前位置:网站首页>Unity3D Application模拟进入前后台及暂停
Unity3D Application模拟进入前后台及暂停
2022-07-30 04:09:00 【WenHuiJun_】
前言
在某些时候,unity程序进入后台运行,我们需要它暂停或关闭一些功能,例如当前正在播放的动画、视频、声音等等之类的,在下次回到unity程序时再接着运行。
这里我们需要用到两个unity的回调函数OnApplicationForcus和OnApplicationPause,使用SendMessage方法发指令,模拟后台运行跟结束后台运行,自动调用OnApplicationForcus和OnApplicationPause方法。
Unity3D Windows版本若要关闭后台运行,可在PlayerSetting中,取消Run In Background即可。
下面转载于:https://blog.csdn.net/aa4790139/article/details/48087877
正常进:
OnApplicationFocus, isFocus=True
正常退:
OnApplicationQuit
Home出:OnApplicationPause, isPause=True
OnApplicationFocus, isFocus=False
Home进:
OnApplicationPause, isPause=False
OnApplicationFocus, _isFocus=TrueKill进程:
当前应用双击Home,然后Kill:
OnApplicationQuit (IOS 有回调,android 没回调)
跳出当前应用,然后Kill:
OnApplicationQuit (IOS和Android都没回调)
下面转载于:https://www.jianshu.com/p/cfa0263ea1b9
最简单的暂停游戏的方式
Time.timeScale = 0;
当想继续游戏时
Time.timeScale = 1;
注意
当TimeScale被设置为0时,
- Update方法仍然会被调用
- FixedUpdate方法不会被调用
- Time.time不会继续增加
- Time.deltaTime会被影响
若不想受TimeScale影响
Time.unscaledDeltaTime 替换 Time.deltaTime
Time.fixedUnscaledDeltaTime 替换 Time.fixedDeltaTime
Time.unscaledTime 替换 Time.time协程
用Time.unscaledDeltaTime 替换 Time.deltaTime
用WaitForSecondsRealtime 替换 WaitForSeconds动画控制器
CullingMode设置为UnscaledTime
如何暂停音频播放
AudioListener.pause = true;
当结束暂停时
AudioListener.pause = false;
如果想在暂停时继续播放某些音效该咋办?
AudioSource.ignoreListenerPause = true;
模拟代码片段:
void Update()
{
if (Input.GetKeyDown(KeyCode.A))
SendMessageTest(true);
else if (Input.GetKeyDown(KeyCode.S))
SendMessageTest(false);
}
private void OnApplicationForcus(bool isForcus)
{
if (isForcus)
{
Debug.Log("isForcus:true");
}
else
{
Debug.Log("isForcus:false");
}
}
private void OnApplicationPause(bool isPause)
{
if (isPause)
{
Debug.Log("isPause:true");
Time.timeScale = 0;
AudioListener.pause = true;
}
else
{
Debug.Log("isPause:false");
Time.timeScale = 1;
AudioListener.pause = false;
}
}
void SendPause(bool isPause)
{
transform.SendMessage("OnApplicationPause", isPause, SendMessageOptions.DontRequireReceiver);
}
void SendForcus(bool isForcus)
{
transform.SendMessage("OnApplicationForcus", isForcus, SendMessageOptions.DontRequireReceiver);
}
public void SendMessageTest(bool pause)
{
if (pause)
{
SendPause(true);
SendForcus(false);
}
else
{
SendPause(false);
SendForcus(true);
}
}
边栏推荐
- 第51篇-知乎请求头参数分析【2022-07-28】
- Send it to your friends and let TA treat you to fried chicken!
- sublime text 3 settings
- Atomic Guarantees of Redis Distributed Locks
- redis分布式锁的原子保证
- WeChat second-hand transaction small program graduation design finished works (8) graduation design thesis template
- 小程序毕设作品之微信积分商城小程序毕业设计成品(5)任务书
- Roperties类配置文件&DOS查看主机网络情况
- How to compare struct, slice, map for equality and the difference between several comparison methods in golang
- Mini Program Graduation Works WeChat Points Mall Mini Program Graduation Design Finished Work (7) Interim Inspection Report
猜你喜欢
数组和结构体
Eureka Registry
spicy (1) basic definition
Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Works (7) Interim Inspection Report
ospf map
Mini Program Graduation Works WeChat Points Mall Mini Program Graduation Design Finished Product (2) Mini Program Function
Redis "super explanation!!!!!!"
第51篇-知乎请求头参数分析【2022-07-28】
[Node accesses MongoDB database]
How does the AI intelligent security video platform EasyCVR configure the simultaneous transmission of audio and video?
随机推荐
Problems caused by List getting the difference
sublime text 3 settings
spicy (two) unit hooks
骁龙7系芯片表现如何?Reno8 Pro佐证新一代神U
Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Works (7) Interim Inspection Report
Pytorch框架学习记录6——torch.nn.Module和torch.nn.functional.conv2d的使用
2022.7.29-----leetcode.593
redis分布式锁的原子保证
How to Effectively Conduct Retrospective Meetings (Part 1)?
Transformation of traditional projects
SQLSERVER merges subquery data into one field
ospf 导图
WeChat second-hand transaction small program graduation design finished works (8) graduation design thesis template
How does the Snapdragon 7 series chip perform?Reno8 Pro proves a new generation of God U
Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Work (2) Mini Program Function
Flutter records and learns different animations (1)
Mini Program Graduation Works WeChat Points Mall Mini Program Graduation Design Finished Products (6) Question Opening and Defense PPT
小程序毕设作品之微信积分商城小程序毕业设计成品(6)开题答辩PPT
Summary of Rpc and gRpc Introduction
ospf map