【发布时间】:2019-01-12 11:10:59
【问题描述】:
我正在开发一些游戏,这些游戏应该通过文件相互交流。我试图在游戏之间发送的东西之一是精灵和音频剪辑,但它似乎不起作用。我正在使用以下课程。
[Serializable]
class Data
{
public Sprite spriteToSend;
public AudioClip clipToSend;
}
我也在使用 BinaryFormatter 来保存我的数据
BinaryFormatter bf = new BinaryFormatter();
FileStream file = File.Create(Application.persistentDataPath +"/Data.dat");
Data data = new ;
bf.Serialize(file, data);
file.Close();
然后像这样加载它
BinaryFormatter bf = new BinaryFormatter();
FileStream file = File.Open(Application.persistentDataPath + "\\Data.dat", FileMode.Open);
Data data = (Data)bf.Deserialize(file);
file.Close();
但是当我运行它时,我得到一个错误,说 sprites 和 audioclips 不能被序列化。
我做错了什么或者我该如何解决这个问题?
【问题讨论】:
-
我想游戏使用相同的客户端代码,否则无论如何您都无法序列化。所以直接发送。使用 int 等 id 传输信息。