Сетевые игры
В-общем пока что хочу сделать просто перемещение (WASD) кубиков-игроков по сети и в перспективе стрельбу шариками. Почему-то мне всегда казалось, что сделать сетевое перемещение это весьма просто. Однако прочитал я вот это:
https://developer.valvesoftware.com/...g_compensation http://www.racer.nl/tech/multiplayer.html И был впечатлён. Переварив в голове прочитанное плюс более ранние знания, я придумал себе такой список действий, чтоб побегать с пацанчиками: 1. Определить понятие NMO — Net Manipulated Objects. То есть то, что может изменяться по сети. 2. Определить понятие Snapshot — "снимок" состояний всех NMO в определённый момент времени. 3. Определить понятие синхронизации. Вести отсчёт по миллисекундам с начала игры (или просто по системным миллисекундам). Например номер снапшота 100 соответствует стольки-то мсек на сервере и стольки-то на клиенте. 4. Определить понятие события. Например "подключился новый игрок" и "среспаунился новый разрушаемый ящик" или "ящик был разбит к чёртовой бабушке". 5. Запилить линейную интерполяцию NMO на клиенте. Время на клиенте всегда на 100 мсек меньше чем на сервере, чтобы было что интерполировать. Например для теста запилить NMO-куб, который будет по кругу летать на сервере и чтоб он отображался на клиенте. Пока без управления со стороны игрока. 6. Запилить игроков и передачу управления на сервер. 7. Запилить предсказание на клиенте и сверку с ответом сервера. Думаю на начальном этапе от предсказания на клиенте пока можно отказаться (лагать будет управление на 100 мс, но жить можно в принципе, а если игра не FPS, то и вовсе будет незаметно). В-общем, буду благодарен, если кто-то, имеющий отношение к, раскритикует мой список и укажет на явные недостатки, чтоб я не ходил по граблям. А также выслушаю ваши предложения относительно организации мультиплеера. |
Ответ: Сетевые игры
Если не ошибаюсь, такая тема уже была
http://forum.boolean.name/showthread.php?t=17766 |
Re: Сетевые игры
ABTOMAT, как успехи на сетевом поприще?
|
Ответ: Сетевые игры
Хреновые. Пока что показывать нечего. Зря я взялся. надо было сделать пока что-нибудь сингловое (тем более новые фичи движка остались неоттестированы).
|
Ответ: Сетевые игры
Цитата:
Всегда так, делаем шаг назад и пробуем решить задачу иначе, кто с тебя спрашивать то будет?;) ABTOMATЭ тебя взяли в плен американцы? и заставили делать NMO Half Life 3?!:-) |
Ответ: Сетевые игры
Раз взялся — надо доделать.
|
Ответ: Сетевые игры
Цитата:
Ну Я какбэ.. и не призывал всё бросить... |
Часовой пояс GMT +4, время: 15:25. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot