Unity Mirror学习(三)ClientRpc特性使用

news2024/11/29 0:47:49

ClientRpc特性

1,从服务端任意一网络对象发送到客户端
2,修饰方法的,在服务器上调用此方法,它将在所有客户端执行(我的理解:服务端广播消息,消息=方法)
3,此方法不会在本地执行
它和SyncVars很像,都是服务端命令所有客户端做某事。
两者区别:
1,ClientRpc是修饰方法的,而SyncVars是修饰变量的
2,ClientRpc可以从任意一网络对象发送命令,而SyncVars默认只能是玩家对象,绕过权限也可以从任意一网络对象发送命令

3,ClientRpc修饰的方法不会在本地执行,而SyncVars修饰的变量,服务端发生改变,客户端才会改变

示例:服务端点击按钮,客户端执行相应事件(图片变红)

在这里插入图片描述
代码部分

using Mirror;
using UnityEngine;
using UnityEngine.UI;

public class ClientRpcChangeColor : NetworkBehaviour
{

    public Image image;
    public Toggle toggle;
    void Start()
    {
        if (isServer)
        {
            image.gameObject.SetActive(false);
            toggle.gameObject.SetActive(true);
        }
        else
        {
            image.gameObject.SetActive(true);
            toggle.gameObject.SetActive(false);
        }

        toggle.onValueChanged.AddListener(ChangeColor);
    }

