是否可以通过使用 UNet 在 Unity3D 中为客户端和服务器创建单独的项目?
据我所知,这似乎是不可能的,Unity3D 官方文档对该主题并不太清楚,并且找到了零个示例或文章。
如果使用 Unity3D 提供的NetworkManager,服务器端逻辑和游戏客户端逻辑有很多耦合,是否可以将其分成两个不同的项目?服务器端应该只是一个无头服务器,客户端应该是没有所有服务器逻辑的普通游戏客户端。如果可能,它应该是什么样子?
是否可以通过使用 UNet 在 Unity3D 中为客户端和服务器创建单独的项目?
据我所知,这似乎是不可能的,Unity3D 官方文档对该主题并不太清楚,并且找到了零个示例或文章。
如果使用 Unity3D 提供的NetworkManager,服务器端逻辑和游戏客户端逻辑有很多耦合,是否可以将其分成两个不同的项目?服务器端应该只是一个无头服务器,客户端应该是没有所有服务器逻辑的普通游戏客户端。如果可能,它应该是什么样子?
使用Network类,您可以轻松区分服务器和客户端。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void OnGUI() {
if (Network.isServer)
GUILayout.Label("Running as a server");
else
if (Network.isClient)
GUILayout.Label("Running as a client");
}
}
或者NetworkBehaviour类的属性允许脚本随时知道网络对象的网络上下文是什么。