unity mirror ClientAttribute
时间: 2023-07-01 19:14:15 浏览: 85
在 Unity Mirror 中,`[Client]` 属性是一个标记,用于标识该类、方法或字段只在客户端上运行,而不在服务器上运行。
以下是 `Client` 属性的用法示例:
1. 将 `Client` 属性应用于一个方法,该方法将只在客户端上运行:
```csharp
using Mirror;
public class YourScript : NetworkBehaviour
{
[Client]
private void ClientOnlyMethod()
{
// 该方法只在客户端上运行
}
}
```
2. 将 `Client` 属性应用于一个字段,该字段只会在客户端上同步:
```csharp
using Mirror;
public class YourScript : NetworkBehaviour
{
[SyncVar]
[Client]
private int clientOnlyValue;
[Server]
private void ServerOnlyMethod()
{
// 该方法只在服务器上运行,并将 clientOnlyValue 的值同步到客户端
clientOnlyValue = 10;
}
}
```
请注意,`[Client]` 属性只能应用于继承自 `NetworkBehaviour` 的类,因为只有 `NetworkBehaviour` 的子类才能在客户端和服务器之间进行网络同步。
另外,还有一个类似的属性 `[Server]`,它用于标识该类、方法或字段只在服务器上运行,而不在客户端上运行。
阅读全文