簡體   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