Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Web UDP - публичное "требование"

Web UDP - публичное "требование"

Поделиться
Advanced: Тема повышенной сложности или важная.

Страницы: 1 2 3 4 Следующая

MoKaПостоялецwww26 июля 201721:13#0
За несколько недавних лет рост HTML5 многопользовательских игр сильно возрастает, что привело к таким трендам как IO Games, и большей адаптации HTML5 игр большими популярными игровыми порталами.

Но чтобы продолжать прогресс в сетевой сфере HTML5 игр, нам нужен UDP.
WebRTC - слишком громоздкий и сложный для адаптации под server-client архитектуру. Нам нужно что-то лучше.

Если вы в теме и разделяете потребность в UDP или считаете что это будет хорошим дополнением к HTML5 игровой индустрии то прошу поучавствовать:
Public demand for Web UDP - любое обсуждение, star'ы, PR'ы, и ретвиты - приветствуются.

Мотивируем W3C участников и брозуер вендоров на разработку достойной Spec'и и решения для UDP в вебе!

ТатаринПостоялецwww26 июля 201721:52#1
да как то если честно особо и не нужен этот UDP, я то за всеми руками чем больше возможностей тем лучше, но алгоритмы в UDP писать сложнее, он нужен по сути только в видео и аудио потоках, agar.io не будет переходить на другой алгоритм у них и так дела нормально идут, зачем им это? шутеры делать в браузере все равно не возможно и причина тут не в udp, для серьезных дядек на подобии финансовых учреждений как раз гарантированость доставки важнее им он тоже не нужен, причем это все работает в браузере а они юзают только TCP протоколы, эта надстройка в виде UDP будет им не нужна вообще, вообщем вопрос банальный кому это надо?

Правка: 26 июля 2017 21:53

greencrazycatПостоялецwww26 июля 201721:53#2
MoKa
> на разработку достойной Spec'и и решения для UDP в вебе
хром "отжал" конкурентов и оставил этот рынок себе - или это не так ? :) а для остального есть ws и wss
MoKaПостоялецwww26 июля 201722:15#3
Татарин
> да как то если честно особо и не нужен этот UDP, я то за всеми руками чем
> больше возможностей тем лучше, но алгоритмы в UDP писать сложнее, он нужен по
> сути только в видео и аудио потоках
Вы видимо не читали контента по ссылке, и не в теме сетевого программирования. Если это не по вашей сфере, прошу: проходите мимо.

Татарин
> agar.io не будет переходить на другой алгоритм у них и так дела нормально идут,
> зачем им это?
Сам же создатель agar.io другого мнения: https://news.ycombinator.com/item?id=13264952

Татарин
> шутеры делать в браузере все равно не возможно и причина тут не в udp,
Реалтайм - не только шутеры. Тем более большинство мультиплеер игр страдают по причине TCP специфик. Повторюсь: вы ссылку то и не читали.

greencrazycat
> хром "отжал" конкурентов и оставил этот рынок себе - или это не так ? :) а для
> остального есть ws и wss
Совсем не так. Спеки пишут разные вендоры, и Mozilla почаще будет более активна чем Google. Google же порой активны с первыми имплементациями чтобы мотивировать стабильность spec'и и для тестирования технологии среди ранних адаптеров.

greencrazycatПостоялецwww26 июля 201722:26#4
MoKa
> и Mozilla почаще будет более активна чем Google
когда с "рынка" хром выкидывал неугодные плееры (тот же unity webplayer) - никакая мозила и комунити не могли им в этом помешать
пока пипл хавает продукты типа хрома - то и условия будет диктовать гугл (он то кстати вполне себе поддерживает udp)
ТатаринПостоялецwww26 июля 201722:28#5
MoKa
> Если это не по вашей сфере, прошу: проходите мимо.
Это как раз по моей сфере, так как разрабатываю несколько проектов в стиле io и ммо под браузеры.
> Сам же создатель agar.io другого мнения:
> https://news.ycombinator.com/item?id=13264952
Да но его политика понятна, он же пишет что сервера у него на c++ и мобильные версии уже используют UDP, хорошо человек заморочился и сделал, хотя мне кажется что это уже не он делает а прогеры которых он нанимает, но не будем гадать. Но опять таки он не привел причин, что плохого было в TCP из за чего надо переходит на UDP. Как не странно но его игра стала популярна именно в браузере объемы аудитории в мобильном секторе его игры мне не известны.
> Реалтайм - не только шутеры. Тем более большинство мультиплеер игр страдают по
> причине TCP специфик. Повторюсь: вы ссылку то и не читали.
я ссылку не читал это правда, прошелся по ней мельком, если вы читали вникли то мне бы хотелось услышать ответ от вас по вашему что такого дает UDP, какой будет выйгришь перехода на него? меня как разработчика это очень волнует если причины перевесят простоту и удобство то я займусь переработкой алгоритма.
MoKaПостоялецwww26 июля 201722:33#6
greencrazycat
> когда с "рынка" хром выкидывал неугодные плееры (тот же unity webplayer) -
> никакая мозила и комунити не могли им в этом помешать
> пока пипл хавает продукты типа хрома - то и условия будет диктовать гугл (он то
> кстати вполне себе поддерживает udp)
Плагины - не дают хорошего UX в броузерах. Как и являются постоянной дырой в безопасности. Mozilla были также за отмену плагинов, как и Google. И другие вендоры не фанаты плагинов. На то мобильные броузеры вообще отказались их внедрять.

