99国产欧美另娄久久久精品_国内自拍农村少妇在线观看_久久亚洲道色宗和久久_日本aⅴ大伊香蕉精品视频_亚洲国产欧美日韩欧美特级_日本视频免费在线观看

  • Unity3d網(wǎng)絡(luò)通信 - NetWork組件使用

    2019/5/28??????點(diǎn)擊:

    習(xí)Unity3d的過(guò)程中,經(jīng)常上網(wǎng)查閱各位大牛的博客,受益匪淺,從今天開(kāi)始寫(xiě)自己在學(xué)習(xí)過(guò)程中遇到的問(wèn)題,總結(jié)歸納下來(lái),方便日后復(fù)習(xí)

    這兩天在學(xué)習(xí)Unity的網(wǎng)絡(luò)模塊,今天先總結(jié)Unity自帶的Network組件相關(guān)使用方法

    一.網(wǎng)絡(luò)管理物體

    搭建網(wǎng)絡(luò),需要先創(chuàng)建一個(gè)空物體用來(lái)添加網(wǎng)絡(luò)管理組件,首先要給空物體添加以下兩個(gè)組件

    注意事項(xiàng): 1. OffLine Scene代表客戶端連接服務(wù)器前,等待的場(chǎng)景(游戲大廳)

    .                   OnLine Scene代表客戶端連接服務(wù)器后的場(chǎng)景 (游戲場(chǎng)景)

                      2.Spawn Info 服務(wù)器卵生信息 :  把網(wǎng)絡(luò)預(yù)設(shè)體(必須掛有網(wǎng)絡(luò)組件) 拖入PlayerPrefab , 服務(wù)器會(huì)把游戲?qū)ο髮\生到所有連接的客戶端中

    二.游戲?qū)ο?/strong>

    1.Network Identity

          游戲?qū)ο?網(wǎng)絡(luò)預(yù)設(shè)體)需要掛Network Identity組件,該組件是網(wǎng)絡(luò)的核心,由服務(wù)器Spwan(卵生)的物體都必須具備,該組件在卵生的時(shí)候會(huì)自動(dòng)分配assetID和權(quán)限

    注意事項(xiàng):1.ServerOnly 勾選后物體只在服務(wù)器中存在

                  2.Local Player Authority勾選后在客戶端中存在

    2.實(shí)現(xiàn)狀態(tài)同步

     游戲?qū)ο蟮目刂颇_本需要繼承NetWorkBehaviour組件(依賴于NetWorkIdentity),用來(lái)實(shí)現(xiàn)RPC技術(shù)和狀態(tài)同步屬性.
    1.Transform同步
    這個(gè)組件負(fù)責(zé)玩家對(duì)象在客戶端發(fā)出移動(dòng)指令后,把該玩家的移動(dòng)同步到所有客戶端中

    注意事項(xiàng):1.Net Work Send Rate 表示同步Transform的頻率

                    2.Transform Synv Mode 表示同步的模式,可以選擇同步剛體組件,角色控制器等

    然后在控制腳本編寫(xiě)代碼

        void Update() {
            if (!isLocalPlayer)   //判斷是否是本地客戶端
            {
                return;
            }
            float x = Input.GetAxis("Horizontal");
            float y = Input.GetAxis("Vertical");
            if (x != 0 || y != 0)
            {
                transform.position += new Vector3(x, 0, y);
            }
    }


    注意事項(xiàng) 1.所有網(wǎng)絡(luò)控制腳本必須要繼承 NetWorkBehaviour

                  2.在Update里需要先判斷是否是本地客戶端,不是的話Return~!!!  如果沒(méi)有這個(gè)判斷條件,在客戶端發(fā)出指令,網(wǎng)絡(luò)里所有的客戶端都會(huì)執(zhí)行

    2.發(fā)射子彈與減血的同步

    經(jīng)過(guò)上邊的步驟,已經(jīng)可以實(shí)現(xiàn)物體在網(wǎng)絡(luò)里的移動(dòng),但我們想要實(shí)現(xiàn)在網(wǎng)絡(luò)里發(fā)射子彈,受到攻擊后還要減血,這些指令都需要在服務(wù)器上執(zhí)行,先來(lái)看一下NetWorkBehaviour的常用特性

    [SyncVar]    用于標(biāo)識(shí)序列化變量,實(shí)現(xiàn)變量同步             例: (把Hp標(biāo)識(shí),就可以實(shí)現(xiàn)同步減血)

    [Client]        表示只能在客戶端調(diào)用

    [ClientCallBack]   表示客戶端執(zhí)行的回調(diào)

    [Command]  表示客戶端向服務(wù)端發(fā)送的命令,在服務(wù)端執(zhí)行

    [ClientPrc]  表示服務(wù)端向客戶端發(fā)送的命令,在客戶端執(zhí)行

    直接來(lái)看代碼如何使用:

    //將血量設(shè)置為網(wǎng)絡(luò)同步變量
        [SyncVar]
        float hp = 100;
        public Slider slider;       //顯示血量的血條
        public GameObject bullet;   //子彈預(yù)設(shè)體
        void Start () {
            ClientScene.RegisterPrefab(bullet); //在場(chǎng)景注冊(cè)預(yù)設(shè)體
        }
        void Update () {
            // 2.將血量的值賦給slider
            slider.value = hp / 100f;
            if (!isLocalPlayer)
            {
                return;
            }     
            if (Input.GetKeyDown(KeyCode.Q))
            {
                CmdReduceHp();
            }
            if (Input.GetKeyDown(KeyCode.T))
            {
                CmdFire();
            }
        }
        //減血的方法   標(biāo)識(shí)為Command由服務(wù)器執(zhí)行
        //前綴必須是Cmd 開(kāi)頭
        [Command]
        public void CmdReduceHp()
        {
            hp -= 10;
        }
         //發(fā)射子彈的方法
        [Command]
        public void CmdFire()
        {
            GameObject a= Instantiate(bullet, transform.position+transform.right, Quaternion.identity);
            a.GetComponent().AddForce(transform.right*100);   //給子彈添加向右的力
            NetworkServer.Spawn(a);   //由服務(wù)器卵生給連接的客戶端
        }

    注意事項(xiàng):1.網(wǎng)絡(luò)預(yù)設(shè)體需要先在客戶端場(chǎng)景里注冊(cè)一下,才能正常產(chǎn)生              

                   2.hp賦值給Slider要寫(xiě)在判斷是否是本地客戶端前,血條才會(huì)正常同步顯示

                   3.Command修飾的方法,由客戶端發(fā)起,服務(wù)端執(zhí)行,方法名前必須加Cmd

                   4.監(jiān)聽(tīng)鍵盤(pán)事件的Iput.GetKeyDown要放在Update里,不能放在Cmd方法里!!!  (此時(shí)方法由服務(wù)器調(diào)用,無(wú)法監(jiān)聽(tīng)鍵盤(pán)事件)

    3.動(dòng)畫(huà)的同步

       要實(shí)現(xiàn)游戲?qū)ο蟮膭?dòng)畫(huà)同步,還需要添加一個(gè)網(wǎng)絡(luò)組件,并給組件指定Animator,并勾選Animator里包含的動(dòng)畫(huà).

    動(dòng)畫(huà)同步需要注意一點(diǎn),過(guò)度條件是Trigger時(shí)需要由客戶端發(fā)起指令,在服務(wù)端執(zhí)行,再分發(fā)給各個(gè)客戶端執(zhí)行,其他條件正常.

    這里Animator的兩個(gè)動(dòng)畫(huà),attack01條件是bool,attack02條件是Trigger ,代碼如下:

    Animator ani;  
        void Start()
        {
            ani = GetComponent();
        }
         void Update () {
         if (Input.GetKeyDown(KeyCode.Q)) 
            {
                ani.SetBool("attack01", !ani.GetBool("attack01"));        
            }
            if (Input.GetKeyDown(KeyCode.E))
            {
                CmdAttack02();
            }
        }
        [Command]    //服務(wù)器執(zhí)行
        void CmdAttack02()
        {
            RpcPlayTrigger();
        }
        [ClientRpc]   //由服務(wù)器端調(diào)用,在客戶端執(zhí)行 
        void RpcPlayTrigger()
        {
            ani.SetTrigger("attack02");
        }
    希望對(duì)UNITY愛(ài)好者有拋磚引玉的療效,敬請(qǐng)關(guān)注WONGLOVE獲取更多UNITY精華。
    主站蜘蛛池模板: 精品国产一区二区三区久久_国产乱人伦真实精品视频_欧美肥胖老太bbw_一区二区三区在线视频_精品嫩草_欧美性xxxx视频_曰本黄色片_性XXXX中国HD | 满天神佛国语免费观看_jizz久久精品永久免费_天天干天天做_丰满老熟好大bbb_四虎最新在线_熟妇的奶头又大又长奶水视频_久久久www免费人成精品_亚洲精品国偷自产在线99人热 | 日韩性猛交_91最新国产视频_亚洲一级网_2019中文字幕在线视频_久久久久亚洲AV无码网站_91精品蜜桃_在线这里只有精品_eeuss在线 | 永久黄软件免费观看_国产三级久久久久_欧美精品无码久久久潘金莲_成人一级大片_午夜免费福利片_亚洲综合一区国产精品_亚洲av日韩精品久久久久_哥也色视频 | 亚洲精品成a人在线_成人在线免费观看视频网站_久久不见久久见www免费视频_99在线观看_在线高清理伦片a_久久精品看_成人精品区_天堂av性爱在线 | 国产精品无码av无码_嫩草视频网_免费a级毛片无码∨_久无码久无码AV无码_久久九九免费视频_亚洲国产成人A精品不卡在线_在线午夜av_妇女站着交性打野战 | 欧美成人久久_精品国产AⅤ一区二区三区桃_无码欧亚熟妇人妻AV在线外遇_俺去啦久久草在线视频_延禧攻略在线_久久久久久久99精品免费观看_天堂久久久久VA久久久久_亚洲精品欧美视频 | 日韩精品在线免费_性一交一乱一伦一色一情孩交_麻豆影视免费_久草五月天_男男被各种姿势C到高潮视频_亚洲欧美日韩在线_开心五月激情中文在线_无码欧精品亜州日韩一区夜夜嗨 | 亚洲精品wwww_中文字幕一区二区三区四区久久_91麻豆国产_免费追剧网址_国产精品pans私拍_国产成人a亚洲精品_老司机亚洲精品_久久999精品久久久 | 国产乱一乱二乱三_免费黄色在线_国产高清一_香蕉国产9_国产精品午睡沙发系列_国产精品午夜无码A体验区_欧美人与动牲交ZOZO_国产精品久久久久久久久大全 | 97亚洲精华液_99视频有精品_草逼网页_激情久久久久_狠狠操综合_欧美自拍偷拍一区_日韩一区二区三_成人影院欧美黄色 | 国产福利一区二区三区在线播放_中文字幕久精品免费视频_毛片a在线_精品黄色视_免费观看韩国理论片_成人免费A级毛片无码_一级免费看_中文字幕永久免费 | 91精品国产高清一区二区性色_99热国产在线_国产伦理久久久久久妇女_99热新网址_久久国产精品亚洲人一区二区三区_欧美老人巨大xxxx做受视频_人妻AⅤ无码专区_干干日日 | 亚洲精品日本无v一区_久久精品一区二区三区日韩_欧美激情在线观看一区二区三区_日本黄色录像一级片_91视频色板_在线免费看黄色片_久久中文字幕精品_酒店大战丝袜高跟鞋人妻 | 成人一级片在线免费观看_久久免费视频3_青青视频国产_亚洲第一极品精品无码_a中文字幕www_日韩精品国产自在久久现线拍_性无码专区无码片_成人在线精品 | 野花社区日本免费图片_国产成人福利在线一区_国产精品一区二区视频_天天天天操_国产永久免费观看_欧洲成人18片_日韩区一区二区三_麻豆最新国产AV原创精品 国产一区二区四区在线观看_亚洲欧洲日产国无高清码图片_97国产精品欲_精品国产女主播在线观看_一级免费a一片_在线观看黄的网站_avtom影院永久地址_毛片免费网站 | 边摸边脱吃奶边高潮视频免费_91精品国产综合久久久久久久久_无码伊人66久久大杳蕉网站谷歌_国产丝袜精品视频_日本韩国国产_久久精品欧洲_www.99色_www.91桃色 | 久久激情av_欧美日韩精品一区二区三区高清视频_国产精品久久久久久久久果冻传媒_www.av黄_四虎影视久久久免费观看_亚洲精品影院在线_深夜福利备好纸巾18禁止_亚洲va | 12av视频_性视频毛片_国产精品无码dvd在线观看_欧美人体一区二区视频_人人干夜夜_国产超碰无码最新上传_国产日韩一区二区_精品AV无码国产一区二区 | 国产欧洲精品色在线_2018天天干夜夜操_亚洲色无色A片一区二区_女性裸体无遮挡无遮掩视频蜜芽_最近免费中文字幕在线mv视频8_欧美国产日本高清不卡_日本一卡二卡3卡四卡网站精品_99久e精品热线免费 | JLZZJLZZ全部女高潮_国产成人久久AV免费看_国产边打电话边被躁视频_欧美大黄大色一级毛片_韩国av网站在线观看_免费特级婬片日本高清视频_男人天堂2023_不卡精品 | 国产精品爱久久久久久久小说_黄色一级大片在线观看_久久精品99久久_91在线视频免费观看_www.51色.com_涩爱av色老久久精品偷偷鲁_成人二区_一本之道伊人 | 热99在线观看_亚洲日韩看片无码超清_在线观看ww_亚洲一区二区视频网站_久久精品99视频_A级毛片100部免费观看_国产黑色丝袜流白浆视频_伊人yinren22综合开心 | 欧洲国产成人久久精品综合_九九在线国产视频_黄色美女一级片_九九热视频精品在线_蜜臀av性色av_久久亚洲美女精品国产精品_亚洲品质自拍视频_成年人激情视频 | 欧美人与动牲交免费观看网_99精品国产综合久久精品自在_伊人精品久久_日本熟妇乱人伦XXXX_日本视频在线看_xxxxx18国产_亚洲AV综合色区无码一二三区_久久久久成人片免费观看 | 九九热免费在线_国产亚洲精品AAAA片在线播放_日本地区不卡一区二区三区搜索_亚洲欧美日韩一级_国产在线看片免费人成视频97_fc2在线中文字幕_一级日本_黄绝一级毛片 | 日本淫片免费啪啪3_成人片在线看_办公室扒开奶罩揉吮奶头视频_日韩福利二区_日本一级毛片免费看_www四虎影院_日日噜噜夜夜狠狠视频无码_91色影视 | 欧美最猛性xxxxx69交_欧美在线观看视频一区_欧美极品一区_99精品产国品一二三产区_日韩人妻无码精品久久免费一_中文字幕亚洲综合久久综合_又色又爽又黄又免费看的视频_久久69国产精品久久69软件 | 免费无码A片一区二区三区天美_精品视频手机在线观看_日韩欧美~中文字幕_狠狠躁夜夜躁xxxxaaaa_天堂av色综合久久天堂我不卡_吴梦梦在线看_日本不卡一区在线观看_一本AV高清一区二区三区 | 亚洲国产精品成人精品无码区在线_免费观看日韩视频_69亚洲_国产精品一区二区含羞草_久久福利青草精品资源站免费_久久国产婷婷国产香蕉_欧美视频二区_亚洲av无码久久精品成人 | 黄色高清视频在线观看_国产久免费热高清视频在线观看_国产乱人伦在线播放_丁香视频免费观看_欧美日韩在线影院_日本成人在线免费视频_韩国一级黄色录像_av免播放 国内自拍中文字幕_国产在线va_狠狠婷婷_午夜看片在线观看_日本精品在线一区_特级做a爰片毛片免费看1o8_日韩一本之道一区中文字幕_老司机午夜永久免费影院 | 热の无码热の有码热の综合_国产在线精品亚洲第一区香蕉_97在线超碰_久久久视频免费观看_国产精品美女一区二区_亚洲精品久久久蜜桃网站_欧美XXXX黑人又粗又长精品_麻豆精品国产 | 国产精品国产精品偷麻豆_一级特黄视频_久久综合九色综合97婷婷_亚洲色图在线免费观看_极品少妇XXXX_久久国语_亚洲成人经典_久久99婷婷国产精品免费| 性欧美8处一14处破_a级毛片在线看日本_91视频免费视频_亚洲AV永久无码天堂网毛片_欧美熟妇色ⅹxxx欧美妇_成人在色线视频在线观看免费大全_精品一区在线_免费看一及片 | 亚洲色欲色欲欲WWW在线_久久一次_97视频入口_一个人在线观看的WWW片_国产一卡二卡三卡四卡_欧美特级一级片_亚洲欧美一级黄色录像视频_国产精品高潮呻吟爱久久AV无码 | 日本中文字幕网址_亚洲久久色_精品国产一区二区亚洲人成毛片_人成免费a级毛片_真人在线观看色网视频_日韩AV高潮喷水在线观看_久草影视在线_国产女人爽到高潮久久久4444 | 国产精品3_九一视频国产_国产免费极品av吧在线观看_999久久免费精品国产_国产亚洲综合网曝门系列_青青草最新视频_久久久久久久久久久妇女_亚洲最大中文字幕无码网站 | 91看片王_四虎影视在线视频大全免费观看_国产校花精品av_欧美亚洲专区_户外露出一区二区三区_欧美在线专区_电锯惊魂1在线观看_日韩爱情动作片 | 蜜臀久久精品久久久久久酒店?_日韩成人av影院_国产办公室秘书无码精品_中文字幕91爱爱_人妻丝袜AV中文系列先锋影音_欧美一区三区_国产精品美女久久久网站_无码精品一区二区三区四区爱奇艺 | 野狼第一精品社区_亚洲精品视频在线免费播放_字幕日韩视频一区二区_国产99一区二区_性中国熟妇videofreesex_麻豆入口国产精品_视频一区二区国产无限在线观看_在线看国产视频 | av在线超碰_人与动人物视频a级毛片_中文字幕av网站_肉岳疯狂69式激情的高潮_91久久精品一区_久久99视频精品_97香蕉久久国产在线观看_中文字幕人成无码免费视频 |