GameObject a; 

 GameObject.DontDestroyOnLoad(a);

源码,具体在案例中应用为:

第一段代码中定义了UserName,而方法中又有许多操作,如果在Update里加入上面的代码就会在影响下一个场景的操作,所以就必须封装一下,来解决这个问题!!!

 1 using System.Collections;
 2 using System.Collections.Generic;
 3 using UnityEngine;
 4 using UnityEngine.SceneManagement;
 5
 6 public class S0Script : MonoBehaviour {
 7
 8     //按下键盘q键,向持久化里面写入数据 张三,0
 9     //如果这个时候有张三这个key就代表已经有分数就不设置了 或里面的value不是0
10     // Use this for initialization
11
12     public string UserName;
13     void Awake()
14     {
15
16         UserName = "zhangsan";
17     }
18
19     // Update is called once per frame
20     void Update () {
21         if (Input.GetKeyDown(KeyCode.Q))
22         {
23             if (PlayerPrefs.HasKey("zhangsan"))
24             {
25                 Debug.LogWarning("已经注册,该操作不会重置分数");
26             }
27             else
28             {
29                 PlayerPrefs.SetInt("zhangsan",0);
30             }
31         }
32 //这里应用到了playerprefs,跟字典类似,是键值对组成的(key,value)key唯一,value不唯一


33         if (Input.GetKeyDown(KeyCode.Space))
34         {
35             //加载场景
36             //index string
37             SceneManager.LoadScene("S1");
38         }
39
40     }
41 }

 第二段代码:

public class S0UserInfo : MonoBehaviour {// Use this for initializationprivate string _username;
//此处封装了一下,是可读取的;public string Username{get { return _username; }}void Start (){_username = GameObject.Find("Manager").GetComponent<S0Script>().UserName;DontDestroyOnLoad(this);}// Update is called once per framevoid Update () {}
}

如果在用名字就在其他的脚本引用就好了!

转载于:https://www.cnblogs.com/Future-Better/p/9829902.html

加载场景不销毁的实现相关推荐

  1. Unity3D专区Unity实现加载场景进度条

    using UnityEngine; using System.Collections;public class Scene2 : MonoBehaviour {//异步对象AsyncOperatio ...

  2. 异步加载场景与异步加载游戏资源

    异步加载场景与异步加载游戏资源 Application.LoadLevel 加载关卡 在同步加载游戏场景的时候通常会使用方法Application.LoadLevel 加载关卡. 该方法在执行完App ...

  3. 【Unity3D 打斗游戏开发】之二 异步加载场景或预加载资源后进入游戏

    假设当前场景为A,我们要切换到下一场景B,如果使用正常加载方式,Unity会在切换场景时加载场景B的所有内容(Hierarchy面板内容)到内存中,由于加载场景B是同步执行的,所以当场景B较大时,就会 ...

  4. Unity 重新加载场景报错:MissingReferenceException

    MissingReferenceException: The object of type 'SpawnEnemy' has been destroyed but you are still tryi ...

  5. Cocos creator加载场景、加载场景回调、预加载场景

    注意场景名不要写错,是根据字符串去加载场景的. 同时这也在暗示我们,一个游戏应尽可能地少切换场景~ 官方文档:加载和切换场景 加载场景 加载场景调用如下API: cc.director.loadSce ...

  6. sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中...

    sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中 假设有一场景1001.unity,,manifest文件如下: ...

  7. Unity异步加载场景

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Sce ...

  8. Unity动态加载场景

    不用在build setting中设置,使用ab包动态加载场景 1.把场景打成ab包 2.加载ab资源,然后加载场景 demo链接 链接:https://pan.baidu.com/s/1dP9ihT ...

  9. Unity 异步使用Additive加载场景导致的光照贴图出错的坑及解决办法

    Lightmap(光照贴图)是Unity里很常用的一个功能,毕竟移动设备上实时光照不靠谱,要出效果还是得烘焙.但是在使用中发现了几坑的地方,通过自己写了个两个脚本就轻松搞定,这里分享下. 坑1: 异步 ...

最新文章

  1. scau 2012新生赛 G只有神知道的世界
  2. 计算上月、下月、上周、下周..日期范围
  3. 创建ACFS集群文件系统(命令方式)
  4. 前端人员如何在linux服务器上搭建npm私有库
  5. Html代码seo优化最佳布局实例讲解
  6. XCode中的单元测试:编写测试类和方法(内容意译自苹果官方文档)
  7. 医疗中文问句意图匹配Top3方案ppt
  8. [转]关于Microsoft.Office.Interop组件接口的调用方法
  9. centos7 kvm虚拟机安装黑屏
  10. python斐波那契数列_python3实现斐波那契数列(4种方法)
  11. 一个段子教你如何认识大数据
  12. 网课题库接口教程(免费)
  13. 【笔记】运筹(中)——Rita_Aloha
  14. PPT插入Excel图标,如果水平翻转做出漂亮逻辑图表?
  15. 为防止程序员猝死,这家公司想出了一个好办法
  16. USB TypeC接口和USB PD快充协议,有何区别?
  17. 联想笔记本加固态后没声音(关于固态那些事)
  18. linux怎么看go写的程序进程,Linux中查看进程状态信息-Go语言中文社区
  19. 屏蔽各APP广告方法与广告路径(须Root)
  20. 督促自己——某客网编程题三道(Java)——字符串、集合、数组

热门文章

  1. libevent源码学习-----时间管理
  2. php操作外部文件,php文件操作-将其他文件的数据添加到本文件中
  3. 记录0.7.1版本的seata批量保存会报错的情况
  4. keepalived(5)——lvs和arrp集成操作(1)
  5. 最小路径和—leetcode64
  6. iOS 13 真机调试包
  7. TeamViewer密码存储
  8. 关于CPU Cache——程序猿需要知道的那些事
  9. perl--模块安装方法和常用模块
  10. 关于stable_sort()和sort()的区别: