当前位置: 首页 > news >正文

商丘企业网站建设公司网站中文域名怎么做

商丘企业网站建设公司,网站中文域名怎么做,成都网站推广如何,业之峰装饰官网RPC#xff08;这个是官方文档的资料#xff09; 要将一个函数声明为 RPC#xff0c;您只需将 Server、Client 或 NetMulticast 关键字添加到 UFUNCTION 声明。 例如#xff0c;若要将某个函数声明为一个要在服务器上调用、但需要在客户端上执行的 RPC#xff0c;您可以…RPC这个是官方文档的资料 要将一个函数声明为 RPC您只需将 Server、Client 或 NetMulticast 关键字添加到 UFUNCTION 声明。 例如若要将某个函数声明为一个要在服务器上调用、但需要在客户端上执行的 RPC您可以这样做 UFUNCTION( Client )void ClientRPCFunction();要将某个函数声明为一个要在客户端上调用、但需要在服务器上执行的 RPC您可以采取类似的方法但需要使用 Server 关键字 UFUNCTION( Server )void ServerRPCFunction();此外还有一种叫做多播Multicast的特殊类型的 RPC 函数。多播 RPC 可以从服务器调用然后在服务器和当前连接的所有客户端上执行。 要声明一个多播函数您只需使用 NetMulticast 关键字 UFUNCTION( NetMulticast )void MulticastRPCFunction();要求和注意事项 多播 RPC 还可以从客户端调用但这时就只能在本地执行。 1.您必须满足一些要求才能充分发挥 RPC 的作用2.它们必须从 Actor 上调用。3.Actor 必须被复制。4.如果 RPC 是从服务器调用并在客户端上执行则只有实际拥有这个 Actor 的客户端才会执行函数。5.如果 RPC 是从客户端调用并在服务器上执行客户端就必须拥有调用 RPC 的 Actor。6.多播 RPC 则是个例外如果它们是从服务器调用服务器将在本地和所有已连接的客户端上执行它们。如果它们是从客户端调用则只在本地而非服务器上执行。现在我们有了一个简单的多播事件限制机制在特定 Actor 的网络更新期内多播函数将不会复制两次以上。按长期计划我们会对此进行改 善同时更好的支持跨通道流量管理与限制。例子 Client 服务器的调用客户端执行 UFUNCTION(Server, Reliable)void FunctionServer();UFUNCTION(Client, Reliable)void FunctionClient();void ARPCProjectCharacter::FunctionServer_Implementation() {GEngine-AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT(FunctionServer));UE_LOG(LogTemp,Warning,TEXT(FunctionServer));FunctionClient(); }void ARPCProjectCharacter::FunctionClient_Implementation() {GEngine-AddOnScreenDebugMessage(-1, 50.f, FColor::Red, TEXT(FunctionClient));UE_LOG(LogTemp,Warning,TEXT(FunctionClient)); }void ARPCProjectCharacter::StartFire() {GEngine-AddOnScreenDebugMessage(-1, 50.f, FColor::Red, TEXT(Click));UE_LOG(LogTemp,Warning,TEXT(Click));FunctionServer(); }Server (客户端调用服务端执行) UFUNCTION(Server, Reliable)void FunctionServer(); void ARPCProjectCharacter::FunctionServer_Implementation() {GEngine-AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT(FunctionServer));UE_LOG(LogTemp,Warning,TEXT(FunctionServer)); }void ARPCProjectCharacter::StartFire() {GEngine-AddOnScreenDebugMessage(-1, 50.f, FColor::Red, TEXT(Click));UE_LOG(LogTemp,Warning,TEXT(Click));FunctionServer(); }NetMulticast (客户端调用服务端执行) UFUNCTION(Server, Reliable)void FunctionServer();UFUNCTION(Client, Reliable)void FunctionClient();UFUNCTION(NetMulticast, Reliable)void FunctionNetMulticast();void ARPCProjectCharacter::FunctionServer_Implementation() {GEngine-AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT(FunctionServer));UE_LOG(LogTemp,Warning,TEXT(FunctionServer));FunctionClient();FunctionNetMulticast(); }void ARPCProjectCharacter::FunctionNetMulticast_Implementation() {GEngine-AddOnScreenDebugMessage(-1, 50.f, FColor::Red, TEXT(FunctionNetMulticast));UE_LOG(LogTemp,Warning,TEXT(FunctionNetMulticast)); } void ARPCProjectCharacter::FunctionClient_Implementation() {GEngine-AddOnScreenDebugMessage(-1, 50.f, FColor::Red, TEXT(FunctionClient));UE_LOG(LogTemp,Warning,TEXT(FunctionClient)); }void ARPCProjectCharacter::StartFire() {GEngine-AddOnScreenDebugMessage(-1, 50.f, FColor::Red, TEXT(Click));UE_LOG(LogTemp,Warning,TEXT(Click));FunctionServer(); }官方图表 验证 UFUNCTION( Server, WithValidation )void FunctiHpServer( int32 AddHealth );void ARPCProjectCharacter::FunctiHpServer_Implementation(int32 AddHealth) {}bool ARPCProjectCharacter::FunctiHpServer_Validate(int32 AddHealth) {if (AddHealth0){return true;}return false; }可靠性 必须将RPC指定为 可靠 或 不可靠。在蓝图中函数和事件默认为不可靠。要将函数指定为可靠将细节面板Details Panel中的 可靠Reliable 设置设为 true。在C中必须将 Reliable 或 Unreliable 说明符作为 Server、Client 或 NetMulticast 函数添加到RPC的 UFUNCTION 宏及其状态。 不可靠RPC无法保证必会到达预定目的地但其发送速度和频率高于可靠的RPC。其最适用于对gameplay而言不重要或经常调用的函数。例如由于Actor移动每帧都可能变换因此使用不可靠RPC复制该Actor移动。 可靠的RPC保证到达预定目的地并在成功接收之前一直保留在队列中。其最适合用于对gameplay很关键或者不经常调用的函数。相关例子包括碰撞事件、武器发射的开始或结束或生成Actor。 滥用可靠函数可能导致其队列溢出此操作将强制断开连接。若逐帧调用复制函数应将其设为不可靠。若拥有与玩家输入绑定的可靠函数应限制玩家调用该函数的频率。 网络提示 1.尽可能少用RPC或复制蓝图函数。在合适情况下改用RepNotify。 2.组播函数会导致会话中各连接客户端的额外网络流量需尤其少用。 3.若能保证非复制函数仅在服务器上执行则服务器RPC中无需包含纯服务器逻辑。 4.将可靠RPC绑定到玩家输入时需谨慎。玩家可能会快速反复点击按钮导致可靠RPC队列溢出。应采取措施限制玩家激活此项的频率。 5.若游戏频繁调用RPC或复制函数如tick时则应将其设为不可靠。 6.部分函数可重复使用。调用其响应游戏逻辑然后调用其响应RepNotify确保客户端和服务器拥有并列执行即可。 7.检查Actor的网络角色可查看其是否为 ROLE_Authority。此方法适用于过滤函数中的执行该函数同时在服务器和客户端上激活。 8.使用C中的 IsLocallyControlled 函数或蓝图中的Is Locally Controlled函数可检查Pawn是否受本地控制。基于执行是否与拥有客户端相关来过滤函数时此方法十分拥有。 9.构造期间Pawn可能未被指定控制器因此避免在构造函数脚本中使用IsLocallyControlled
http://www.pierceye.com/news/43412/

