|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.12.2012, 00:14 | #1 |
Форумчанин
Регистрация: 21.02.2009
Сообщений: 372
|
Движение объекта по полю в мультиплеерной игре
Как реализовано движение объекта по полю в мультиплеерных играх? Например, в играх жанра RPG?
Есть клиент, есть сервер. Пользователь кликает на поле в определенном месте и на клиенте запускается анимация перемещения объекта из точки A в точку B. А каким образом сервер контролирует положение объекта?
No name. Just Linel.
|
23.12.2012, 00:47 | #2 | |
Участник клуба
Регистрация: 30.07.2009
Сообщений: 1,601
|
Цитата:
|
|
23.12.2012, 11:43 | #3 | |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
Цитата:
Пользователь кликает на поле в определенном месте и клиент отсылает сообщение об этом серверу. Сервер осуществляет необходимые проверки и отсылает клиенту команду на перемещение. Если, скуажем, сервер решит, что точка В недоступна, он даст команду на перемещение из А в ближайшую к В доступную точку С. Клиент получает команду и запускает анимация перемещения объекта из точки A в точку С. Разумеется, это в первом приближении. Из-за наличия существенных задержек на передачу сигнала этот алгоритм приходится несколько усложнять. Как это сделать - решает каждый разработчик самостоятельно. Один из возможных вариантов. Есть сервер и клиент. Сервер хранит всю информацию об окружающем мире. Часть этой информации он передает клиенту. Пользователь щелкнул мышью по экрану: если по прогнозу клиента эта точка недоступна - ноль реакции, если же доступна: клиент отослал сообщение об этом на сервер, а сам пока стал перемещать персонажа из А в В. Сервер ответил, что персонажа нужно перемещать не в В, а в С. Клиент получил от сервера инструкцию и скорректировал траекторию. Последний раз редактировалось s-andriano; 23.12.2012 в 11:49. |
|
23.12.2012, 17:06 | #4 |
Старожил
Регистрация: 19.04.2010
Сообщений: 2,702
|
Проверяется конечная и начальная точка, что посередине сервер не контролирует.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Движение объекта (С++) | фыф123 | Помощь студентам | 1 | 06.07.2011 20:50 |
Движение объекта | dlnk | C# (си шарп) | 1 | 11.03.2011 21:17 |
Движение объекта | ill2005 | Помощь студентам | 2 | 27.09.2010 21:32 |
Движение в игре | Serg-Grin | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 16 | 17.07.2010 14:10 |
Delphi: движение маркера по игровому полю | Blondy | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 16 | 08.02.2010 12:25 |