我正在开发一款游戏,我想我会添加一个多人游戏选项。这是一个实时游戏,像蛇或这样的事情,所以我真的快更新精灵的位置:实时java游戏:套接字或RMI
while (isRunning) {
...
if (sprite instanceof PlayerSprite) {
PlayerSprite player = ((PlayerSprite) sprite);
collisionManager.checkCollision(player, map, elapsedTime, currTime);
updatePosition(player, elapsedTime);
player.animeUpdate(elapsedTime);
}
...
}
我第一次尝试与RMI:我存储在一个对象中的每个位置,我远程做到了。所以服务器和客户端都可以更新它。但正如我所说,它需要更新实时。 而RMI看起来并不能解决这个问题。但我真的是初学者,所以我不知道。
所以我的问题是:RMI或简单的IO(套接字)将是实时游戏的最佳解决方案?
如果套接字更好:我可以通过ObjectOutput/ObjectInput将位置存储对象发送到客户端,更新对象(并绘制到屏幕),然后将更新的对象发送回服务器,依此类推?
在此先感谢:)
非常感谢链接到KryoNet! –
谢谢,它看起来不错。我会首先尝试使用简单套接字,我对它有点熟悉。然后我会给Kryonet一个镜头:) – Aksirba