繁体   English   中英

Unity 5 网络颜色同步

[英]Unity 5 networking color sync

我正在尝试从我的服务器脚本同步我的立方体的颜色。 我有网络转换和网络标识组件,转换同步效果很好,现在我需要同步颜色。 我需要像网络材料组件这样的东西,或者我应该怎么做? 谢谢:)(我希望你明白我的意思,对不起英语。)

您可以使用 SyncVar 属性同步值:

[SyncVar]
Color myColor;

这将使更改在客户端和服务器上保持同步。 但这只是您的颜色类型类中的一个字段,它实际上并没有改变渲染的颜色。

您可以在 Update 回调myColor渲染的颜色更改为myColor值,但即使颜色没有变化,它也会更新它。

最好的方法是使用钩子:

[SyncVar (hook = "OnColorChanged")]
Color myColor;

这将在每次更新颜色时调用“OnColorChanged”函数。

这样的事情应该可以工作(如果您正在使用 SpriteRenders):

[SyncVar (hook = "OnColorChanged")]
Color myColor;

void OnColorChanged(Color value)
{
    myColor = value;
    GetComponent<SpriteRenderer>().color = myColor;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM