在多玩家游戏中跨多个移动宽高比发送图像位置

时间:2014-12-20 14:29:57

标签: android mobile swift game-development

我正在开发基于多玩家网络的虚拟宠物游戏,其中玩家1可以选择游戏资产(图像)并将它们定位在屏幕上的任何位置,缩放图像,旋转图像。一旦玩家在多玩家游戏实例上提交他们的游戏状态,我希望玩家2在另一个移动宽高比上能够看到玩家1的虚拟宠物的游戏资产位置恰好在相同位置,即使他们正在使用不同宽高比/分辨率的移动设备。

当玩家1提交他/她的游戏屏幕状态时,我想将玩家1的每个游戏资产位置(X,Y,高度,宽度,角度)传递给玩家2的设备。我想要一些帮助参考,了解玩家2的移动设备如何呈现其UI游戏屏幕以呈现玩家1的游戏资产位置。

想在Swift& amp;中提及这一点。 Andriod的。我不想使用任何游戏引擎。

1 个答案:

答案 0 :(得分:1)

执行此操作的一种方法是在所有设备上保持一致的场景大小。假设场景是2000 x 2000,那么在不同设备上唯一不同的是在任何给定时间可见的场景部分。由此可以很容易地获得资产的坐标,因为您不是相对于设备的原点,而是相对于场景的坐标。另一种方法是百分比。这样做,你会说x = xOnScreen / totalScreenWidth和y = yOnScreen / totalScreenHeight。然后,当您使用其他设备时,只需将设备totalScreenWidth乘以百分比即可获得屏幕上的缩放位置。第一种方法是保持宽高比的最佳方法。