首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过套接字发送javafx矩形/窗格

通过套接字发送javafx矩形/窗格
EN

Stack Overflow用户
提问于 2016-03-02 17:40:41
回答 1查看 274关注 0票数 0

我正在用javafx开发一个小游戏多人游戏。我有一个对象映射,它扩展了类AnchorPane。此地图包含一些扩展类矩形的“瓷砖”。类Map和Tile实现了可序列化。

我想要的:

服务器创建映射,但不显示它。每当玩家连接时,地图就会被发送出去。

事情是我收到地图后(客户端),它什么也没有显示.每块瓷砖都在地图上,但没有显示出来。

问题1: AnchorPane和矩形不能实现可序列化,这是为什么地图没有显示任何内容吗?即使我使用实现可序列化的“自定义”对象?

问题2:更广泛地说,这是实现多人方的好方法吗?我的意思是,让服务器在每次操作后使用MapController发送映射“更好”,还是每个客户端都有自己的映射,服务器发送由客户端执行的命令更好呢?(比如创建新播放器,移动播放器.)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-02 17:46:13

  1. 由于问题中缺少代码,不太可能回答,但是任何可序列化的对象都将序列化聚合对象。如果这些对象不是来自实现可序列化的类,您将得到一个异常。您应该在某个地方看到异常,除非您正在压缩它们(即try { /* code */ } catch (IOException exc) { /* do nothing */}),这是非常糟糕的做法。
  2. 您应该通过流发送数据,而不是您对数据的视图。因此,您应该有一个表示所需数据的“模型”类;如果要使用对象序列化作为您的通信协议,则可以轻松地使其可序列化。将视图类(即UI类)保存在客户端,并在收到数据时使用来自模型的数据进行更新。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35754386

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档