国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity切換場(chǎng)景保存上一個(gè)場(chǎng)景的數(shù)據(jù),Unity切換場(chǎng)景的案例,Unity切換場(chǎng)景再返回?cái)?shù)據(jù)丟失的解決方案

這篇具有很好參考價(jià)值的文章主要介紹了Unity切換場(chǎng)景保存上一個(gè)場(chǎng)景的數(shù)據(jù),Unity切換場(chǎng)景的案例,Unity切換場(chǎng)景再返回?cái)?shù)據(jù)丟失的解決方案。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

問題:

Unity在切換場(chǎng)景之后在再次返回上不會(huì)保存上一個(gè)場(chǎng)景的數(shù)據(jù)的。
但是大多數(shù)時(shí)候我們是需要這些數(shù)據(jù)的,這應(yīng)該如何解決呢?

解決方案:

  1. 文件鏈接:我將解決方案打包了,點(diǎn)我下載,免費(fèi),或者私信我發(fā)你
  2. 首先將需要存儲(chǔ)到一個(gè)class中,這里以學(xué)生為例子
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;

namespace ScenceChange
{
    [Serializable]
    public class StudentEnity
    {
        public string Name;
        public string Description;
        public float _Time;
    }
}


  1. 然后我們?cè)賱?chuàng)建一個(gè)腳本,并這個(gè)腳本掛到Unity場(chǎng)景中的游戲物體上.
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;

namespace ScenceChange
{
    public class tudentGaemObject : MonoBehaviour
    {
        public StudentEnity StudentEnity;
        public int No;

        private void Start()
        {
            var stu = GameManger._Instance.students.FirstOrDefault(p => p.Name == StudentEnity.Name);
            if (stu != null)
            {
                StudentEnity = stu;
            }
            else
            {
                GameManger._Instance.AddStudent(StudentEnity);
            }
            // UI 顯示對(duì)應(yīng)的student屬性內(nèi)容
        }

        private void Update()
        {
            StudentEnity._Time = StudentEnity._Time + Time.deltaTime;
        }
    }
}

GameManager中的代碼

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

namespace ScenceChange
{
    public class GameManger : SingletonBase<GameManger>
    {
        public List<StudentEnity> students;
        private void Awake()
        {
            DontDestroyOnLoad(this);
            students = new List<StudentEnity>();
        }

        public void AddStudent(StudentEnity student)
        {
            if (!students.Contains(student))
            {
                students.Add(student);
            }
        }
    }
}

SingletonBase中的代碼

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

namespace ScenceChange
{
    public class GameManger : SingletonBase<GameManger>
    {
        public List<StudentEnity> students;
        private void Awake()
        {
            DontDestroyOnLoad(this);
            students = new List<StudentEnity>();
        }

        public void AddStudent(StudentEnity student)
        {
            if (!students.Contains(student))
            {
                students.Add(student);
            }
        }
    }
}
  1. 在上面我們完成了數(shù)據(jù)載體的創(chuàng)建(StudentEnity,tudentGaemObject ),以及場(chǎng)景切換的時(shí)候用于保存數(shù)據(jù)的載體(GameManger ,StudentEnity)。
  2. 接下來我們做一些場(chǎng)景切換的工作,創(chuàng)建兩個(gè)場(chǎng)景,一個(gè)名字為"ScenceA",另外一個(gè)為“ScenceB“,分別在場(chǎng)景中創(chuàng)建一個(gè)Button,場(chǎng)景A的按鈕掛在這個(gè)腳本
 private void Awake()
        {
            Button but=gameObject.GetComponent<Button>();
            but.onClick.AddListener(delegate
            {
                SceneManager.LoadScene("ScenceB");
            });
        }

場(chǎng)景B掛載這個(gè)腳本

        private void Awake()
        {
            Button but = gameObject.GetComponent<Button>();
            but.onClick.AddListener(delegate
            {
                SceneManager.LoadScene("ScenceA");
            });
        }

然后點(diǎn)擊按鈕就會(huì)跳轉(zhuǎn)場(chǎng)景。文章來源地址http://www.zghlxwxcb.cn/news/detail-433586.html

  1. 然后測(cè)試一下就會(huì)發(fā)現(xiàn)場(chǎng)景跳轉(zhuǎn) StudentEnity中的_Time還是會(huì)按照跳轉(zhuǎn)之前的繼續(xù)增加。

