forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Уроки (http://forum.boolean.name/forumdisplay.php?f=145)
-   -   Онлайн проект - Вопросы (http://forum.boolean.name/showthread.php?t=18236)

burovalex 04.06.2013 11:10

Онлайн проект - Вопросы
 
Решил попробовать написать онлайн приложение. Остановился на PhotonCloud.
Довольно удобный инструмент. Незамысловатые функции. Подключение и манипуляции без проблем.

Но увидел на форумах что проблема появляется при столкновении физических объектов - тела входят друг в друга и при обновлении физики вылетают с силой в противоположные стороны.

И тут напал на меня ступор. А как вообще сделать онлайн игруху с физикой??

Кто должен расчитывать физику?

1) Каждый клиент будет расчитывать физику со всеми игроками ну и раз в 200 мс, к примеру, производить синхронизацию позиций игроков.
2) Мастер клиент расчитывает положение всех игроков.
3) Пускать сервер и расчитывать физику на нем.

К каждому пункту появляются вопросы:
1) А не будут ли с лёгкостью клиенты ломать физику и в общем игру (читы)
2) А если мастер отцепится сложно ли будет перегрузить физику на другого мастера.
3) Сервак самый реальный вариант - никто так просто не влезет на него и не сломает. Но расчитывать физику на всех это наверное сервак нужен за пол ляма?

pax 04.06.2013 11:15

Ответ: Онлайн проект - Вопросы
 
А какого плана физика?

Если просто столкновение CharacterController'ов то я просто пользуюсь его функцией Move на небольших перемещениях. На больших синхронизирую позицию через transform.

burovalex 04.06.2013 11:59

Ответ: Онлайн проект - Вопросы
 
Ну меня больше интересует автосимулятор.
А где ты используешь - свой сервак или типа photoncloud, физика на серваке или на клиенте?

pax 04.06.2013 13:15

Ответ: Онлайн проект - Вопросы
 
У меня только столкновения контроллеров, собственно это не совсем физика. Облако. Каждый клиент сам считает эти столкновения.


Часовой пояс GMT +4, время: 21:19.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot