Проект Mozilla совместно с компанией Epic Games выполнили (https://blog.mozilla.org/blog/2013/03/27/mozilla-is-unlockin.../) портирование игрового движка Unreal Engine 3 для запуска внутри браузера в виде web-приложения. Как и ранее представленные порты движка Unigine (http://www.opennet.me/opennews/art.shtml?num=36185) и 3D игры BananaBread (https://developer.mozilla.org/en-US/demos/detail/bananabread) на движке Sauerbraten,
,работа Unreal в браузере базируется на использовании компилятора Emscripten (http://www.opennet.me/opennews/art.shtml?num=35313), преобразующего код проектов на C/C++ в представление на языке JavaScript. Для вывода 3D-графики задействован WebGL.
Отмечается, что внесённые в JavaScript-движок оптимизации, выполненные в рамках проекта Asm.js (http://www.opennet.me/opennews/art.shtml?num=36468), позволили поднять производительность работающих в браузере игр до уровня, пригодного для комфортной работы с ними. В последнее время организация Mozilla активно продвигает использование Web в качестве платформы для разработки современных высокопроизводительных 3D-игр, позволяющей выполнять игры с производительностью близкой к нативным приложениям, не требуя при этом установки дополнительных плагинов.
Ожидается, что в ближайшем будущем число портированных для работы в браузере популярных игр будет расти. Распространение игр через Web упростит их доставку до потребителей и снизит расходы за счёт упразднения лишних звеньев между производителем и потребителем. Использование web-технологий также позволяет расширить спектр поддерживаемых платформ мобильными устройствами. Дополнительно, с такими поизводителями, как Disney, EA и ZeptoLab, ведётся работа по задействованию в их топовых продуктах представленных технологий оптимизации производительности.<center><iframe width="640" height="360" src="http://www.youtube.com/embed/XsyogXtyU9o?rel=0" frameborder="0" allowfullscreen></iframe></center>
Одновременно представлена (https://hacks.mozilla.org/2013/03/webrtc-data-channels-for-g.../) новая технология для организации взаимодействия пользователей в многопользовательских играх, работающих в web-браузере. Технология основана на использовании протокола WebRTC (http://www.opennet.me/opennews/art.shtml?num=36029) и позволяет игрокам осуществлять взаимодействие в форме P2P-сети, без привлечения отдельных игровых серверов. Для демонстрации возможностей новой системы подготовлен специальный многопользовательский вариант игры BananaBread (https://developer.mozilla.org/en-US/demos/detail/bananabread), работающей на базе 3D-движка Sauerbraten.
<center><iframe width="640" height="360" src="http://www.youtube.com/embed/nqihx_K-Y-o?rel=0" frameborder="0" allowfullscreen></iframe></center>
URL: https://blog.mozilla.org/blog/2013/03/27/mozilla-is-unlockin.../
Новость: http://www.opennet.me/opennews/art.shtml?num=36528
Конец эпохи standalone игр...
конец эпохи flash-игр, теперь Adobe не нужен
> Конец эпохи standalone игр...Эм... знаете, Xonotic у меня FullHD на 60FPS с высоким качеством отображает. А BananaBread спасибо если 30FPS выжимает на довольно хилых настройках. С завалом до десятка FPS на некоторых сценах. Как технологическое демо - круто, да. Как нечто играбельное - гм, у меня doom на 486 плавнее бегал... :)
>> Конец эпохи standalone игр...
> Эм... знаете, Xonotic у меня FullHD на 60FPS с высоким качеством отображает.
> А BananaBread спасибо если 30FPS выжимает на довольно хилых настройках. С
> завалом до десятка FPS на некоторых сценах. Как технологическое демо -
> круто, да. Как нечто играбельное - гм, у меня doom на
> 486 плавнее бегал... :)мы над этим работаем :`)
> мы над этим работаем :`)ну нет, дум вам испортить уже не удастся!
> ну нет, дум вам испортить уже не удастся!Мозильщики кстати его запортировали под это самое :). И да, оно таки тупило. Ну то-есть играть в принципе можно, но на 80486 работало куда плавнее, опять же :)
>> мы над этим работаем :`)
> ну нет, дум вам испортить уже не удастся!не пори херни
удастся?! я в волнении. у кого вы спёрли time machine?
> удастся?! я в волнении. у кого вы спёрли time machine?Тебе дать закомпиленый emscripten'ом doom? Я не знаю откуда они у меня материализовались, но они существуют.
> Тебе дать закомпиленый emscripten'ом doom? Я не знаю откуда они у меня
> материализовались, но они существуют.старый-то при этом никуда не делся. а хреновые реплики — фиг с ними, оригинал не портят.
> мы над этим работаем :`)Да я и не спорю что донкихотам удобнее придумать себе проблему а потом лихо с ней рубаться. А то что можно было и в 10 раз проще - не аргумент. Ведь хочется же любимым микроскопом все гвозди заколотить. А насколько он там не годится - а мы вот @#$нем посильнее! Ах, разваливается? Упрочним конструкцию! Сделаем микроскоп титановым!
>> мы над этим работаем :`)
> Да я и не спорю что донкихотам удобнее придумать себе проблему а
> потом лихо с ней рубаться. А то что можно было и
> в 10 раз проще - не аргумент. Ведь хочется же любимым
> микроскопом все гвозди заколотить. А насколько он там не годится -
> а мы вот @#$нем посильнее! Ах, разваливается? Упрочним конструкцию! Сделаем микроскоп
> титановым!Не пори херни
> Не пори херниЧертовски аргументированное мнение :). Ох уж эти скрипткидисы :).
asm.js работает в несколько потоков? чтобы несколько процессоров задействовать
Это совсем разные уровни.
Поддержка Asm.js работает на уровне типов данных, памяти, инструкций и регистров.
Потоки - это один из верхних уровней цельного приложения.
Во-первых, там как минимум примитивы синхронизации понадобятся. Без них можно, но для игр будет плохо.
В-вторых, (как минимум сейчас) asm.js прибит гвоздями к конкретному мозилловскому движку. У которого с многопоточностью всё плохо, насколько я помню.
1 - Это не уровень костыля asm.js.
2 - "В javascript с многопоточностью всё плохо" - вот так будет корректнее.
это всё не уровень костыля asm.js, но раз уж взялись - могли бы и это накостылить
> это всё не уровень костыля asm.js, но раз уж взялись - могли бы и это накостылитьвсё работает примерно начиная с Firefox версии 4 ...
https://developer.mozilla.org/en-US/docs/DOM/Worker
кстате говоря -- во времена Firefox 4 -- ещё даже в зачатке не было asm.js --- а многопоточность уже была :-D
> 2 — «В javascript с многопоточностью всё плохо» — вот так будет
> корректнее.в javascript с многопоточностью всё ровно так, как с ней в движке, его реализующем.
> в javascript с многопоточностью всё ровно так, как с ней в движке, его реализующем.Я напишу программу с потоками на базе pthreads, загоню её в emscripten. Что я получу на выходе - будет в два потока исполняться? Вот что меня интересует.
>> в javascript с многопоточностью всё ровно так, как с ней в движке, его реализующем.
> в javascript с многопоточностью всё ровно так, как с ней в движке, его реализующем.Воркеров современные движки все наверное уже умеют. Правда воркеры - очень частный случай JS.
с многопоточностью всё плохо только у вас в голове
> с многопоточностью всё плохо только у вас в головеКороче, программа с тремя потоками. Компилирую через emscripten + asm.js. Запускаю в браузере с поддержкой многопоточности.
Я получу код работающий на трех потоках? При условии поддержки со стороны движка.
А какие собственно приемущества в отличии от запуска нативной игры в собсвенном окне? Точто она "врезана" в окно браузера - спорное приемущество...
Кроссплатформенность? Ну это решается тем же нативным Unreal Ungine.
Заходишь на сайт.
Играешь.
ВСЁ.Ничего не нужно самому качать и устанавливать. Ни игру, ни её лаунчер, который сам всё скачает, ни плагин для браузера. Никаких лишних телодвижений. Ну и кроссплатформенность без приложеня вообще каких-либо усилий. Если там работает браузер — там работает и игра.
Это смерти подобно для такого мусора, как плагин Unity 3D и поддержка запуска платформо-зависимых бинарей (NaCl) в Хроме.
может. теоретически. а практически — если:
а) потратить на это побольше людских ресурсов (прекращаем писать браузер, пишем JIT);
б) поломать нафиг обратную совместимость.в общем, переделать язык и сделать браузер платформой для запуска большого софта, забив на оптимизацию мелкоскриптов вообще. правда, ребятам, которые пишут java, так пока и не удалось уложить на лопатки AOT-компиляторы. но не стоит рассказывать всё и сразу.
> пока и не удалось уложить на лопатки AOT-компиляторы. но не стоит
> рассказывать всё и сразу.Я только одно не понимаю - что им просто не взять какой-нить LLVM и не грузить готовый биткод, перегоняя его в нативный у клиента? Не, надо то же самое делать путем длительного кача растяжки годами и искренне гордиться, когда левая пятка все-таки начинает чесать правое ухо. И LLVM главное при деле. Но через таааааакую ж"№у!!!
укушены жаваскриптом. вероятность излечения мала. представляют опасность для окружающих ввиду усиленых возможностей к распространению так называемого «индуцированого безумия». рекомендовано не допускать контактов с молодёжью и психически нестабильными людьми. для психически стабильных индивидуумов и индивидуумов с сильно пониженым интеллектом не опасны.
> Заходишь в Стим.А это где? Можете на openstreetmap отметить?
Сорри за самопеар, но:
http://slayers.ru/lab/0.3.2.1/А теперь найди в моей гамзе микроплатежи и поставь стим на ARM
Мой индикатор упоротости зашкалило. Ржал-с.
Я даже не знаю с чего начать, но если б я делал игру с Линой, то в качестве противников хотя-бы бандитов использовал бы, а не кроликов гадящих по-человечески и носящих с собой золотые монетки.
С другой стороны - забавно: вляпался в г@вно - помер :). Даешь лопату для уборки за кроликами!
> С другой стороны - забавно: вляпался в г@вно - помер :). Даешь
> лопату для уборки за кроликами!А я что-то забил на разработку в последнее время. Работы много, на развлечения времени мало. И самая проблема в том, что работа интересная и хочется её работать, так что пока всю не отработаю — не видать Лине лопаты.
На вот ещё поугарай (на этот раз Diablo 3):
http://slayers.ru/morehiddenfootprints/0.4.3/
69 16 5 0 0 и пожалуй хватит этой нарколукморхидденфутпринтс. ^_^
> 69 16 5 0 0 и пожалуй хватит этой нарколукморхидденфутпринтс. ^_^А я ещё расскажу, что в каждой из этих игрулей есть по пасхалке
Не-не-не-не-не, Дэвид Блэйн, не-не-не-не-не.
> А теперь найди в моей гамзе микроплатежи и поставь стим на ARMБоюсь, на ARM это будет слайдшоу, глядя на то как этот простейший аналог "марио" лихо жрал 50% ядра AMD FX-8120. Это при том что родоначальник с примерно такой же по уровню графикой не тормозил даже на жалком 8-битнике на несколько МГц.
С другой стороны - ок, возможность сделать что-то марио-образное без флеша на браузере засчитана. Флеш таки походу умрет в казуалках. Так ему и надо :).
А так - мне из казуальных игр больше понравилось http://fightcodegame.com - графика, конечно, дрянь, но вот возможность влобовую срубиться с другими своми кодом против чужого кода... мм... вот это забавно, да :).
>[оверквотинг удален]
> Боюсь, на ARM это будет слайдшоу, глядя на то как этот простейший
> аналог "марио" лихо жрал 50% ядра AMD FX-8120. Это при том
> что родоначальник с примерно такой же по уровню графикой не тормозил
> даже на жалком 8-битнике на несколько МГц.
> С другой стороны - ок, возможность сделать что-то марио-образное без флеша на
> браузере засчитана. Флеш таки походу умрет в казуалках. Так ему и
> надо :).
> А так - мне из казуальных игр больше понравилось http://fightcodegame.com - графика,
> конечно, дрянь, но вот возможность влобовую срубиться с другими своми кодом
> против чужого кода... мм... вот это забавно, да :).Там довольно много коллизии и векторная физика считаются, так то оно и x86 на 3ггц вешает при большом количестве говна и зайцев. Так что asm.js будет очень кстати.
А слайдшоу не больше, чем от флешек.
чёрт, Лина, говно и зайцы. я уже почти готов включить js ради этого, так вы тут всё вкусно описываете.
> этого, так вы тут всё вкусно описываете.Мне больше http://fightcodegame.com/ понравился. После пары часов насилия над JS (я на нем программировать почти не умею, но поскольку он curly bracket, то... ) - совершенно тупой быдлокод на 50 строк с первой попытки ввалил монстру с первого места. У которого невъ...й анализ поля боя и предсказание движения оппонента. В сумме кил на 30 кода. Все-таки KISS лишний раз доказал свое право на жизнь. Делом и пулями XD.
> Мне больше http://fightcodegame.com/ понравился.у меня эта хрень так и не заработала. мне что-то лень стало точно выяснять, какие же ещё скрипты и с каких сайтов ей нужны, чтобы запуститься, и я просто оставил её в покое.
> Ничего не нужно самому качать и устанавливать.А ресурсы, видимо, материализуются у вас в браузере по волшебству? Устанавливать, может, и не надо, но качать надо не меньше. А учитывая, что время загрузки установленной локально копии и удаленной браузерной будет несколько разным, я лучше буду ставить локально, по старинке.
Ключевое слово «самому».
Браузер всё будет качать и сохранять автоматически.
Причём можно запуститься с одним уровнем и набором текстур под него, а остальное подгружать в фоне.
> Ключевое слово «самому».Как же мы на Линуксе живём столько лет и мучаемся с apt-get?
мне интересно когда все эти дегенераты, любители хтмлХ везде, встретятся с любителями системд и аннигилируют.
Думаешь кого-то за пределами линукса волнует как мы на нём обитаем?
Тем более, что если ты хочешь поиграть в игру общим объёмом в 20 Гб, то тебе таки придётся скачать все эти 20 Гб до того, как её запустить. Всяческим MMOРПГ (я знаю, что не нужно, оставь при себе) это просто таки манна небесная. Вывалить игроку морду создания персонажа и отгружать уровни по-одному, да ещё и работает сразу везде и патчи накатываются абсолютно прозрачно для игрока без ожидания их установки.
> морду создания персонажа и отгружать уровни по-одному,При том в нормальной RPG они весят столько что игрок волком взвоет при переходе между картами, если у него нет гигабитного интернета. Одно дело если заранее хренадцать гигз слилось и потом быстро грузятся с диска, и другое - если тебе каждый раз при переходе между картами надо по ...цать минут курить бамбук.
>> морду создания персонажа и отгружать уровни по-одному,
> При том в нормальной RPG они весят столько что игрок волком взвоет
> при переходе между картами, если у него нет гигабитного интернета. Одно
> дело если заранее хренадцать гигз слилось и потом быстро грузятся с
> диска, и другое - если тебе каждый раз при переходе между
> картами надо по ...цать минут курить бамбук.Предватирельную загрузку с предсказанием придумали ещё лет сорок назад и успешно использоваои как минимум в прошлом веке
> Предватирельную загрузку с предсказанием придумали ещё лет сорок назад и успешно
> использоваои как минимум в прошлом векеПока что я вижу как все более-менее нормальные рпг с приличного качества ресурсами весят несколько гигз. При том в завимости от игры - ничему не противоречит посетить кучу разных карт за короткий момент времени. А вот вгрузить гигазы данных на юзеровый комп никто не даст. Потому как иначе любая страница сможет аут дискового пространства вызвать в два счета. Все-таки ремотно загружаемый в браузер код - совсем-совсем-untrusted, со всеми вытекающими.
Ты ведь не читаешь что другие говорят, да?
Во-первых это можно сделать попросив у пользователя увеличить/снять квоту на дисковое хранилище. Это происходит автоматически при превышении квоты.
Во-вторых над некоторыми браузерми сейчас можно даже поиздеваться (но это со временем пофиксят).
http://www.filldisk.com/
Apt-get изобрели году в 96м, поэтому даже явные тормоза его успели много где откопировать. В частности, для игр есть Steam.И, для начала, под тем же Линуксом пакет с данными можно разбить на части и подгружать по мере надобности. Я не думаю, что есть принципиальные проблемы устроить то же самое в Steam. Скажем, с apt-get это выглядело бы как:
for ((i=0;i<10;i++)); do sudo apt-get install game-level-%i -y; done
в фоне.
> Тем более, что если ты хочешь поиграть в игру общим объёмом в
> 20 Гб, то тебе таки придётся скачать все эти 20 Гб
> до того, как её запустить.Вот в твоей браузерной игре на 20 Гб, скажем, 200 уровней. Сколько времени ты будешь ждать перед загрузкой каждого уровня? Скорость сети - 0.5 метра в секунду (это очень высокая скорость).
Точно думаешь, что эти паузы на 5 минут после каждого уровня не будут раздражать?
Чукча не читатель, чукча писатель, да?Ты когда-нибудь слышал о том, что уровни можно подгружать в фоне по мере прохождения предыдущих уровней? А тут ведь об этом уже говорилось. О каких паузах по 5 минут речь, дорогой?
К тому же в нормальных странах по инету умудряются уже стримить картинку игры с минимальными задержками, так что игра играет в облаке, от тебя уходят нажатия клавишь, а к тебе приходит картинка. Для загрузки уровней в фоне этой трубы будет более чем достаточно, да и даже 10й части от неё будет более чем достаточно.
з.ы. Ну а на счёт разбиения на уровни через пакеты — вот ни разу не видел, чтоб так делали. Можно делать и реально делают это две огромные разницы. А тут так будут делать — иначе все действительно задолбутся ждать.
> Ты когда-нибудь слышал о том, что уровни можно подгружать в фоне по
> мере прохождения предыдущих уровней?RPG - это тебе не коридорный шутер, гражданин. Там смотаться за 2 минуты на 5 карт - может быть вполне нормальным явлением природы. И далеко не всегда известно каких именно. А много данных на юзеровую машину в оффлайн стораж загрузить никто не даст - иначе первый же нехороший сайт юзеру все место на винте выюзает. Одно дело когда некто сам явно скачал гамезу на 100500 мегазов и юзает ее и совсем другое - когда каждый первый сайт может навалить больше чем те кролики в отпиареной игре :)
Вероятно сэр не слышал о том, что разные карты зачастую используют они и те же ресурсы, нет? Очень часто так бывает, знаешь ли. Потому скачав одну карту и все ресурсы к ней ты считай скачал ещё несколько других процентов на 90%. Обычно соседних. Такого не произойдёт только если подавляющее большинство моделек в игре будут уникальными, а это крайне редкий случай. Это во-первых.Во-вторых при прохождении практически любой игры радикально всегда известно куда может направить свои стопы игрок дальше. Количество выходов из локации обычно конечно и вовсе не обязательно грузить весь мир сразу. Причём если говорить конкретно об RPG, то множество переходов за короткий промежуток обычно подразумевает путешествие по уже ранее посещённым картам, а они уже в кэше.
В-третьих загрузить много в оффлайн-хранилище можно. Приложение, представь себе, может попросить у пользователя выделить ему больше места. Внезапно, да?
> Ну значит кому-то таки придётся адаптировать ресурсы игры под загрузку из сети.
> Только и всего. А сохраняться они будут в локальный оффлайн-кэш —
> память не проблема. Программа может попросить пользователя снять с неё ограничение
> по месту в хранилище.
> Правда такого, как ты описал, я ни разу не видел. Обычно либо
> вообще всё в один файл пихают, либо разбиваю по типам, либо
> по объектам, но стараются избежать дублирования ресурсов — потом такую бодягу
> можно рехнуться патчить.Велкам ту NCsoft
> Вероятно сэр не слышал о том, что разные карты зачастую используют они
> и те же ресурсы, нет? Очень часто так бывает, знаешь ли.Очень зависит от природы карт, игры и прочая. Тем паче что учет взавимозависимостей и пререквизитов в указанном виде превратит простой как валенок даунлоадер в конкретный брейнфак, сравнимый по сложности с иным пакетным менеджером. Не то чтобы оно нереализуемо, в xonotic или BfW например что-то типа такого есть. Но это все-таки основательно добавляет работы програмерам и заметно повышает риск глюков. В указанных задумка была в том чтобы дать юзерям возможность грузить аддоны с серваков, так что без такой штуки это не вышло. Но там все относительно просто. И опять же полный прелоад до начала игровых процессов. Потому что стыковать даунлоадер с зависимостями с resource manager'ом - вообще вынос мозга, нечто из серии "фантомас в очках на аэроплане".
> Потому скачав одну карту и все ресурсы к ней ты считай скачал ещё несколько
> других процентов на 90%. Обычно соседних.А это вообще как повезет. А что если чувак телепортнулся через полмира в совсем другую локацию? Он должен ..цать минут курить бамбук? Пропадение чувака из игрового мира на заметное окружающим время - это не только былинный отказ, но и повышенный риск нестандартных глюков. И много интересных вопросов. Например, какой статус у чувака в игровом мире должен быть на этот период? На какой карте он для сервера? На старой? Новой? В вакууме? Можно ли его это время атаковать? В общем получаются костыли, загаживающие игровой процесс техническими моментами. Разбивка мира на карты сама по себе то костыль, только потому что большой мир с кучей объектов вызовет адский жрач ресурсов на обсчет и на такой компромисс идут не от хорошей жизни, а чтобы снизить сложность вычислений + потенциально можно разнести обсчет разных карт на разные сервера.
> Такого не произойдёт только если подавляющее большинство моделек в игре
> будут уникальными, а это крайне редкий случай. Это во-первых.Зато упомянутые моменты никуда не денутся. Заранее укачать все ресурсы - сильно упрощает resource manager, например. То-есть при этом resource manager в принципе не должен испытывать обломов и заботиться о их навороченной обработке "ой, а давайте это догрузим, и еще 20 зависимостей, а там еще 20, а там .. ну в общем ща я вам тут полмира скачаю".
> Во-вторых при прохождении практически любой игры радикально всегда известно куда может
> направить свои стопы игрок дальше.А вот это - совсем не факт. На карте может быть вагон телепотеров, NPC или каких там еще объектов, после взаимодействия с которыми может быть переброс на иную карту. У игрока может быть заклинание (или что либо эквивалентное), телепортирующее его там куда еще. Ах, вы об этом не подумали? Так я о том и говорю: RPG-образные игры это не коридорные шутеры, где заранее известно куда дальше пойдет игрок. В таких играх у игрока как правило полная свобода действий на предмет того куда ему валить в игровом мире.
> Количество выходов из локации обычно конечно
Оно, конечно, да, однако см. выше - они могут быть попросту не такими простыми как кажутся. Иногда
> и вовсе не обязательно грузить весь мир сразу. Причём если говорить
> конкретно об RPG, то множество переходов за короткий промежуток обычно подразумевает
> путешествие по уже ранее посещённым картам, а они уже в кэше.Технологически, обычно, уважающий себя движок MMORPG-like игр может
1) Телепортировать игрока куда угодно. Это позволяет GMам выполнять технические работы (например, вытаскивая незапланированно застрявших из-за бага игроков), мапмейкеры не парятся проблемами resource manager-а, просто реализуя желаемую логику в рамках своей задумки. Скрипты NPC и прочих - могут перебрасывать игрока туда куда и задумано, etc. И все они могут считать эту операцию простой и быстрой. А у вас это будет не так...
2) Спаунить любых монстров в любой локации. Что подразумевает что они все у клиента уже есть. Ибо вгрузка ресурсов для монстра прямо по ходу пьесы - это глюки и тормоза у клиента и брейнфак у програмеров, у которых ресурс-менеджер превратился в глючного монстра.
3) Все эти интерфейсы доступны для относительно высокоуровневого скриптинга и ручного дерга у народа с специальными правами. Что позволяет устраивать некие кастомные массовые эвенты, которые или идут под управлением кастомного скрипта спецом под этот эвент, или вручную оркеструются командой неких ассистентов, реализующих задуманную сцену (все-таки для RPG это весьма логично, да?).Поэтому в RPG все это в общем случае все это дергается кем угодно и как угодно. Проще всего считать что это именно так. Тогда и реализация упростится, и турбо-костыли, портяшие гибкость в реализации карт, событий и прочая - с самого начала не захочется донавешивать.
> В-третьих загрузить много в оффлайн-хранилище можно. Приложение, представь себе, может
> попросить у пользователя выделить ему больше места. Внезапно, да?Вот только браузеры на это реагируют уж кто как. Там с этим разброд и шатания. Одни мозг имеют клиенту негуманно. Другие могут выжрать все место на диске. Третьи и так и сяк, а младший - вовсе был дурак...
> полная свобода действий
> Пропадение чувака из игрового мира на заметное окружающим время - это не
> только былинный отказ, но и повышенный риск нестандартных глюков.
> 1) Телепортировать игрока куда угодно.
> 2) Спаунить любых монстров в любой локации.
> 3) Все эти интерфейсы доступны для относительно высокоуровневого скриптинга
> Проще всего считать что это именно так.Ахахахахахахахахахахахахихихихихихихихихихихахахахаахахохохохохохахахахихихаха
Назови-ка мне пяток мморпг свежее десяти лет, где оно так и есть
Чтобы телепорт куда угодно и не курить бамбук, пока оно прогрузит карту
> К тому же в нормальных странах по инету умудряются уже стримить картинку
> игры с минимальными задержками, так что игра играет в облаке,И сколько игроков оно такое выдержит? RPG - это вообще как правило критичные к реалтайм игры с кучей игроков. Пока на вебне (да и флеше) делают только самые примитивные, в 2D, с совсем отвратной графикой, как правило без нормального реалтайма, с кучей костылей и подпорок. Их такие the mana world примитивный - одной левой затыкает. Все. Оптом.
> RPG - это вообще как правило
> критичные к реалтайм игрыАХАХА
> АХАХАПростите, пошаговые стратегии - на другом этаже.
>> АХАХА
> Простите, пошаговые стратегии - на другом этаже.ты давай, назови мне тут пяток нормальных рпг, критичных к реалтайму
> RPG
> критичные к реалтаймловлю лулзы вместе с оратором выше.
> ловлю лулзы вместе с оратором выше.MMORPG как правило достаточно критичны. Ну то-есть, конечно, вполне себе вариант что тебя сожрет крутой монстр потому что все протормозило и ты не успел слинять. Но игрокам такой расклад обычно не нравится. Это, конечно, не шутеры где давятся за каждую миллисекунду, но все-таки сколь-нибудь заметные задержки приводят к тому что игрок почем зря получает пи...лей хоть он в этом и не виноват :). На что игроки обычно очень обижаются.
ой, там у некоторых tcp до сих пор — и ничего, не рыдают. как-то сложно мне представить сколь-нибудь требовательную к «реалтайму» игру с tcp.
> ой, там у некоторых tcp до сих пор — и ничего, не
> рыдают. как-то сложно мне представить сколь-нибудь требовательную к «реалтайму»
> игру с tcp.freeciv
очень требовательна к реалтайму
рассинхронизация больше чем на час недопустима
>> ловлю лулзы вместе с оратором выше.
> MMORPG как правило достаточно критичны. Ну то-есть, конечно, вполне себе вариант что
> тебя сожрет крутой монстр потому что все протормозило и ты не
> успел слинять. Но игрокам такой расклад обычно не нравится. Это, конечно,
> не шутеры где давятся за каждую миллисекунду, но все-таки сколь-нибудь заметные
> задержки приводят к тому что игрок почем зря получает пи...лей хоть
> он в этом и не виноват :). На что игроки обычно
> очень обижаются.Ты по себе-то не суди
мморпг критичный к реалтайму
ахаханазови мне пяток мморпг, в которых задержка до 500мс решает вообще хоть что-нибудь
> Чукча не читатель, чукча писатель, да?
> Ты когда-нибудь слышал о том, что уровни можно подгружать в фоне по
> мере прохождения предыдущих уровней?Милый друг, я думал, что ты догадаешься, что sudo apt-get install game-level-№(n+1) можно запустить прямо из игры.
В общем, не хочу тебя расстраивать, но частичную подгрузку уровней уже делают в так называемых клиентских MMORPG. Например, вот (что нагуглил):
http://supermmo.ru/progressivnaya-zagruzka-obnovlenij-v-allo...
И никаких браузеров, ВНЕЗАПНО.
> Милый друг, я думал, что ты догадаешься, что sudo apt-get install game-level-№(n+1)
> можно запустить прямо из игры.Не портабельно ни разу. Редкий геймдев захочет долбаться с интимными особенностями каждой конкретной ОС. Поэтому обычно делают хитрее.
В клиенте чаще всего делают некий слой абстракции ресурсов от ОС ("виртуальная ФС" или эквивалент) - чтобы пути были относительными, везде одинаковые. Данные карт и прочего живут в платформо-нейтральных контейнерах, которые и монтируются как "ФС". Возможно сжатых (чтобы меньше места жрало и быстрее качалось). Данные качаются в игровую диру самой игрой, а не аптгетом, что позволяет разработчикам вообще ничего не знать о операционке и ее интимных особенностях лишний раз, просто качая данные в диру. Заодно возможны умные варианты типа дельта-компрессии, так что при обновлении кода/ресурсов на сервере, на клиенте синхронное представление получается очень небольшой передачей данных и очень быстро. А вот заранее предзагруженные ресурсы обеспечивают практически мгновенную смену карт независимо от способности сервера и канала грузить траффик бочками в этот момент. В сколь-нибудь реалтаймной игре нет вообще ничего более мерзкого чем ожидание 2 минуты в то время как весь остальной игровой мир ... вовсе не в курсе того что "пусть весь мир подождет" и вполне себе живет своей жизнью. Выпадение из которой игрока на две минуты является категорически кривым вариантом. Где вообще игрок должен быть эти 2 минуты с точки зрения игрового мира?
Загрузка по ходу дела кой-как годится только для всяких одиночных проходилок, с hardcoded линейным сюжетом, когда точно известно что будет дальше, так что это можно укачать. И которые в браузере вообще бессмысленны (а, собственно, нафига там браузер?).А на реалтаймных штуках типа MMORPG такой стиль загрузки вообще не в кассу. При сколь-нибудь массовых событиях в не очень популярной местности оно уронит сервер массовым даунлоадом. Не говоря о том что ждать смены карты в реалтайм игре - вообще маразм. Дело сервера - максимально быстро перебросить игрока. А сложную работу пусть клиент сам делает.
> Не портабельно ни разу. Редкий геймдев захочет долбаться с интимными особенностями каждой
> конкретной ОС. Поэтому обычно делают хитрее.Ясен пень, они делают по-своему (часто на базе торрентов). Це, как модно говорить, концепТ.
> Ясен пень, они делают по-своему (часто на базе торрентов). Це, как модно говорить, концепТ.Мне чаще попадались реализации на основе или своих кастомных протоколов или HTTP или нечто rsync-образного. С передачей только дельты (разной степени топорности) чтобы снизить нагрузку на сервер при запланированных обновлениях мира. Торрент в принципе ничему не противоречит и даже круто разгрузил бы сервер при масштабных апдейтах. Но исходно торрент представляет все файлы торента как непрерывный блок данных. Проблема данного подхода в том что когда захочется передать только отличия от прошлой версии, такое свойство протокола несколько испортит настроение. В общем ему придется подставить какие-то нетривиальные и нестандартные костыли для этого. Но в принципе - да, вполне можно.
Кстати некоторые махровые копирасы типа близзарда замаскировали торренты под пенька и предлагают качать жирные файлы типа роликов на 700Мб их "даунлоадером". Вскрытие показало что под капотом этой хрени - обычный торент-клиент с приаттаченым торент-файлом. О чем господа копирасы постеснялись сообщить публике открыто :). В общем так вот и бывает что публично ругают а внутрях втихушку юзают. Штука то хорошая на самом деле.
>[оверквотинг удален]
> данных. Проблема данного подхода в том что когда захочется передать только
> отличия от прошлой версии, такое свойство протокола несколько испортит настроение. В
> общем ему придется подставить какие-то нетривиальные и нестандартные костыли для этого.
> Но в принципе - да, вполне можно.
> Кстати некоторые махровые копирасы типа близзарда замаскировали торренты под пенька и предлагают
> качать жирные файлы типа роликов на 700Мб их "даунлоадером". Вскрытие показало
> что под капотом этой хрени - обычный торент-клиент с приаттаченым торент-файлом.
> О чем господа копирасы постеснялись сообщить публике открыто :). В общем
> так вот и бывает что публично ругают а внутрях втихушку юзают.
> Штука то хорошая на самом деле.Они этого, вобщемто, и не скрывали никогда
Даже исходники дают, если попросить
…и ты доказал мои слова. ВНЕЗАПНО. Я же не говорил, что это что-то новое. В некоторых онлайн-играх это действительно давно существует и действует (правда у них всегда свои собственные костыли для этого). Это всё уже придумали давным-давно, просто в такой схеме распространения игр этим обязательно придётся пользоваться или установка будет происходить действительно долго. :)
з.ы. Ну а твоей упоротой схемой со множеством пакетов через апт пользоваться никто никогда не будет. Я гарантирую это.
> …и ты доказал мои слова. ВНЕЗАПНО.Нет, милый Lain_13. Твои слова - то, что браузер будет это позволять, что и является его конкурентным приемуществом. Ответ - не является. Ищите приемущества браузера дальше. Ну, которые смогут оправдать двукратную просадку производительности, в играх, где борятся за проценты.
> з.ы. Ну а твоей упоротой схемой со множеством пакетов через апт пользоваться
> никто никогда не будет. Я гарантирую это.Меня удивляет то, что уже 2 (два) человека не распознали "шутку, в которой есть доля правды", спутав её с реальным предложением распространения игр под Windows! Замечу, под Windows нет Apt.
Я ещё раз повторю то, что сказал в самом начале.
Схема установки новой игры:
1. Заходишь на сайт.
2. Играешь.
Без плагинов, без указания куда, без всяческих стимов и прочих левых приблуд, даже без прав администратора (иногда они таки нужны). И всё это кроссплатформенно «из коробки».Вот это и есть конкурентное преимущество, которое оправдывает двукратную просадку на процессоре, которую мало кто заметит (обычно тормозит графика). Нет, право же.
Просто там выше поднимался вопрос о том, что ждать придётся вельми долго загрузки всей игры. А теперь ты мне доказываешь, что докачка ресурсов не будет конкурентным преимуществом. Ну-ну, а то я не знаю, ты мне прям глаза открыл.
> 1. Заходишь на сайт.
> 2. Играешь.Кстати ты тоже неправ.
Вся прелесть не в "заходишь-играешь", а в "один раз написал и работает на всех устройствах в мире, какие только бывают"А так ничего не мешает завернуть в апк, деб, мси или ещё какой инсталятор и распространять как привычно старпёрам. Удобства прибавляются в первую очередь разработчикам, которым теперь в сто раз меньше работы по портированию делать придётся.
> Вся прелесть не в "заходишь-играешь", а в "один раз написал и работает
> на всех устройствах в мире, какие только бывают"Какой смысл компилировать из llvm в JS? Проще перекинуть в JVM и вот оно с меньшей или без просадки производительности.
>> Вся прелесть не в "заходишь-играешь", а в "один раз написал и работает
>> на всех устройствах в мире, какие только бывают"
> Какой смысл компилировать из llvm в JS? Проще перекинуть в JVM и
> вот оно с меньшей или без просадки производительности.Потомучто вжопу проприетарщину
> Потомучто вжoпу проприетарщинуСтоп, а вон тот unigine или кто там еще после пропуска через emscripten и трансляции в JS - он что, проприетарщиной быть перестал? Там еще и зависимость от сервера добавилась до кучи.
Дяденька академик, расскажите этому скрипткидису что теоретически, все тюринг-полные конструкции эквивалентны, а? Что и позволяет скрипткидисам на JS гонять транслированный сишный код, собссно :)
>> Потомучто вжoпу проприетарщину
> Стоп, а вон тот unigine или кто там еще после пропуска через
> emscripten и трансляции в JS - он что, проприетарщиной быть перестал?
> Там еще и зависимость от сервера добавилась до кучи.
> Дяденька академик, расскажите этому скрипткидису что теоретически, все тюринг-полные
> конструкции эквивалентны, а? Что и позволяет скрипткидисам на JS гонять транслированный
> сишный код, собссно :)Тётенька борщевар, ты реально такая тупая или просто толстая очень?
> Я ещё раз повторю то, что сказал в самом начале.
> Схема установки новой игры:
> 1. Заходишь на сайт.
> 2. Играешь.
> Вот это и есть конкурентное преимущество, которое оправдывает двукратную просадку на процессоре,Там, наверняка, не только на процессоре двукратная просадка. Вышеприведённое верно, но только до тех пор, пока скачка карт не занимает много времени.
Однако, как показывает практика, мало-мальски серьёзные карты требуют уже десятков мегабайтов. Поэтому для части игр, наверно, такая штука будет полезна, но ждать MMORPG в браузере, на мой взгляд, не стоит.
>> Я ещё раз повторю то, что сказал в самом начале.
>> Схема установки новой игры:
>> 1. Заходишь на сайт.
>> 2. Играешь.
>> Вот это и есть конкурентное преимущество, которое оправдывает двукратную просадку на процессоре,
> Там, наверняка, не только на процессоре двукратная просадка. Вышеприведённое верно, но
> только до тех пор, пока скачка карт не занимает много времени.
> Однако, как показывает практика, мало-мальски серьёзные карты требуют уже десятков мегабайтов.
> Поэтому для части игр, наверно, такая штука будет полезна, но ждать
> MMORPG в браузере, на мой взгляд, не стоит.Я, наверное, тебе великую тайну открою, но Runescape появился ещё раньше ультимы онлаен и пока загибаться не планирует. И это было ещё тогда, когда кроме богомерзкой явы не было вообще никаких адекватных абстракций в браузере.
И бобла оно приносит поболее всяких линеек и рагнарёков. Хотя до вова пока далеко. Но вот технологии придумали как игру уровня WoW запилить в браузер. Да, это не очень производительно, но это очень удобно в плане разработки с целью широкого охвата ца на всех платформах. Пусть это не очень актуально на настолках, где 99% х86 из которых почти всё у форточки и только немного гну с огрызками, но очень актуально для мобилок, где однозначной монополии нет и не предвидится, а в ближайшем будущем нас ждёт всё больший и больший хоровод мобильных осек, платформ, архитектур и железа. И если вчера выпускать игру только для форточки было экономически выгодно, то завтра выпускать игру только для ведра или только для огрызка будут только недалёкие дураки. Ибо ни у одной платформы не будет даже половины рынка и даже внутри платформы будет большой огород разных девайсов (у одного только огрызка их как минимум четыре)
> Думаешь кого-то за пределами линукса волнует как мы на нём обитаем?
> Тем более, что если ты хочешь поиграть в игру общим объёмом в
> 20 Гб, то тебе таки придётся скачать все эти 20 Гб
> до того, как её запустить.Старик сейчас занимает 13 Гб, но запускается то ли с 1 то ли с 3 Гб. Дальше уровни тянутся в процессе игры. Ты гамаешь, а оно продолжает качаться.
Ну всё правильно, только теперь прям в браузере.
> Ну всё правильно, только теперь прям в браузере.Попытка вгрузить в браузере 13Гб данных преподнесет тебе очень много открытий чудных :)
…как, например, загрузку в процессе их надобности. Ага. Чем принципиально отличается загрузка с сервера близа из локально установленной игры от загрузки с сервера близа из игры запущенной в браузере? Да ничем.
> …как, например, загрузку в процессе их надобности. Ага. Чем принципиально отличается
> загрузка с сервера близа из локально установленной игры от загрузки с
> сервера близа из игры запущенной в браузере? Да ничем.tcp vs udp и поддержка браузером только http и ftp
довольно принципиально, но не критично
Первое можно исключить. Тот же WebRTC по UDP работает в браузере. Не знаю деталей, но на сколько я вижу это вопрос решаемый. Да с протоколами не такая и беда. Можно теперь хоть торрент развернуть на JS прямо в браузере при желании.
> Можно теперь хоть торрент развернуть
> на JS прямо в браузере при желании.Ну это уже и правда перебор будет =(
> Можно теперь хоть торрент развернуть на JS прямо в браузере при желании.а вот на это хочу посмотреть. ничего, что вебсокеты — таки *протокол*, со своими заголовками и ты пы?
Вообще расширение для Хрома такое уже есть: https://chrome.google.com/webstore/detail/bittorrent-surf-be...Не знаю чистый ли это JS или они на NaCl чего-то сваяли, или ещё как-то хитро вывернулись, но торрент в браузере таки можно. Для фокса когда-то существовало расширение, но ещё до версии 3.6 и оно тащило с собой бинарный модуль.
Ещё, на сколько я понял, в Фоксе можно из расширений использовать UDP, а в Хроме оно доступно для NaCl приложений, но заблокировано по-умолчанию.
Наверное таки не получится реализовать именно торрент именно на голом JS, но что-то подобное для распространения файлов приложения на вебсокетах создать должно быть можно.
стандартно — нельзя, да. только при помощи браузеро-зависимых расширений. помимо прочего оно ещё и нормальный доступ к fs должно иметь.впрочем, глядя на современные тенденции… я даже боюсь предполагать, что ещё попытаются в браузер затащить.
В Хроме есть FileSystem API.
> В Хроме есть FileSystem API.не все используют хром. я бы даже сказал… нет, не буду.
38% используют, даже ишак уже на втором месте.
Вообще разного рода хранилища есть во всех браузерах, но только в Хроме есть FileSystem API — остальным оно пока не приглянулось. Мозилловцы даже целую статью наваяли почему у них его нет и что есть вместо него.
> 38% используют, даже ишак уже на втором месте.
> Вообще разного рода хранилища есть во всех браузерах, но только в Хроме
> есть FileSystem API — остальным оно пока не приглянулось. Мозилловцы даже
> целую статью наваяли почему у них его нет и что есть
> вместо него.98% жрут говно.
Это повод пожрать говна вместе с ними?Главное что есть исходники этого куска и юридическая возможность их использования в свободных проектах. А использовать или нет каждый для себя сам решит.
Да я к тому, что это уже есть и если само не сдохнет, то использоваться будет. А если учесть популярность Хрома, то фиг оно само сдохнет. -_-
и ничего хорошего в этом нет. опять «интернет эксплорер», только теперь от гугеля.
> и ничего хорошего в этом нет. опять «интернет эксплорер», только теперь от
> гугеля.Я запрещал тебе нести херню. Необоснованную херню тем более.
а я тебе пояснял, что спрашивал только из вежливости. умный человек не будет запрещать то, что не сможет «заэнфорсить». извини, но ты сам себя дураком сделал.
> извини, но ты сам себя дураком сделал
так я-то никогда и не скрывал, что дурак. мне можно, я же дурак.
> Как же мы на Линуксе живём столько лет и мучаемся с apt-get?Ну... не во всех линуксах есть цивилизованные пакетные менеджеры.
Кто ж тебя спрашивать будет завтра, что ты там считаешь лучше?Вообще, тут демка unigine пробегала недавно. В файрфоксе без asm.js тормозила только в фуллскрине, да и то не у всех.
не каждый нативный unreal поставит.
Вот и здорово - будет конкуренция для Quake Live!
ява-скриптовые детишки открыли для себя жесткую типизацию.
таки оно да будешь шустрее работать
> ява-скриптовые детишки открыли для себя жесткую типизацию.
> таки оно да будешь шустрее работатьчерез несколько лет до кого-нибудь из них дойдёт, они запилят более-менее нормальный синтаксис и таки узнают об llvm.
> узнают об llvm.дыг как раз для того чтобы сгенерировать -- код на asm.js -- для этого Мозиловцы (и их друзья) вот именно и используют llvm .
ты бы хотя бы почитал бы документации связанные с asm.js , перед тем как нести на этом форуме свои некомпетентные сообщения :-) ...
# P.S.: специалист по JIT, лол :) ... JIT вообще отключается во время загрузки asm.js-кода :) [здесь отсылка к сообщению #42]
> дыг как раз для того чтобы сгенерировать -- код на asm.js --
> для этого Мозиловцы (и их друзья) вот именно и используют llvm.Ну да, ведь засунуть LLVM в браузер и передать ему биткод опосля сишного или какого там еще компилера - это ж слишком просто. Как это - толко запустить компилер и готово? А тут еще надо какой-то левый конвертер, подрюкаться с закидонами JS и его стыковкой с сями, на что ни те ни другие ни разу не затачивали, какую-то кульную JS либу написать. Пилять, сколько себе можно лишней работы наварганить путем принятия дурных решений на старте :)
> Ну да, ведь засунуть LLVM в браузер и передать ему биткод опосля сишного или какого там еще компилера - это ж слишком просто.ну получится тогда очередной NaCl (PNaCl) :) .. ни с чем не совместимый
> ну получится тогда очередной NaCl (PNaCl) :) .. ни с чем не совместимыйНу вот взять LLVM и устаканить между браузерами его юзеж и изоляцию, раз уж хочется кроссплатформенно пускать сишные бинари.
А вот юзать JS в качестве портабельного представления биткода - эпический кретинизм в терминальной стадии. Несомненно, все тюринг-полные ЯП эквивалентны. Но JSовский микроскоп для такого феерического забивания им гвоздей ни разу не предназначался изначально. Но, несомненно, можно пойти своим путем - отковать тубус из титана, увеличить массу основания и просто подкачаться и @#$нуть посильнее. Тогда получится заменить им молоток. Но логичнее было бы взять за основу какую-то более заточенную на задачу конструкцию...
> ява-скриптовые детишки открыли для себя жесткую типизацию.Не прошло и 20 лет, как скрипткидисы начали осознавать что от статической типизации есть некоторые плюсы :)
> Не прошло и 20 лет, как скрипткидисы начали осознавать что от статической
> типизации есть некоторые плюсы :)а также плюсы -- от отсутствия сборщика мусора (asm.js-код работает сугубо без GC) и от ручного управления памятью (asm.js-код работает с памятью напрямую через указатели, и НЕ способен работать через "умные" ссылки).
всего лишь только одна статическая типизация не дала бы такой прирост, каков даёт "машинный" код, загружаемый из аsm.js-кода . :)
> всего лишь только одна статическая типизация не дала бы такой прирост, каков
> даёт "машинный" код, загружаемый из аsm.js-кода . :)К GC претензия в играх в основном потому что он гробит предсказуемость. Мало кто хочет чтобы его сожрал монстр только потому что GC приспичило мусор собрать и пару секунд все стояло колом.
ну, на самом деле для того, чтобы gc работал «пару секунд» надо ОЧЕНЬ много памяти засрать. инкрементальные gc, опять же. concurrent gc. stop-the-world уж давно не просто не в моде, а моветон. в общем-то, сейчас предубеждения скорее «историческое наследие».впрочем, наш юноша с горящими глазами, без сомнения, в этой области намного лучше подкован, пусть лучше он расскажет. ведь не просто так он меня дилетантом называл: боюсь представить объём его знаний и опыта даже.
У всех 5ых ноуты thinkpad :)
Разработчики из Unigine реализовали данную технологию раньшеhttps://blog.mozilla.org/futurereleases/2013/02/20/one-devel.../
Во-первых сам Unigine очень далек от Unreal engine, вовторых у Unigine портирована демка чуть ли не 3х годовой давности которая с трудом тянет на обрезанное демо, комната-ящик и перетаскивание камеры.
> Во-первых сам Unigine очень далек от Unreal engineНе смеши. Unreal Engine так далеко до Unigine Engine, как от земли до края Вселенной. Лучше бы помолчал, если не разбираешься в предметной области. Для наглядности посмотри демонстрации Heaven и Valley и сравни с Unreal-играми.
Ой уж не надо.. По красивости Unigine на порядок выше.
Хотя в любом случае, красота зависит в первую очередь от дизайнеров, которых у Эпиков полно, но возможности рендеринга именно движка Unigine на первый взгляд кажется намного обширнее, но с другой стороны, возможности UE3 по созданию игр разного жанра на первый взгляд кажется обширнее.
Посмотрим чем порадуют нас Эпики со своим Unreal Engine 4.
> Во-первых сам Unigine очень далек от Unreal engineПри том - в намного лучшую сторону :). Анреалу до графики Unigine - как пешком до пекина.
война была равна: сражались как-то две проприетарщины…
> война была равна: сражались как-то две проприетарщины…Ага. С другой стороны, оно взлетело в открытом браузере и на открытом графическом стеке. Пустячок, а приятно. Это, конечно, костыли, но флеша явно подвинет. Да и MS не умеет webgl, за что имхо поплатится.
А что, вживую пощупать Unreal Engine в браузере нельзя? Довольствуйтесь роликами?
Да, я что-то тоже не найду никак.. Тогда новость нужно переименовать, не "представили", а "показали".
Тут же технологии используются, которые к Nighty только-только прикрутили. Что вы щупать собрались?
Вам просто сообщили, что скоро это всё будет возможно (как когда-то стали возможны html+css анимации и пр). И типа готовьтесь! А кто умеет - пилите свои детища.Рановато вы щупать собрались. Потерпите малость.
> Рановато вы щупать собрались. Потерпите малость.Nighty же можно установить -- уже сегодня?
(разумеется для сугубо целей щупанья :):))
> Поддержка средств, необходимых для организации многопользовательских P2P-игрМожет они туда еще и i2p-роутер впилят а заодно и freenet до кучи.
> туда еще и i2p-роутер впилят а заодно и freenet до кучиО! А это хорошая мысль.
> Может они туда еще и i2p-роутер впилят а заодно и freenet до кучи.А смысл, если гуглобраузер нынче обуел и отсылает все что ты печатеаешь на серваки гугля "для проверки орфографии"?
>позволили поднять производительность работающих в браузере игр до уровня, пригодного для комфортной работы с нимиГде цифры, цифры где? Ну не верю я про комфортность, хоть убейте, не верю
> Где цифры, цифры где? Ну не верю я про комфортность, хоть убейте, не верюНу запусти у себя BananaBread, как прикидка - сойдет. И таки да, оно в сколько-то там раз медленнее. Как ни крути.
http://en.wikipedia.org/wiki/Inner-platform_effectсначала emacs, теперь браузеры. Что дальше?
глядя на современные браузеры, старичок emacs содрогается и плачет в уголке. а ведь его когда-то называли переростком и шутили насчёт Emacs OS…
> ведь его когда-то называли переростком и шутили насчёт Emacs OS…"Мы рождены чтоб сказку сделать былью!" пробурчали скрипткидисы. Так появился Firefox OS...
`Вы говорите что HTML невозможно программировать. По-моему вы просто жутко наелись конфет…' - Денис Попов.
Прикольные ребята. Ресурсы делать из JS высокоуровневый байт-код у них есть, а ресурсов поставить сервак для сборки под Win 64 бита - нет.
Это как раз логично. Ресурсы тратятся на перспективные проекты, а не на благотворительную помощь измерителям попугаев.
> Это как раз логично. Ресурсы тратятся на перспективные проекты, а не на
> благотворительную помощь измерителям попугаев.При чем тут благотворительная помощь? Win64, хотите вы этого или нет, основная целевая платформа для FF. Такова жизнь.
> При чем тут благотворительная помощь? Win64, хотите вы этого или нет, основная
> целевая платформа для FF. Такова жизнь.Учитывя что на билдовку 64-битных программ в винде дружно забили вообще все, файрфокс всего лишь следует общему тренду. В винде по факту 64-битные только системные бинари. Найти какой-то еще софт под 64 бита - анреал. Ну ок, FAR и 7zip бывают. А больше - вообще пустота. Как видите, положить не только можно, но это еще и имеет массовый характер. Настолько массовый что вам и не снилось даже.
> Учитывя что на билдовку 64-битных программ в винде дружно забили вообще все,
> файрфокс всего лишь следует общему тренду.Милый аноним, в контексте новости, FF старается собой заменить ОС. Странно ставить ОС, ограниченную парой Гб на компьютер, в котором поддерживаются до этак 16-ти.
>> Учитывя что на билдовку 64-битных программ в винде дружно забили вообще все,
>> файрфокс всего лишь следует общему тренду.
> Милый аноним, в контексте новости, FF старается собой заменить ОС. Странно ставить
> ОС, ограниченную парой Гб на компьютер, в котором поддерживаются до этак
> 16-ти.ахаха.
Ну собери лису из исходников сам, что тебе мешает?
> ахаха.
> Ну собери лису из исходников сам, что тебе мешает?Милый GG, FF из исходников нужно собирать на ежедневном базисе, т.к. сборок Win64 нет. Впрочем, даже чтобы её собрать под Win64 единократно нужно определённое железо, настроенная система, которых у меня нет - сижу на ноутах.
>> ахаха.
>> Ну собери лису из исходников сам, что тебе мешает?
> Милый GG, FF из исходников нужно собирать на ежедневном базисе, т.к. сборок
> Win64 нет. Впрочем, даже чтобы её собрать под Win64 единократно нужно
> определённое железо, настроенная система, которых у меня нет - сижу на
> ноутах.Кто ж тебе запрещает поддерживать-то?
Пойди в магазин, купи железа и поддерживай сколько душе угодно.
Полтора вантузятника тебе будут благодарны.
> Кто ж тебе запрещает поддерживать-то?Милый GG, тебе тоже никто не запрещает быть умным, красивым и богатым. :-)
> Пойди в магазин, купи железа и поддерживай сколько душе угодно.
> Полтора вантузятника тебе будут благодарны.Ещё раз - есть противоречие между стремлением Мозилловцев сделать ОС из браузера и игнорирование 64-х бит на самой распространённой платформе. Т.о. FF, как ОС получается искусственно лимитирован 3-мя Гб. Для браузера это ничего, для ОС - это серьёзно.
> стремлением Мозилловцев сделать ОС из браузераГде ты такой херни поначитался-то ?
>> стремлением Мозилловцев сделать ОС из браузера
> Где ты такой херни поначитался-то ?где-то в районе Firefox OS. прямо на их сайте.
>>> стремлением Мозилловцев сделать ОС из браузера
>> Где ты такой херни поначитался-то ?
> где-то в районе Firefox OS. прямо на их сайте.Так ты сначала прочитай, а потом херню тут пори
а наоборот никак? ну, ты хоть сертификат какой дай, что позволяешь мне после прочтения херню пороть.
> а наоборот никак? ну, ты хоть сертификат какой дай, что позволяешь мне
> после прочтения херню пороть.я не позволяю тебе пороть херню никогда и ни где
ну, тогда придётся без твоего позволения. уж не обессудь, оно мне и не надо было. я так, из вежливости спросил.
> Милый аноним, в контексте новости, FF старается собой заменить ОС. Странно ставить
> ОС, ограниченную парой Гб на компьютер, в котором поддерживаются до этак 16-ти.Тсс, радовались бы. Так скрипткиди хоть поневоле будут му...хаться с оптимизацией. Потому что иначе браузер долбает чугунной гирей по голове. Конечно в профайлере им придется пухнуть конкретно, тем более что никто никогда не нацеливался на такое приенение JS потому там мощных трассиров, профилировщиков и дебагеров вообще нет толком. Но это будут проблемы скрипткидиков, пытающихся зафигачить своим микроскопом гвоздь. Иногда гвоздь будет оказываться железнодорожным костылем который надо вбить в шпалу. В этом месте кидисы будут свинчивать за 5 минут микроскоп и потом 2 дня пытаться им что-то изобразить, хоть калибр задачи и явно не для этого инструмента :)
ничего нового.
может догонят и перегонят бигпоинтовский дракенсанг онлайн (http://www.drakensang.com/) c его небулой 3 ((nebula device) а может уже и 4,5,6 и т.д.), раз уж подвязались Disney, EA и ZeptoLab.
единственная онлайн игра, в которую можно играть комфортно (если бы не удаленность от сервера игры, критично для пвп) на моем ноуте с Т4200 2 ГГц, 2 ГБ ОЗУ и видео mobile intel 4.
Unity 3D явно отстает в плане поддержки слабых машин.
но бигпоинтовская небула юзает директХ и без него бирюля не робит. а также физика у них не развита совсем (бугорки в игре можно встретить, а с горками баги у игроков будут).
Пригодится для FirefoxOS
Тут все не понимают, зачем надо на HTML+JS делать хорошие приложения.
А надо оно за тем, чтобы не надо было городить велосипед из отдельных сборок под ябло, ведро, венду и тысячи новых популярных осек, готовлимых к выпуску в скором времени.Понормальному можно будет один раз сделать и запускать отовсюду, на любой платформе, на любом железе. И без богомерзких яв или флешей. На свободном годном яваскрипте.
Да, для серьёзных вещей оно не катит и ресурсов требует больше, чем аналоги. Но экономит экономические ресурсы разработчиков просто невероятно.
Вот представьте, ещё недавно чтобы сделать мобильное приложение на все платформы надо было собрать отдел разработки под яблоко, отдел под ведро, отдел под венды, отдел под мигу и отдел под блекбери. Это или в пять раз больше кодеров или в пять раз более дорогие кодеры, которые могут сразу всё. А чего стоит въехать в ведройдный sdk..
А вот как сейчас: один JS кодер, один HTML верстальщик и один прожект-манагер. И всё. И один раз накоденое приложение (будь то игруля или кнопка-пукалка или даже полезное приложение для аеропорта) сразу готово к выпуску на все платформы. И если мы захотим "вот эту кнопочку переместить вот туда" нам не придётся пересобирать его двадцать раз. Да, на поддержку тоже уйдёт пропорционально меньше ресурсов. И это ещё при том, что JS+HTML впринципе на порядок проще, чем кодить хоть под ведро хоть под яблоко, хоть под чего ещё = или стоимость кодеров снижается или снижаются сложность их работы (и повышается настроение и соответственно качество)
нет, по-нормальному — это когда posix, sdl/opengl и исходники. одни для всех систем. а костыль с впиханием в браузеры невпихуемого — это костыль.
При том адовый костыль, с созданием кучи работы на ровном месте.
> нет, по-нормальному — это когда posix, sdl/opengl и исходники. одни для всех
> систем. а костыль с впиханием в браузеры невпихуемого — это костыль.Я это и имел ввиду в понормальном.
Но в данном случае рассматривается вариант платформонезависимого кода, исполняемого на стороне клиента. Лучше ничего в природе пока нет.
> в данном случае рассматривается вариант платформонезависимого кода, исполняемого на
> стороне клиента. Лучше ничего в природе пока нет.ну, с таким уточнением — возможно, так. хотя вон шахтострой — отчего-то на жабе.
>> в данном случае рассматривается вариант платформонезависимого кода, исполняемого на
>> стороне клиента. Лучше ничего в природе пока нет.
> ну, с таким уточнением — возможно, так. хотя вон шахтострой — отчего-то
> на жабе.Не от хорошей жизни и не от большого ума.
1. Жаба = проприетарщина
2. Шахтострой явно очень сильно процессоро- и памяте- зависимая песочницаВон тот же шахтострой 2д вообще на дотнете, но там сложность на целое измерение меньше (а это порядок порядков). Там понятно, хотели побыстрее наляпить и выпустить. А вот петерсон лажанул сильно с выбором платформы.
Но с другой стороны оно вполне очевидно, при его-то форме рук.
> А вот петерсон лажанул сильно с выбором платформы.ну да, надо было на js писать.
>> А вот петерсон лажанул сильно с выбором платформы.
> ну да, надо было на js писать.Надо было руки себе из жеппы выдрать и нанять нормальных кодеров, благо бобло у него уже тогда в достатке было. А по факту имеем самую популярную в мире песочницу с таким количеством багов, глюков и костылей, что в неё нереально играть впринципе. И это при том, что по сравнению со средним кризисом игра проста как две копейки, а разработка длится долгие годы. И с каждым новым релизом багов, глюков и костылей только прибавляется. И гораздо быстрее, чем фичей. Одну только рассинхронизацию в мультиплеере, лечимую исключительно перелогином, не победили до сиих пор, а тянется она с самого начала начал.
зато продаётся. какая разница, сколько там багов, если народ покупает? значит, народ доволен. не был бы доволен — не покупал бы.
> зато продаётся. какая разница, сколько там багов, если народ покупает? значит, народ
> доволен. не был бы доволен — не покупал бы.Не сравнивай хипстерскую цифровую обдираловку с колбасой и печеньками.
Если бы петерсон предлагал бы возврат бобла всем, кому оно не понравилось — хера с два он чего заработал бы. Но он это понимает и не предлагает.А по факту: он собрал сотни миллионов долларов и портатил четыре года, а игра до сиих пор является глючащей забагованной недоделкой. И это в то время, как игры такого уровня собираются наколенке за пару месяцев (стим гринлайт, тысячи их), а за год-два студии с бюджетом всего в пять-семь лимонов рожают шедевры класса ААА++.
А мораль проста: кокакола такая популярная вовсе не от того, что вкусная и полезная. И ЕдРо набрало 146% голосов вовсе не потому, что такие хорошие и работают на благо Ро. И винда у каждого первого долбоёба на компе тоже стоит не потому, что это самая лучшая ос в мире.
ну где я говорил, что что-то там «лучшее»? это вообще не нужно. нужно лишь «достаточно хорошее». и это «достаточно хорошее» даже не обязано быть качественным.но ведь: никто же не стоит с пистолетом у виска и не заставляет шахты покупать? люди сами, добровольно деньги несут. значит, продукт достаточно хорош для этого.
так вот, мораль простая: качество — дело десятое. интересует оно десяток гиков, все остальные могут ругаться, но жрать всё равно будут. и вот вопрос: зачем тратить лишнее время на качество, если за это время уже можно начать продавать?
> люди сами, добровольно деньги несут. значит, продукт достаточно
> хорош для этого.Ну правда, хватит этой херни уже.
Это звучит как "Какашки тёплые и коричневые, значит они сделаны из горячего шоколада".В МММ люди до сиих пор деньги несут.
> В МММ люди до сиих пор деньги несут.ну так грешно было бы не брать, раз несут.
>> В МММ люди до сиих пор деньги несут.
> ну так грешно было бы не брать, раз несут.Да нет же, несут потому, что МММ очень хороший.
не надо изменять своей же логике, да.
это какая-то твоя сумрачная логика, ко мне она отношения не имеет. разве что ты не понимаешь, что такое «достаточно хороший» даже после более-менее подробного пояснения — но тут я уже бессилен.
p.s. мораль номер два: говноподелия на жыэс будут иметь успех. потому что любит народ всякое говно.
У меня дежа вю: мне кажется я видел эту дэмк год или более назад.
> позволяющей выполнять игры с производительностью близкой к нативным приложениямЭто наверно как антивирус, который совсем не тормозит работу компьютера.
> Это наверно как антивирус, который совсем не тормозит работу компьютера.Ну да, тормозит в 3 раза - "скорость близкая к нативным приложениям". Где-то я это уже слышал. Ах, дотнетчики и жабисты этим истекали. ИЧСХ, для игр и то и другое используют только совсем уж отмороженные граждане.
> ИЧСХ, для игр и то и другое используют только совсем уж
> отмороженные граждане.бедный Нотч…
>> ИЧСХ, для игр и то и другое используют только совсем уж
>> отмороженные граждане.
> бедный Нотч…У него просто рак формы рук
>> бедный Нотч…
> У него просто рак формы рукок, я согласен получить такой же рак, если к нему будут прилагаться такие же деньги.
> бедный Нотч…Ага. Технически он слепил нечто из дерьма и палок. А то что хомяки даже так схавали - ну, бывает :). Тем более что отвратность технической реализации замаскирована и нейтрализована неординарным и относительно инновационным геймплеем. Это перевесило.
А вон торент вообще изначально на бидоне писали. По поводу чего его структуры данных отличаются полной долбанутостью. Они уже и не текст, без спецутилей фиг распарсишь. Но и не являются удобными для парсинга машинами данными. Итого минусы текстовых и бинарных форматов удачно сочетаются, без задействования положительных сторон :). Ну в общем питонисты - они такие, у них вечно все через то самое место. Но вот с общей протокольной логикой индивид угадал. И это перевесило. Протокол покорил мир. Правда, все-равно на полпути к успеху появился utorrent, прожка на сях++ которая при весе в 300 К умела больше и жрала многократно меньше ресурсов, так что контроль над развитием протокола стал утекать сквозь пальцы. Пришлось в пожарном порядке покупать конкурента. Иначе о изначальном разработчике никто бы и не вспомнил. А раз оно такое один фиг теперь на си++ - зачем такой ушибленный протокол? Правильно - дань совместимости и начальному быдлокодингу на питоне...
//капча, определенно, оценила спич про торент - 66881