Тема: Project War
Показать сообщение отдельно
Старый 07.10.2014, 16:50   #34
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Project War

Сообщение от h1dd3n Посмотреть сообщение
Ок, для того чтобы дать точную цифру, и ответить на вопрос "во сколько обойдется" мне надо понять, как вообще ты представляешь себе разработку многопользовательской игры (у шутеров есть свои особенности, но то о чем я говорил распространяется на все игры в равной степени). Тут видимо сказывается мое непонимание того что за нах этот ваш Photon Cloud? Кто пишет логику сервера? Как конкретно вычисляется траектория полета гранаты, кто проверяет то что у игрока есть патроны в магазине и т.д.? Как выглядит сообщение клиента серверу (а есть там вообще сервер то ?) при передвижении персонажа ?
Хм... стоимость основанная на моих представлениях... хм...

Про Photon Cloud рассказываю что это такое:
  1. Лобби. Это список комнат. Каждый клиент вошедший в лобби, может получить список комнат, кастомные свойства комнат (на основе которых можно выбрать подходящую для себя), сколько игроков играет в комнате и ее максимум игроков. В лобби игроки друг другу слать сообщения не могут.
  2. Комната. Это то, куда попадают игроки из лобби. Комната хранит кастомные свойства комнаты, список клиентов, кастомные данные клиентов. В комнате есть мастер клиент. Мастер клиент отвечает за поведение сетевых объектов сцены. Если этот клиент выходит из комнаты, то мастерклиентом становится другой клиент.
  3. Когда игрок находится в комнате, он может посылать сообщения
    • всем
    • всем кроме себя
    • мастерклиенту
    • конкретному клиенту
    Все сообщения проходят через сервер комнаты и рассылаются адресатам.
  4. Логики на сервере нет. Сервер только пересылает пакеты. На сколько я понимаю, у Сереги логику объектов сцены обрабатывает мастерклиент, логику выстрелов/гранат обрабатывают клиенты каждый сам за себя.
Примерно так устроен Photon Cloud.

Немного тонкостей: При коннекте сервер фотона перекидывает на сервер, обрабатывающий лобби твоей игры. При входе в комнату клиента перебрасывает на сервер, обрабатывающий комнату. Так работает облако.

PS: практически все в проекте Серега писал сам. Я совсем немного помогал.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
EvilChaotic (08.10.2014), Igor (08.10.2014)