Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Сеть

Ответ
 
Опции темы
Старый 30.07.2013, 20:50   #1
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Объясните чем фотон отличается от обычной сети юнити? И можно юнитвской сетью сделать игру на человек 30?
И фотон платный или бесплатный? Ибо скачать его можно бесплатно.

Последний раз редактировалось pax, 01.08.2013 в 15:38.
(Offline)
 
Ответить с цитированием
Старый 30.07.2013, 21:03   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

На 30 человек можешь использовать Unity сеть. Фотон со своим сервером бесплатно до 100 игроков одновременно, в облаке 20.
Photon Unity Networking отличается тем, что есть лобби и лодбалансер в комплекте + некоторые дополнительные фичи для организации сети на основе лобби. Скачиваемый сервер кроме того позволяет свои модули писать и это будет уже твоя сеть, только транспортный уровень будет по протоколу фотона.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
WISHMASTER35 (31.07.2013)
Старый 31.07.2013, 01:44   #3
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

До 100 игроков, это когда в роли сервера выступает один из игроков?
А облако это выделенный сервер, который отдельно оплачивать?
лобби это что?
Кстати, серверная часть же тоже просчитывает физику. В фотоне тоже PhysX как и в юнити?
(Offline)
 
Ответить с цитированием
Старый 31.07.2013, 07:41   #4
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

100 игроков подключенных к серверу фотона. Сервер фотона ставится отдельно.

Облако это много серверов фотона связанных лод балансером и выполняющих роль транспорта пакетов. Оплата ежемесячная, платить за лицензию не надо.

Лобии это комнатная система, с сервера после подключения можешь получать список комнат, в которых играют.

В сервере фотона нет физики, если ты будешь сам серверный модуль писать, то можешь подключить любой движок на Net, например http://bepuphysics.codeplex.com/


Photon Unity Networking работает с облаком, т.е. это плагин эмулирующий подобие Unity сети, сервер (облако или твой собственный) просто передает пакеты, а один из игроков является мастер клиентом, который может обрабатывать основную логику, так же устроена Unity сеть. Но фотон лишен недостатка того, что если мастер-клиент отключается, то выкидывает всех. В фотоне мастер-клиентом становится кто-то другой в этой комнате и все продолжают играть.

В облаке исключена серверная логика, если ты хочешь чтобы логика обрабатывалась именно на сервере, то тебе надо писать свой модуль и иметь собственный сервер.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
WISHMASTER35 (31.07.2013)
Старый 31.07.2013, 14:35   #5
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Спасибо, pax. Что-то начинаю понимать.
Значит если используется один сервер, то одновременно может быть 100 игроков, а если используется облако(несколько серверов), то одновременно может быть лишь 20 игроков. Странное ограничение.
Как я понял комнаты позволяю играть игрокам отдельно друг от друга. В юнити разве этого не сделать?

Всегда считал, что основная логика и физика обрабатывается на сервере, а не на клиенте. Интернет клиента скорее всего будет не достаточно быстр. Да и всякие хитрости можно будет сделать на клиенте. Например увеличить себе денег. Хорошо бы теперь разобраться, что обрабатывать на сервере, а что на мастер-клиенте.
(Offline)
 
Ответить с цитированием
Старый 31.07.2013, 15:30   #6
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Один сервер - твой сервер, облако это не твои ресурсы, которые тебе предоставляются бесплатно на 20 слотов.

Photon Unity Networking от сети Unity отличается не сильно, есть некоторые преимущества (лобби, лодбалансер, параметры игроков и комнат, кто из друзей онлайн и еще некоторые). Если ты планируешь делать сеть просто на 30 игроков, то используй Unity сеть. С фотоном придется устанавливать его сервер. А так Unity приложение само может стать сервером.

С облаком фотона ты не сможешь ничего обрабатывать на сервере, логика будет только на клиенте.

У меня в роботах схема такая:
бои - облако с Photon Unity Networking,
сохранение прогресса - PHP + MongoDB (свой сервер) с некоторой защитой с запросами по WWW
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 31.07.2013, 18:15   #7
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

pax, все равно недопонимаю.
Сервер это программа - серверная часть фотона к которой я могу прицепить свои модули, свою физику и поставить на свой комп или выделенный сервер.
Облако это выделенный сервер фотона на котором уже установлена серверная часть, и к которой я уже свои модули и физику не прикручу.
Так?

Тогда допустим в шутере что происходит в облаке, а что на мастер-клиенте?
И зачем вообще это облако, если вся логика и физика на мастер-клиенте?
(Offline)
 
Ответить с цитированием
Старый 31.07.2013, 21:12   #8
seaman
Знающий
 
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений
(для 180 пользователей)
Ответ: Вопросы от новичка

И зачем вообще это облако
Для передачи данных между клиентами без необходимости устанавливать специальный сервер.
(Offline)
 
Ответить с цитированием
Старый 31.07.2013, 21:49   #9
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

seaman, я так понимаю в облаке храниться лишь список IP клиентов?
(Offline)
 
Ответить с цитированием
Старый 01.08.2013, 13:03   #10
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Принцип Unity сети:

Игрок создает сервер на своей машине и к нему подключаются остальные. Он должен иметь белый IP.

Если используется мастерсервер, то на нем регистрируется один из игроков как сервер который создает игру (комнату), все к нему подключаются. Функционал матсерсервера был по моему только в списке комнат и количестве игроков в них. Все подключаются к игроку серверу, если позволяет NAT. Часто с в такой ситуации не все могут стать сервером для игры.
Мастер сервер либо тот который предлагает Unity либо свой (надо отдельно ставить). Я уже и не помню где его скачать можно.
Все пакеты идут через игрока, создавшего сервер.

Принцип работы облака:

Используется Photon Unity Networking (PUN)

Все клиенты подключаюся сначала к лодбалансеру (мастерсервер с точки зрения Unity сети). Когда создается комната, то лодбалансер выбирает сервер, на котором есть свободные ресурсы и на нем создает комнату, все клиенты подключаются к этому серверу к этой комнате. Никому не надо иметь белый IP и нет проблем с NAT.
Сервер для комнаты пересылает все пакеты через себя.

Логика выполняется тоже на клиенте, который называется мастерклиентом


Плюсы облака и PUN по сравнению с Unity сетью:
  1. Лодбалансер может для комнат содержать дополнительные параметры, по которым можно их фильтровать. Может показывать кто из друзей онлайн, если передать ему список id друзей (для этого надо реализовать авторизацию).
  2. Игроки уже имеют параметры, которые пересылаются автоматически всем подключенным к комнате игрокам
  3. Есть автоматический контроль за инстансингом сетевых объектов
  4. Нет проблем с NAT и белыми IP т.к. все подключаются к серверу
  5. при выходе из комнаты мастерклиента всех не выбрасывает, мастерклиентом становится кто-то из оставшихся игроков

Вероятно я еще что-то забыл
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
WISHMASTER35 (01.08.2013)
Старый 04.10.2013, 11:38   #11
Morganolla
Бывалый
 
Аватар для Morganolla
 
Регистрация: 03.12.2008
Адрес: наша раша
Сообщений: 762
Написано 129 полезных сообщений
(для 245 пользователей)
Ответ: Различия между сетью Unity и Photon Server/Cloud

В случае с облаком по идее в >2 раза возрастают задержки с передачей пакетов? Это будет критично для динамичных игр с физикой?
Вообще интересно какая средняя задержка передачи пакета от сервера Юнити к клиенту?
__________________
Reality Simulation Games
Core 2 Duo 2,8GHz, RAM 1Gb, ATI R5670 1Gb. WinXP 32
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com