保存数据库的移动/路径

时间:2013-10-20 19:39:29

标签: path move

我正在创建一个足球模拟游戏,我想制作一个匹配的2D视图。我的比赛是90分钟,球场上有22名球员。我怎么能为玩家保存一个动作/路径,这样就不会占用太多空间。我知道我可以保存类似

的东西
Minute: min, 
Player: id, 
X: xCoord, 
Y: yCoord

然后只需将jQuery的对象从A点移动到B点,但我确信它不是最好的解决方案,因为它需要大量的空间和数据库条目。 我正在使用MongoDB,但欢迎所有建议。

1 个答案:

答案 0 :(得分:1)

球员如何移动?它们在主循环的每一步都移动了一点?或者他们走很长的直线,然后突然转弯,走进其他直线?在第一种情况下,你可能需要保存每个毫秒左右(主循环的每一步),或者你可以每十步或每秒保存它们的位置,等等。重放可以插入保存的点(想想重播)看起来像那样“粗糙”,它可以节省你的数据库中的大量空间)。在第二种情况下(直线),你可以保存玩家转向另一个方向的点。在这种情况下,你将保存它们的位置,角度和速度(显然还有时间)。

第一张表可能是(间隔时间可能超过1毫秒,具体取决于机器的功率):

PLAYER  TIME(ms)  X  Y
   1       0      0  0
   1       1      0  2
   1       2      0  4
   1       3      0  7
   1       4      0 10
   1       5      4 13

第二个表格是:

PLAYER  TIME(ms)  X  Y  Dir  Speed
   1       0      0  0   90    2
   1       2      0  4   90    3
   1       4      0 10   60    5

或类似的东西。 Dir是度数的方向。希望有所帮助!