Татарин
> Это как раз по моей сфере, так как разрабатываю несколько проектов в стиле io и
> ммо под браузеры.
Тогда вам стоит ознакомится со спецификой TCP и ограничениями которые встретите. Я разработал tanx.io ещё до того как IO игры стали трендом.

Татарин
> я ссылку не читал это правда, прошелся по ней мельком, если вы читали вникли то
> мне бы хотелось услышать ответ от вас по вашему что такого дает UDP, какой
> будет выйгришь перехода на него? меня как разработчика это очень волнует если
> причины перевесят простоту и удобство то я займусь переработкой алгоритма.
Там по ссылке как раз это всё и описано. Более того это бородатая тема, суть обсуждения не в том что и для чего лучше (т.к. уже много где обсуждалось), а в наличии возможности использовать оба протокола.
Отличное чтиво на эту тему: https://gafferongames.com/post/udp_vs_tcp/

greencrazycatПостоялецwww26 июля 201722:43#7
MoKa
а.... так вы ребята с PlayCanvas - понятно :)
ну а вообще тема огонь - куда мог распихал ссылку на твит, udp было конечно клёво иметь в webgl
ТатаринПостоялецwww26 июля 201722:48#8
MoKa
я тоже не первый год в этом деле и тоже когда то писал и на UDP и на TCP и теперь вот пишу на js webscoket и я вижу следующее:
The decision seems pretty clear then, TCP does everything we want and its super easy to use, while UDP is a huge pain in the ass and we have to code everything ourselves from scratch.

и потом он говорит что TCP все равно плох потому что:
1. данные отправляются только когда наберется определенное количество, что для маленьких блоков очень плохо
  я не сталкивался с такой проблемой в моих io играх, а вы?
2. то что если один пакет патеряется то надо ждать пока он придет а другие будут стоять в очереди
  да это и есть самое главное отличие от TCP которое все твердят, но опять таки когда вы в последний раз теряли пакеты? допустим это мобильная связь, ну так там просто разрыв происходит, связь в скайп этому достаточно хороший пример.

Получается, что есть большая проблема в реализации алгоритма через UDP потому что многое надо делать самому очень многое "huge pain in the ass and we have to code everything ourselves from scratch" и по идее вы будете используя UDP писать свой TCP алгоритм поверх него, не факт что вы сделаете лучше чем уже есть. Хорошо я могу признать что для большого проекта UDP может сыграть важную роль хоть и его реализация займет время, но для io игры какая польза? опять таки вот у тебя есть танки, я в них играл, какую пользу для тебя даст UDP что именно? например:
разработка ускориться
сервера будут дешевле
будет плавная интерполяция
будет меньше нагрузки на js
?

patsanchik3Постоялецwww26 июля 201722:54#9
Татарин
> но для io игры какая польза?
ты видать шутеры динамичные никогда не делал :)
очевидно же
- синх положения, поворотов и прочих не критичных вещей - udp
- всякие выстрелы, rpc и прочая "ответсвенная" инфа - tcp
а трахаться с экстаполяцией и предсказаниями на tcp - грусть/пичаль
ТатаринПостоялецwww26 июля 201723:03#10
patsanchik3
а кто тут делал?
9К720Участникwww26 июля 201723:04#11
patsanchik3
> - синх положения, поворотов и прочих не критичных вещей - udp
> - всякие выстрелы, rpc и прочая "ответсвенная" инфа - tcp
Я вот не делал. Мне не очень очевидно, что произойдет при потере пакетов, которой так нас тут пугают. Расскажи нам. И как нам поможет в этом случае то, что часть информации идет через udp

Правка: 26 июля 2017 23:05

patsanchik3Постоялецwww26 июля 201723:15#12
9К720
> Мне не очень очевидно, что произойдет при потере пакетов, которой так нас тут
> пугают.
ничего критичного не произойдет
прелесть upd в том что он махонький и быстрый НО может не дойти - ну и хрен с ним тогда
пример - ты играешь за зергов и решил рашануть базу теранов - что ты делаешь ? правильно строишь мильон сабак и отправляешь их на верную смерть - кто нить да добежит и покусает
тут так же - так как ты отправляешь изменения положения перса каждые допустим 10 мс - то не критично даже если каждый второй пакет udp будет пропадать по дороге - простая интерполяция по факту получения пакета каждые 20 мс дадут тебе возможность вполне сносно синхронизировать положение

понятно что если игрок решил тебе задонатить сто тысяч енотов и нажал на кнопку купить в магазине - ни о каком udp уже не думаем - тока tcp - ну или udp но с гарантированной доставкой

Правка: 26 июля 2017 23:18

Mr FПостоялецwww26 июля 201723:18#13
patsanchik3
продолжая аналогию с собаками, представим что одна собака умерла по дороге, и тут все остальные вместо продолжения бега, встали и ждут, когда с базы к ним добежит её замена - это будет TCP)
patsanchik3Постоялецwww26 июля 201723:23#14
Mr F
> встали и ждут, когда с базы к ним добежит её замена
и накроется медным тазом раш на теранов тогда :)
но сабаки на то и сабаки что бы гибнуть пачками но делать своё дело

Страницы: 1 2 3 4 Следующая

/ Форум / Программирование игр / Сеть

2001—2017 © GameDev.ru — Разработка игр