Нужно, т.к иначе этим заниматься будут проприетарные поделки.
При правильном использовании тормоза минимальные. Т.к работа с видеокартой идет без лишних прослоек, а в большинстве игр нечему кроме рендера тормозить.
Вот скажем очень умный чувак пилит Angry Bots (демо игру Unity3D) под WebGL. Статья об оптимизации уже есть: http://blog.tojicode.com/ Он кстати сделал рендер уровней Team Fortess 2 и iOS RAGE.
Бинарноблобопроприетарног-но или же нужная технология?
Если бы их вообще не было никаких, я бы наверное был за.
Но к сожалению тут только два варианта: 1 - Либо будет гугловский Native Client который отлично работает под линуксом. 2 - Либо будет всякая проприетарщина и линукс как всегда остается ни у дел, т.е опять хомячки ноют что у них что то не работает. Т.е лучше уж NaCl чем флеш.
...
Ну а по поводу JS, когда я последний раз (пару лет назад) искал тесты, то гугловский V8 сливал C++ только в 4-5 раз. Сейчас V8 скорее всего стал ещё быстрее.
Учитывая что большинство игр и тем более софта тормозят не из за процессорас js все тоже ОК.
А то, что сайт загружает бинарную программу в браузер, это, конечно, не проприетарная поделка?
Ну во первых может загружаться не только проприетарная, но и свободная. Ты как бы сам выбираешь, что именно грузить.
А во вторых я уже написал: Эта технология (костыль по сути) нужна многим компаниям. Я был бы рад, если бы вообще без всего этого геморроя шло развитие веба, но к сожалению так не получается. Поэтому будет либо проприетарный загрузчик, либо открытый, я конечно выбираю открытый.
Но вообще я не понял причем тут webgl, т.к он к NaCl не имеет никакого отношения, и в нем как раз нет никакого шифрования, как в жабоскриптах.
Да не только в терминах GPL. А вообще, с лингвистической точки зрения, «исходный» — означает «первоначальный». То есть, исходником это будет являться только если это непосредственно написано программистом.
Ну это ещё не самый старшный вариант, просто оптимизированный код. Раскрутить его до читаемого состояния не так сложно. К тому же часто рядом с таким кодом распрострняется и человеческий.
Если машинный код или код на языке ассемблера непосредственно человек набирал на клавиатуре, то он является исходным. Как из буквального определения, так и из того, которые в GPL (т.к. является наиболее пригодной формой для внесения изменений (из существующих для данной программы)).
вот скажем quakelive летает у меня на нетбуке(процессор атом) со встроенной картой, то есть производительность, почти как в обычном клиенте а вот как то запускал anrgy birds на webgl, так мало того что оно лагало, так еще жрало около 500 метров памяти сранные птички блин, которые летают у меня на телефоне и вроде и то(квэйклив), и то(ангри бёрдс) в браузере нет, такие «технологии» не нужны, весь модный HTML5 это сплошные тормоза и расход памяти это очень ощутимо на всяких нетбуках, то же HTML5 видео например у меня не слишком далеко ушло по производительности от флэша на линуксе
Ну ассемблерный код вообще малопригоден для внесения изменений, даже если ручками изначально набирался. С другой стороны, кодогенератор может выплюнуть код на си, по которому вполне можно пройтись ручками, несмотря на кодогенерацию.
вот скажем quakelive летает у меня на нетбуке(процессор атом) со встроенной картой, то есть производительность, почти как в обычном клиенте
Знаешь почему? Потому, что это обычный клиент который запихнули в браузер зачем то. Он даже не в песочнице исполняется, т.е может что угодно слить с твоего компа или пробекдорить тебя и так далее.
нет, такие «технологии» не нужны, весь модный HTML5 это сплошные тормоза и расход памяти
Если не будет их, то будет флеш. Флеш нафиг не нужен с подходом адоба к разработке.
ну насчет quakelive я понимаю, но с подходом webgl всегда будет большой оверхэд графические приложения не терпят тормозов а флэш тоже конечно то еще убожество, как в общем то и весь вэб, наслоение костылей и подпорок, и с html5 их стало еще больше, когда нибудь эта пирамида рухнет :3
Нет, не будет. WebGL работает ровно так же как и любое другое приложение. Т.е оно работает не через прослойку, а напрямую на драйвере. Тормозить может само приложение, но не рендер.
Тормоза демок обусловлены тем, что их пишут JS кодеры которые совершенно ничего не понимают в работе с графикой, не понимают как правильно грузить текстуры, как правильно писать шейдеры, как вообще что либо делать. Но при этом у правильно написанного приложения просадки будут минимальны.
WebGL это очень низкоуровневый API с которым ещё надо уметь работать правильно.
а флэш тоже конечно то еще убожество, как в общем то и весь вэб, наслоение костылей и подпорок, и с html5 их стало еще больше, когда нибудь эта пирамида рухнет :3
Не грамотность меня уже достала. HTML5 это тот же язык гипертекстовой разметки плюс несколько API к железу: звук, видео.
WebGL, WebCL, WebRTC, Native Client не имеют совершенно никакого отношения к HTML5.
Ну странно же от Atom'а(особенно, если старого) требовать какой-то особой производительности. А видеокарта скорее всего не используется, попробуй другой браузер, например.
У меня на всех демках 30-50 fps в windowed и около 20 в fullscreen. Загрузка процессора при этом 60-80%(используется всего одно ядро).
Видимо, предельная узколобость не даёт тебе понять, что, во-первых, WebGL имеет к OpenGL довольно посредственное(очень) отношение, во-вторых, использует _JavaScript_ и, в-третьих, в отличие от OpenGL является по-настоящему кроссплатформенным.
конфиг Atom N280 (1.6 ггц) старый атом 2 гб оператоса видеокарта Nvidia G105M 512 Mb сейчас запустил в хроме, 40-50 фпс внезапно, не лагает видимо да, в фаирфоксе не используется видеокарта может кто знает как сделать, чтоб использовалось, галочка «использовать аппаратное ускорение» в настройках стоит
Не нужно. Но все уже забыли, зачем нужен браузер, поэтому скоро это говно будет повсеместно. Хотя, веб, в котором и так уже почти каждый сайт кишит скриптами и флешем, а морда к почтовому ящику может отожрать 400 МБ, уже не жалко.
Я конечно за стандарты все дела, но если честно, HTML5 у меня вызывает определенные опасения. Он хоть и открытый и международный, но поддерживается как-то совершенно поразному не только разными браузерами, но и от одной версии браузера к другой все может меняться. И этот процесс растянут на годы и годы вперед. Наверное можно провести аналогию с вайном, которая в одной версии чинит одни программы, но ломает другие, потом чинит другие, но ломает одни и нет этому процессу ни конца ни начала ни края. Т.е. как мне кажется, большинство html5-сайтов или там игрушек, которые созданы с поддержкой открытых стандартов сейчас, далеко не факт, что будут работать так же хорошо лет через пять в том же html5-фаерфоксе, который с тех пор сильно обновился. В этом смысле лучше может оказаться даже какой-нибудь флеш, который хоть и блоб, но какой-то более монолитный чтоли в плане спеков субъективно-интуитивно - сам с ним дела не имел и не планирую, а уж если откроют как-нибудь попозже за ненадобностью, то будет вообще конфетка.
Про вебгл - хз - бинарные данные мне конечно нравятся не очень, но опенгл код на жавасктрипте - это крутая и правильная штука - взял блокнот, написал и запустил - только сделали бы сам опенгл попроще - пускай пилят дальше.
но опенгл код на жавасктрипте - это крутая и правильная штука - взял блокнот, написал и запустил - только сделали бы сам опенгл попроще - пускай пилят дальше.
На самом деле есть фреймворки. Но самоделкины об этом не знают.
WebGL имеет к OpenGL довольно посредственное(очень) отношение,
Это OpenGL ES 2.0, какое же оно посредственное?
в отличие от OpenGL является по-настоящему кроссплатформенным.
ЛОЛШТО?
У WebGL плюс в том, что работает он в браузере, а потому вся обвязка тоже кроссплатформенная получается автоматически. Но только сам WebGL тут не причем.
Но при этом и рендер на C++ тебя никто не заставляет делать не кроссплатформенным, т.е тут уже сам OGL не причем.