    [ClientRpc]
    void ChangeColor(bool isOn)
    {
        if (isOn)
            image.color = Color.red;
        else
            image.color = Color.white;
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1192262.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android RxJava3 原理浅析

使用 val retrofit Retrofit.Builder().baseUrl("https://api.github.com/").addConverterFactory(GsonConverterFactory.create()).addCallAdapterFactory(RxJava3CallAdapterFactory.create()).build()val api retrofit.create(API::class.java)api.getRepo("…

能源监测管理系统有哪些作用与效果?

随着全球能源的不断增加,能源的有限性与环境问题日益严重,用能管理企业需要一种高效的方法来管理能源与利用能源,因此能源监测管理系统成为了一种不可或缺的工具。 能源监测管理系统的重要性 1、实现节能减排的目标 通过系统,可…

优思学院|CTP和CTQ是什么?有什么区别?

CTQ 关键质量特性 CTQ是在六西格玛管理中常用的重要词汇,所以很多不同界别的人仕都可能听过,CTQ的意思是关键质量特性,Critical To Quality 的缩写。 六西格玛管理提倡的方法是通过客户的声音 (Voice of customer-VOC) ,然后把它…

【C语言】嵌套结构体初始化 - 一个有趣的结论

0. 前言 A. 嵌套结构体(比如双链表)的初始化一般是什么流程? B. 嵌套结构体的内存是如何分布的? C. 结构体中的结构体指针是否需要再次分配内存?不分配会怎么样? 关于嵌套结构体的初始化问题,我…

Element-Plus表单label实现两端对齐(左右对齐)

项目场景: 提示:这里简述项目相关背景: 在使用Element-Plus的form的时候,label只有左右,居中对齐,缺少两端对齐的选项 故研究一下如何实现,其他方法也试过,都没效果,我在别人的基础上又研究了一…

【深度学习】深度学习下的语音识别

语音识别正在侵入我们的生活。它内置于我们的手机、游戏机和智能手表中。它甚至使我们的房屋自动化。你只需 50 美元,你就可以获得一个 Amazon Echo Dot——一个神奇盒子,你只需大声说出你的需求就可以帮你订购披萨、获取天气预报甚至购买垃圾袋。 但是…

【机器学习】给大家推荐几个资源

我写博客的目的就是让大家了解人工智能背后的数学原理,但人工智能这个话题太大了,背后涉及到的知识非常庞大,仅靠写几篇文章传播力度有限,况且知识传播过程中也容易引入误解,所以授之以鱼不如授之以渔,这里…

LiveMedia视频监控汇聚管理平台方案(三)

上一篇文章中我们介绍了LiveMedia视频监控汇聚管理平台视频接入方案中功能设计的设备接入方法。在这篇文章中我们来介绍下LiveMedia视频监控汇聚管理平台方案中功能设计里的流媒体转发是如何实现的? 图1流媒体转发框架 平台流媒体转发框架如图1流媒体转发框架所示&a…

AutoGluon:亚马逊自动机器学习工具,初学者的福音

如果一个机器学习初学者,仅用三行代码就训练了一个模型,并且模型的性能要比从业数十年的都要好,这是一种什么样的感觉? AutoGluon就能帮你梦想成真。 上面这张图片就是AutoGluon的工作流,多么简单啊!根据数…

网站接口测试记录

1.被测试服务器端口输入htop指令进行cpu监控 2.测试机器安装宝塔-》我的工具-》进行网站测试 访问地址:https://www.bt.cn/bbs/thread-52772-1-1.html

【FGPA】Verilog:移位寄存器 | 环形计数器 | 4bit移位寄存器的实现 | 4bit环形计数器的实现

目录 Ⅰ. 理论部分 0x00 移位寄存器(Shift Register) 0x01 环形计数器(Ring Counter) Ⅱ. 实践部分 0x00 移位寄存器(4-bit) 0x01 四位环形寄存器(4-bit) Ⅰ. 理论部分 0x00 …

springboot+vue健美操评分系统的设计与实现【内含源码+文档+部署教程】

博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ 🍅由于篇幅限制,想要获取完整文章或者源码,或者代做&am…

YOLOv8-Seg改进: 分割小目标系列篇 | SPD-Conv,提升分割小目标和弱小分割图精度

🚀🚀🚀本文改进:SPD-Conv由一个空间到深度(SPD)层和一个无卷积步长(Conv)层组成,可以应用于大多数CNN体系结构,特别是在处理低分辨率图像和分割小目标等更困难的任务时。 🚀🚀🚀SPD-Conv 分割小目标检测首选,暴力涨点 🚀🚀🚀YOLOv8-seg创新专栏:http:…

剑指JUC原理-16.读写锁

👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码🔥如果感觉博主的文章还不错的话,请👍三连支持&…

炮炮面试——简历中专业技能

自我介绍: 面试官,您好! 我叫XXX,今年25岁,目前是XXX大学电子信息学院研三的一名学生,面试岗位是前端研发工程师。下面我将从以下几个方面来介绍自己: (学习能力)在校期间通过了英语四六级、以及一些计算机专业证书,成绩一直是专业前5%,每年都获得学…

Elastic Stack 8.11:引入一种新的强大查询语言 ES|QL

作者:Tyler Perkins, Ninoslav Miskovic, Gilad Gal, Teresa Soler, Shani Sagiv, Jason Burns Elastic Stack 8.11 引入了数据流生命周期、一种配置数据流保留和降采样(downsampling) 的简单方法(技术预览版)&#xf…

LiveMedia视频监控汇聚管理平台视频接入方案(二)

上一篇文章中我们介绍了LiveMedia视频监控汇聚管理平台技术方案的架构。今天我们来介绍下LiveMedia视频监控汇聚管理平台的视频接入方案。 视频集控平台建设充分考虑利旧的建设原则,同时根据各个现有视频监控建设情况,考虑统一规划、分布实施的建设方式。…

电脑怎么录制视频,录制的视频怎么剪辑?

在现今数字化的时代,视频成为了人们日常生活中不可或缺的一部分。因此,对于一些需要制作视频教程、录制游戏或者是进行视频演示的人来说,电脑录屏已经成为了一个必不可少的工具。那么,对于这些人来说,如何选择一个好用…

Mysql视图应用

现在,我们将创建一个视图,将员工的姓名、部门和工资信息组合在一起。 CREATE VIEW EmployeeSalaryView AS SELECT e.FirstName, e.LastName, e.Department, s.MonthlySalary FROM Employees e JOIN Salary s ON e.EmployeeID s.EmployeeID;通过这个视图…

MySQL大表数据导入到MongoDB

修改参数 &#xff0c;开启into outfile的功能 secure_file_priv/home/backups/mysql_outfile 重启数据库是参数生效 按条件导出MySQL数据 select * from receipt_receive_log where gmt_create > 2020-04-13 00:00:00 and gmt_create< 2020-07-13 00:00:00 INTO O…