[UE4]多播(广播)
只有服务器才有权限做广播,所以要判断确保是服务器端才做广播,有以下几种方法:
一、使用“Switch Has Authority”判断是否在服务器端
因为character一定是在服务器端创建出来的,而且也默认开启“复制”选项,因此character中碰撞体事件会同时在服务器和客户端发生,因此在网络游戏中要使用“Switch Has Authority”保证只在服务器中触发碰撞事件,因为是保证了是在服务器端运行,因此可以直接调用设为“广播”选项的“All-Pickup Weapon”方法。
All-PickupWeapon被定义为多播事件,定义为多播的方法也可以像普通方法一样接收参数,并且在服务器网络传输中不会因为参数对象庞大造成网络堵塞,因为服务器传递过来的并真正的一个对象,而只是一个对象标识而已。
二、创建一个定义为只在服务器端运行的事件,然后由这个事件去执行播放方法。
All-OnShootButtonDown被定义为多播事件。