Enjoy ,不懂私信,我會(huì)看。

到了這里,關(guān)于Unity切換場(chǎng)景保存上一個(gè)場(chǎng)景的數(shù)據(jù),Unity切換場(chǎng)景的案例,Unity切換場(chǎng)景再返回?cái)?shù)據(jù)丟失的解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • unity場(chǎng)景轉(zhuǎn)換(實(shí)現(xiàn)開始游戲和返回游戲)

    unity場(chǎng)景轉(zhuǎn)換(實(shí)現(xiàn)開始游戲和返回游戲)

    1、新建兩個(gè)場(chǎng)景,一個(gè)命名為start,另一個(gè)命名為game,如下圖 2、打開start,創(chuàng)建一個(gè)平面和一個(gè)按鈕(右鍵,UI,Button),平面繞X軸旋轉(zhuǎn)-90度,按鈕的text設(shè)置為開始游戲,把按鈕拖到場(chǎng)景中合適的位置,如下圖 3、編寫代碼start,把它賦給Canvas,注意是賦給Canvas,不是給按鈕,代

    2024年02月11日
    瀏覽(21)
  • Unity框架學(xué)習(xí)--場(chǎng)景切換管理器

    用腳本實(shí)例化的游戲?qū)ο蠖紩?huì)生成在活動(dòng)場(chǎng)景中。 哪個(gè)場(chǎng)景是活動(dòng)場(chǎng)景,則當(dāng)前的天空盒就會(huì)使用該場(chǎng)景的天空盒。 只能有一個(gè)場(chǎng)景是活動(dòng)場(chǎng)景。 在Hierarchy右擊一個(gè)場(chǎng)景,點(diǎn)擊“Set Active Scene”可以手動(dòng)把這個(gè)場(chǎng)景設(shè)置為活動(dòng)場(chǎng)景。也可以使用SceneManager.SetActiveScene方法把一個(gè)

    2024年02月11日
    瀏覽(16)
  • Unity游戲開發(fā):場(chǎng)景切換的實(shí)現(xiàn)

    Unity游戲開發(fā):場(chǎng)景切換的實(shí)現(xiàn)

    在unity中可以將不同場(chǎng)景的背景和道具放置在不同的Scene當(dāng)中,通過對(duì)Scene的加載和卸載來實(shí)現(xiàn)場(chǎng)景之間的切換。同時(shí)創(chuàng)建一個(gè)基礎(chǔ)場(chǎng)景(Control Scene)來對(duì)整個(gè)游戲系統(tǒng)進(jìn)行管理,在基礎(chǔ)場(chǎng)景(Control Scene)中不放置背景圖片或者游戲道具而只添加各種控制單元和Canvas。 在場(chǎng)景

    2024年02月15日
    瀏覽(19)
  • unity——通過點(diǎn)擊按鈕進(jìn)行場(chǎng)景切換

    unity——通過點(diǎn)擊按鈕進(jìn)行場(chǎng)景切換

    前記 通過 點(diǎn)擊鼠標(biāo) 進(jìn)行場(chǎng)景切換請(qǐng)參考: Unity——通過點(diǎn)擊鼠標(biāo)進(jìn)行場(chǎng)景切換_行秋的博客-CSDN博客 通過點(diǎn)擊按鈕進(jìn)行場(chǎng)景切換請(qǐng)參考:unity——通過點(diǎn)擊按鈕進(jìn)行場(chǎng)景切換_行秋的博客-CSDN博客1.準(zhǔn)備兩個(gè)示例場(chǎng)景 2.點(diǎn)擊File—Build Settings...,將場(chǎng)景添加到視圖中,點(diǎn)擊Build。選

    2024年01月25日
    瀏覽(27)
  • Unity——通過點(diǎn)擊鼠標(biāo)進(jìn)行場(chǎng)景切換

    Unity——通過點(diǎn)擊鼠標(biāo)進(jìn)行場(chǎng)景切換

    前記 通過 點(diǎn)擊按鈕 進(jìn)行場(chǎng)景切換請(qǐng)參考: unity——通過點(diǎn)擊按鈕進(jìn)行場(chǎng)景切換_行秋的博客-CSDN博客 1.準(zhǔn)備兩個(gè)示例場(chǎng)景 2.點(diǎn)擊File—Build Settings...,將場(chǎng)景添加到視圖中,點(diǎn)擊Build。選擇文件夾進(jìn)行保存。(建議將文件打包到空的文件夾)3.為場(chǎng)景添加Button(UI)在Hierarchy視圖中

    2023年04月23日
    瀏覽(31)
  • 如何ping一個(gè)網(wǎng)段下的所有IP地址,并保存返回結(jié)果

    循環(huán)的ping一個(gè)網(wǎng)段的所有IP地址 -n :表示一次ping幾次 -w :表示一次ping60毫秒 其中的 in (1,1,255) 和 192.168.1.%i 表示ping的IP地址是從 192.168.1.1~192.168.1.255所有的IP地址都ping一遍 為管道命令,將輸出的內(nèi)容添加到d:pingall.txt的文件中 例如返回結(jié)果為:來自 192.168.1.4 的回復(fù): 字節(jié)=

    2024年02月16日
    瀏覽(19)
  • Unity使用進(jìn)度條加載實(shí)現(xiàn)場(chǎng)景切換(簡(jiǎn)單方法)

    Unity使用進(jìn)度條加載實(shí)現(xiàn)場(chǎng)景切換(簡(jiǎn)單方法)

    ?我們實(shí)現(xiàn)場(chǎng)景切換時(shí)一般使用方法: ?這種方法可以實(shí)現(xiàn)場(chǎng)景頁面的直接切換,但在切換場(chǎng)景前想加這種進(jìn)度條的方式該如何實(shí)現(xiàn)呢? 接下來小編為大家講解一種非常簡(jiǎn)單的方法供參考。 1.找一張實(shí)現(xiàn)頁面切換的背景圖片(任何圖片都可),記得將其改為“精靈模式”。

    2024年02月13日
    瀏覽(25)
  • 關(guān)于Unity在游戲運(yùn)行過程中切換場(chǎng)景導(dǎo)致場(chǎng)景變暗的問題

    關(guān)于Unity在游戲運(yùn)行過程中切換場(chǎng)景導(dǎo)致場(chǎng)景變暗的問題

    相信很多新手都會(huì)遇到這個(gè)問題,那就是你正常打開的時(shí)候沒有任何問題,但當(dāng)你在游戲運(yùn)行過程中切換場(chǎng)景的時(shí)候,目標(biāo)場(chǎng)景會(huì)莫名其妙的變暗。這個(gè)問題在網(wǎng)上有很多教程,但是可能是對(duì)于老手們太簡(jiǎn)單的原因,所以很多人都是一句話帶過,但是對(duì)于新手來說可能會(huì)讓他

    2024年02月04日
    瀏覽(22)
  • unity主場(chǎng)景設(shè)置、場(chǎng)景切換、全屏設(shè)置、背景音樂設(shè)置(場(chǎng)景一加載就開始播放)

    unity主場(chǎng)景設(shè)置、場(chǎng)景切換、全屏設(shè)置、背景音樂設(shè)置(場(chǎng)景一加載就開始播放)

    一般情況下我們的場(chǎng)景會(huì)有挺多的,這時(shí)候我們進(jìn)入游戲就會(huì)有問題了,unity應(yīng)該先加載哪一個(gè)呢? unity給了我們幾種方案,其中一種是在 文件——生成設(shè)置 里面更改游戲場(chǎng)景的優(yōu)先級(jí),其中0是最高優(yōu)先級(jí)(當(dāng)然,必須得先把場(chǎng)景全都加進(jìn)build中,要不如果你在外部跳轉(zhuǎn)沒有

    2024年02月10日
    瀏覽(26)
  • 手把手教會(huì)你Unity場(chǎng)景切換進(jìn)度條制作

    手把手教會(huì)你Unity場(chǎng)景切換進(jìn)度條制作

    大家好,我是橙子,今天為大家?guī)淼氖荱nity場(chǎng)景切換進(jìn)度條的教程。 ★,??★,??★,??★,--------------------華麗的分割線--------------------??★,??★,??★,??★,?? 答:有一些場(chǎng)景,里面包含非常多的資源,比如一個(gè)很大的游戲場(chǎng)景,往往加載很慢。這個(gè)時(shí)候,如

    2023年04月09日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包