![](images/chestnut/misc/left.gif) |
30.07.2013, 20:50
|
#1
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
Объясните чем фотон отличается от обычной сети юнити? И можно юнитвской сетью сделать игру на человек 30?
И фотон платный или бесплатный? Ибо скачать его можно бесплатно.
Последний раз редактировалось pax, 01.08.2013 в 15:38.
|
(Offline)
|
|
30.07.2013, 21:03
|
#2
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
На 30 человек можешь использовать Unity сеть. Фотон со своим сервером бесплатно до 100 игроков одновременно, в облаке 20.
Photon Unity Networking отличается тем, что есть лобби и лодбалансер в комплекте + некоторые дополнительные фичи для организации сети на основе лобби. Скачиваемый сервер кроме того позволяет свои модули писать и это будет уже твоя сеть, только транспортный уровень будет по протоколу фотона.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
31.07.2013, 01:44
|
#3
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
До 100 игроков, это когда в роли сервера выступает один из игроков?
А облако это выделенный сервер, который отдельно оплачивать?
лобби это что?
Кстати, серверная часть же тоже просчитывает физику. В фотоне тоже PhysX как и в юнити?
|
(Offline)
|
|
31.07.2013, 07:41
|
#4
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
100 игроков подключенных к серверу фотона. Сервер фотона ставится отдельно.
Облако это много серверов фотона связанных лод балансером и выполняющих роль транспорта пакетов. Оплата ежемесячная, платить за лицензию не надо.
Лобии это комнатная система, с сервера после подключения можешь получать список комнат, в которых играют.
В сервере фотона нет физики, если ты будешь сам серверный модуль писать, то можешь подключить любой движок на Net, например http://bepuphysics.codeplex.com/
Photon Unity Networking работает с облаком, т.е. это плагин эмулирующий подобие Unity сети, сервер (облако или твой собственный) просто передает пакеты, а один из игроков является мастер клиентом, который может обрабатывать основную логику, так же устроена Unity сеть. Но фотон лишен недостатка того, что если мастер-клиент отключается, то выкидывает всех. В фотоне мастер-клиентом становится кто-то другой в этой комнате и все продолжают играть.
В облаке исключена серверная логика, если ты хочешь чтобы логика обрабатывалась именно на сервере, то тебе надо писать свой модуль и иметь собственный сервер.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
31.07.2013, 14:35
|
#5
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
Спасибо, pax. Что-то начинаю понимать.
Значит если используется один сервер, то одновременно может быть 100 игроков, а если используется облако(несколько серверов), то одновременно может быть лишь 20 игроков. Странное ограничение.
Как я понял комнаты позволяю играть игрокам отдельно друг от друга. В юнити разве этого не сделать?
Всегда считал, что основная логика и физика обрабатывается на сервере, а не на клиенте. Интернет клиента скорее всего будет не достаточно быстр. Да и всякие хитрости можно будет сделать на клиенте. Например увеличить себе денег. Хорошо бы теперь разобраться, что обрабатывать на сервере, а что на мастер-клиенте.
|
(Offline)
|
|
31.07.2013, 15:30
|
#6
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
Один сервер - твой сервер, облако это не твои ресурсы, которые тебе предоставляются бесплатно на 20 слотов.
Photon Unity Networking от сети Unity отличается не сильно, есть некоторые преимущества (лобби, лодбалансер, параметры игроков и комнат, кто из друзей онлайн и еще некоторые). Если ты планируешь делать сеть просто на 30 игроков, то используй Unity сеть. С фотоном придется устанавливать его сервер. А так Unity приложение само может стать сервером.
С облаком фотона ты не сможешь ничего обрабатывать на сервере, логика будет только на клиенте.
У меня в роботах схема такая:
бои - облако с Photon Unity Networking,
сохранение прогресса - PHP + MongoDB (свой сервер) с некоторой защитой с запросами по WWW
|
(Offline)
|
|
31.07.2013, 18:15
|
#7
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
pax, все равно недопонимаю.
Сервер это программа - серверная часть фотона к которой я могу прицепить свои модули, свою физику и поставить на свой комп или выделенный сервер.
Облако это выделенный сервер фотона на котором уже установлена серверная часть, и к которой я уже свои модули и физику не прикручу.
Так?
Тогда допустим в шутере что происходит в облаке, а что на мастер-клиенте?
И зачем вообще это облако, если вся логика и физика на мастер-клиенте?
|
(Offline)
|
|
31.07.2013, 21:12
|
#8
|
Знающий
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений (для 180 пользователей)
|
Ответ: Вопросы от новичка
И зачем вообще это облако
|
Для передачи данных между клиентами без необходимости устанавливать специальный сервер.
|
(Offline)
|
|
31.07.2013, 21:49
|
#9
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
seaman, я так понимаю в облаке храниться лишь список IP клиентов?
|
(Offline)
|
|
01.08.2013, 13:03
|
#10
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
Принцип Unity сети:
Игрок создает сервер на своей машине и к нему подключаются остальные. Он должен иметь белый IP.
Если используется мастерсервер, то на нем регистрируется один из игроков как сервер который создает игру (комнату), все к нему подключаются. Функционал матсерсервера был по моему только в списке комнат и количестве игроков в них. Все подключаются к игроку серверу, если позволяет NAT. Часто с в такой ситуации не все могут стать сервером для игры.
Мастер сервер либо тот который предлагает Unity либо свой (надо отдельно ставить). Я уже и не помню где его скачать можно.
Все пакеты идут через игрока, создавшего сервер.
Принцип работы облака:
Используется Photon Unity Networking (PUN)
Все клиенты подключаюся сначала к лодбалансеру (мастерсервер с точки зрения Unity сети). Когда создается комната, то лодбалансер выбирает сервер, на котором есть свободные ресурсы и на нем создает комнату, все клиенты подключаются к этому серверу к этой комнате. Никому не надо иметь белый IP и нет проблем с NAT.
Сервер для комнаты пересылает все пакеты через себя.
Логика выполняется тоже на клиенте, который называется мастерклиентом
Плюсы облака и PUN по сравнению с Unity сетью:- Лодбалансер может для комнат содержать дополнительные параметры, по которым можно их фильтровать. Может показывать кто из друзей онлайн, если передать ему список id друзей (для этого надо реализовать авторизацию).
- Игроки уже имеют параметры, которые пересылаются автоматически всем подключенным к комнате игрокам
- Есть автоматический контроль за инстансингом сетевых объектов
- Нет проблем с NAT и белыми IP т.к. все подключаются к серверу
- при выходе из комнаты мастерклиента всех не выбрасывает, мастерклиентом становится кто-то из оставшихся игроков
Вероятно я еще что-то забыл
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
04.10.2013, 11:38
|
#11
|
Бывалый
Регистрация: 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)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:50.
|