相关文章:

  • 昆明网站建设代理门户网站 费用
  • 百度联盟做网站赚钱最新源码论坛
  • 湖北省建设厅网站怎么打不开宝安营销型网站建设公司
  • 岳溥庥网站建设商贸公司寮步网站建设
  • 如何做网站浏览pdf呼市网站建设
  • 做网站初中极路由wordpress
  • 黑客以网站做跳板入侵方法做赚钱问卷调查的网站好
  • 什么网站可以自己做名片wordpress搭个人博客
  • 网站开发所遵循上海seo公司推荐
  • 网站建设制作设计优化dede怎么换网站页面
  • 集团网站群建设方案省建设厅执业资格注册中心网站
  • 优秀的网页模板网站成都专业建网站
  • 财务记账网站开发项目推广网站
  • 告状书放网站上怎么做免费源码分享
  • 套模板的网站多少钱群晖搭建wordpress修改固定链接
  • html5做旅游网站网站准备建设的内容
  • 网站建设规划与管理 试卷用ps做网站首页顶部图片
  • 一家专做中式设计的网站克拉玛依油田公司主页
  • 什么网站可以找到防水工程做php 小企业网站 cms
  • 汕头网站制作哪家强给人做网站网站犯法嘛
  • 买网站空间wordpress建站页面
  • 做网站引流到天猫wordpress后台进去
  • 行业网站做的好的长沙柒零叁网站建设
  • 手机上怎么创建自己的网站wordpress注册添加算术验证码
  • 网站维护与推广定义企业门户网站设计报告
  • 网站建设公司如何进行工作wordpress加载模板文件路径
  • 学建站wordpressppt模板免费下载 素材中国风
  • 网站开发结论o2o网站咋建设
  • 沈阳网络推广建站湖州南浔建设局网站
  • 深圳网站优化提供商低价网站建设案例