5.4统一.在多人游戏中打开儿童的网格渲染器
本文关键字:网格 统一 游戏 | 更新日期: 2023-09-27 18:01:54
我想让人们在多人游戏场景中走动。有时我想关闭身体的网格渲染器。(body是子对象)所以我写了Body.GetComponent<MeshRenderer> ().enabled = false;
在Networkbehaviour脚本中。遗憾的是,这不会在网络中同步。
我如何同步这个?
我假设你使用的是Unity UNET。
- 创建布尔值
- 标记为[SyncVar] 写一个钩子函数。当布尔变量改变其值时,UNET将自动调用该钩子函数。
链接:https://docs.unity3d.com/ScriptReference/Networking.SyncVarAttribute.html
[SyncVar(hook = "OnSomeValueChange")]
public bool isMeshEnabled;
public void OnSomeValueChange(bool valueToChangeTo)
{
isMeshEnabled = valueToChangeTo;
// Enable/Disable client's mesh here
}