小编Pau*_*aul的帖子

如何阻止Python Websocket客户端"ws.run_forever"

我正在使用"ws.run_forever"启动我的Python Websocket,另一个来源声称我应该使用"run_until_complete()"但这些函数似乎只对Python asyncio可用.

如何停止websocket客户端?或者如何在没有永远奔跑的情况下启动它.

python websocket

5
推荐指数
2
解决办法
7469
查看次数

Javascript多人游戏-用于游戏/物理逻辑的requestAnimationFrame吗?

我正在开发一个基于Javascript的多人游戏。到目前为止,我已经准备好基本的服务器,客户端和网络。

我确实遇到了一个问题,我的播放器在120Hz屏幕上的移动速度比60Hz屏幕快。我已经通过将玩家的移动速度乘以'requestAnimationFrame'的变化时间来解决此问题。

然而; 将动画与逻辑分离是更好的解决方案吗?

如:

//Game loop; Do each 1/60th of a second
setInterval(gameTick, 1000/60);
function gameTick(){
  player.handleKeys();
  enemies.foreach( (enemy) => {
    enemy.update();
  });
}

//Draw loop; match to player screen refresh rate
window.requestAnimationFrame(gameLoop);
function gameLoop() {
    player.draw();
    enemies.foreach( (enemy) => {
    enemy.draw();
  });
  window.requestAnimationFrame(gameLoop);
}
Run Code Online (Sandbox Code Playgroud)

尽管差异可能是“可以忽略的”,但我想避免使用240Hz服务器向服务器“发送垃圾邮件”的播放器,并且要比其他播放器更具优势。

另一方面,对于240Hz显示器;您的键盘输入只有4帧中的1帧会被处理,因此感觉不那么流畅吗?

我要问的原因是,这将是一场竞争性游戏,因此应保持平衡。但是我检查了各种似乎一致同意使用requestAnimationFrame的资源(即使是逻辑;不仅是图形),尽管我对此表示怀疑,并想知道哪个是正确的(和/或用于专业人士)。竞技游戏)。

javascript game-physics real-time-multiplayer

5
推荐指数
1
解决办法
45
查看次数