Вопросы об обновлении моей игры node.js

Я делаю небольшую игру, используя node.js для сервера и файл.js, встроенный в холст HTML5 для клиентов. У каждого игрока есть объект, который он может перемещать с помощью клавиш со стрелками.

Теперь я сделал 2 разных способа обновления игры, один из которых отправлял новую позицию игрока каждый раз, когда она менялась. Это сработало, но мой сервер должен был обрабатывать около 60 пар x/y в секунду(скорость обновления клиента 30/сек и 2 игрока двигались без-остановки). Второй метод заключался в том, чтобы отправлять новую позицию и скорость/направление объекта игрока только тогда, когда он меняет свою скорость направления, поэтому в основном на других клиентах движение игрока интерполировалось с использованием направления/скорости из последнего обновления. Моему серверу приходилось обрабатывать очень мало пакетов x/y7speed/direction, однако мои клиенты испытывали небольшую задержку при поступлении пакетов, поскольку интерполированная позиция часто немного отличалась от фактической позиции, записанной в пакете.

Теперь мой вопрос :Какой метод вы бы порекомендовали? И как я должен компенсировать задержку для любого метода?

7
задан Wingblade 12 April 2012 в 12:26
поделиться