Как активировать WebGL в браузере Mozilla Firefox
Урок 0: Приступаем к работе с WebGL
Урок 1 >>
Материал в оригинале можно найти здесь
Первое, что вам нужно сделать при начале работы с WebGL — обзавестись браузером, который его поддерживает. Что именно использовать — зависит от того, хотите ли вы просто посмотреть на готовые примеры WebGL или разработать свои.
Простой путь
В целом, я рекомендую пойти по этому пути, если вы хотите взглянуть на примеры WebGL, и не планируете разработку своих приложений, и не переживаете, что самые последние вещи могут не работать, тогда:
- При использовании Windows убедитесь, что установлена Исполняемая библиотека Microsoft DirectX — ее можно бесплатно скачать с сайта Microsoft.
- После этого установите самую последнюю версию драйверов видеокарты.
- Теперь выбирайте браузер:
- Firefox: достаточно версии 4 и выше.
- Chrome: вам нужно просто установить его. Если вы его уже используете, просто проверьте, что он обновлен до версии 10 — почти наверняка это произошло автоматически (версия выпущена в марте 2011), но вы можете убедиться в этом в пункте меню «О браузере Google Chrome».
- Safari: на Mac, OS X 10.7 имеет поддержку WebGL, но она отключена по умолчанию. Для ее включения зайдите в меню разработчика и отметьте флажок «Включить WebGL».
Готово! Теперь вы готовы. Можете посмотреть на некоторые WebGL-страницы.
Сложный путь
Если вы сами разрабатываете на WebGL или вам нужны новейшие возможности, тогда вам просто необходимо иметь самую последнюю версию браузера. WebGL поддерживается в версиях для разработчиков всех браузеров, кроме Internet Explorer, поэтому вам остается просто выбрать подходящую версию для вашего компьютера. Насколько это легко — зависит от того, какой у вас компьютер:
- Windows: Если вы еще этого не сделали, убедитесь, что у вас установлена исполняемая библиотека DirectX — ее можно бесплатно скачать с сайта Microsoft. После этого установите либо Firefox, либо Chromium в зависимости от своих предпочтений. Если это не сработало — проверьте инструкцию по устранению неполадок. (Экстренные новости: пре-бета версия Opera, которая теперь поддерживает WebGL на Windows, теперь доступна. Однако, она не такая стабильная, как другие браузеры, поэтому не полагайтесь на нее как на единственную реализацию WebGL. Кроме того, она будет работать, только если ваша видеокарта поддерживает OpenGL 2.0. В общем, ее не так просто заставить работать)
- Macintosh: Если у вас Snow Leopard (OS X 10.6), то все должно быть хорошо. Я рекомендую использовать WebKit версию для разработчиков, которая будет альтернативой браузеру Safari. Если у вас Leopard (OS X 10.5), у вас не получится использовать эту версию WebKit, но вы можете работать в Firefox или Chromium. Пользователи Snow Leopard, конечно же, тоже могут использовать Firefox или Chromium. Если у вас более старая версия OS X, я, к сожалению, не знаю какого-либо браузера, который вы можете использовать :(.
- Linux: К сожалению, довольно большое количество драйверов для видеокарты недостаточно хороши для работы с WebGL. То же самое было и с Windows, но разработчики браузеров смогли обойти это с помощью DirectX. К несчастью, в Linux нет подобного обходного пути. Вот, что у меня получилось найти:
- Если у вас видеокарта Nvidia со свежими драйверами, то все должно работать хорошо в Firefox или Chromium.
- Если у вас видеокарта ATI, наверное, лучшим выбором будет Firefox.
- Если у вас видеокарта Intel, то вероятней всего у вас будет тормозить программный рендеринг, но во всяком случае вы сможете хотя бы увидеть работу WebGL. Попробуйте Firefox или Chromium, но вероятно они не будут работать на настройках по умолчанию (аппаратный рендеринг). Для использования программного рендеринга на Linux вам необходимо установить Mesa (и убедиться в менеджере пакетов, что у вас последняя версия) и затем использовать последний Firefox с небольшими дополнительными настройками.
Более подробно об этом в разделе устранения неполадок.
Firefox
«Нестабильная» версия Firefox для разработчиков называется Minefield. Она обновляется каждую ночь и уже довольно надежная: я не замечал падений в последнее время (а я использую ее постоянно).
Она может работать наряду с обычной версией Firefox, поэтому не нужно волноваться, что придется удалять ее, если вы прекратите ей пользоваться или просто на время переключитесь в обычную версию Firefox.
Для получения Minefield:
- Открывайте страницу ночных сборок и выбирайте подходящую версию для вашего компьютера. Будьте внимательны! Там может быть множество версий, с именами типа «firefox-10.0a1что-то там» или «firefox-10.0a2что-то там». Вам нужна самая последняя, где будет самое большое число после ‘a’ (альфа) или ‘b’ (бета).
- Установите ее (на это время вам нужно будет закрыть все открытые экземпляры Firefox).
- Запускайте Minefield.
Полезная подсказка — если вы хотите работать с Minefield вместе с обычным Firefox, вы можете сделать это добавлением аргументов командной строки: -P Minefield -no-remote.
Первый аргумент запускает его с отдельным профилем (чтобы у вас были раздельные истории и наборы открытых вкладок в каждом браузере), а второй параметр обозначает, что при запуске Minefield, когда Firefox уже открыт, Minefield не будет открыт новой вкладкой в уже запущенном Firefox.
Возможно, вы также захотите добавить -P default -no-remote к аргументам запуска обычного Firefox для аналогичного эффекта.
Пользователям Windows: вы можете установить аргументы командной строки для любого приложения, кликнув правой кнопкой мыши на иконке приложения, затем выбрав «Свойства» и добавив параметры в конец поля «Объект». Пользователям Mac и Linux — я не знаю, как вы это делаете, но вероятно, что вы и сами в курсе :).Теперь можете посмотреть на некоторые WebGL-страницы.
Запуск Minefield с программным рендерингом на Linux
Если ваша видеокарта — или драйвер, что более вероятно — не поддерживают OpenGL 2.0, то единственный способ добиться работы WebGL на Linux — использовать библиотеку под названием Mesa.
По существу, Mesa эмулирует видеокарту на программном уровне, поэтому работает она медленнее — но это лучше, чем ничего.
Mesa интегрируется с Minefield, «нестабильной» версией Firefox для разработчиков, обычно это часть вашего дистрибутива Linux. И вот как все это можно сделать:
- Скачайте последнюю версию Minefield
- Установите ее (на это время вам нужно будет закрыть все открытые экземпляры Firefox).
- Через менеджер пакетов Linux убедитесь, что Mesa установлена и обновлена до последней версии
- Запускайте Minefield.
- Перейдите на страницу «about:config»
- Отфильтруйте по «webgl»
- Установите значение настройки «webgl.enabled_for_all_sites» в значение «true».
- Установите значение настройки «webgl.software_rendering» в значение «true».
- Пропишите в «webgl.osmesalib» путь к библиотеке OSMesa (обычно это /usr/lib/libOSMesa.so).
Теперь все должно быть настроено и вы можете посмотреть на некоторые WebGL-страницы.
Safari
Запомните, что Safari поддерживает WebGL на Mac с системой Snow Leopard (OS X 10.6). Если у вас Leopard (10.5), Windows или Linux, то вам нужно использовать Firefox или Chromium (при более старой версии OS/X я не знаю браузера, который вы могли бы использовать
Источник: //devburn.ru/%D1%83%D1%80%D0%BE%D0%BA-0-%D0%BF%D1%80%D0%B8%D1%81%D1%82%D1%83%D0%BF%D0%B0%D0%B5%D0%BC-%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5-%D1%81-webgl/
Библиотека WebGL для браузеров
API WebGL расшифровывается как Web-based Graphics Library. Это дополнительная библиотека для языка JavaScript. При помощи неё создаются интерактивные 3D-элементы в веб-браузерах. Благодаря тому, что WebGL использует низкоуровневые аппаратные средства, часть его кода реализуется при помощи видеокарт, подключенных к конфигурации компьютеров.
С точки зрения веб-технологии WebGL — это спецификация, выполняющая отрисовку трёхмерной графики через элемент Canvas гипертекстовой разметки HTML. Через оболочку OpenGL ES 2.0 он обращается к ресурсам видеокарты, а также поддерживает опцию аппаратного ускорения браузера.
Как подключить?
Для использования WebGL необходим веб-обозреватель, обеспечивающий её функционирование (то есть полностью совместимый с ней).
Примечание. Можно включить WebGL в Firefox, Хроме, Опера и других распространённых популярных веб-обозревателях.
В отличие от платформ Adobe Flash, Java, Microsoft Silverlight, данная технология не нуждается в инсталляции дополнительных апплетов для ОС Windows и подключении к браузерам аддонов.
Для корректной работы WebGL также требуется Windows 7, 8 или 10 с последними обновлениями, а также актуальная видеокарта с последней версией драйвера.
Проверить работу графической платформы можно так:
1. Перейдите в используемом браузере по адресу — //get.webgl.org/.
2. Тест запускается автоматически в независимости от выбранного браузера, будь то Google Chrome, Файрфокс или Yandex.
Если модуль работает, вы увидите на страничке вращающийся куб. В противном случае появится сообщение о том, что нет поддержки (на англ. support) технологии, и рекомендации по её настройке.
Общие рекомендации
1.Обновите систему:
- нажмите кнопку «Пуск»;
- откройте щелчком мыши «Панель управления»;
- установите тип отображения «Категория»;
- клацните заголовок раздела «Система и безопасность»;
- в подразделе «Центр обновления… » активируйте кликом «Проверка обновлений»;
- дождитесь завершения проверки;
- загрузите и установите все доступные обновления для Windows.
2. Выполните диагностику DirectX:
- нажмите Win+R;
- в панели «Выполнить» задайте директиву — dxdiag;
- нажмите «OK»;
- разрешите утилите доступ в Сеть: в сообщении с запросом нажмите «Да»;
в открывшемся окне перейдите на вкладку «Экран»;
ознакомьтесь с данными видеоадаптера и драйвера; если он работает правильно, в поле «Примечание» будет отображена надпись «Неполадок не найдено»;
3. Переустановите или обновите DirectX:
Данный вариант является альтернативой обновлению ОС. Если вы сделали апдейт, но DirectX выдаёт ошибки, отключен, некорректно работает, установите/обновите DirectX вручную:
перейдите на офсайт, страничку для скачивания — //www.microsoft.com/ru-ru/download/details.aspx?id=35;
нажмите кнопку «Скачать»;
на новой страничке кликните по ссылке «Отказаться и продолжить»;
запустите онлайн-инсталлятор и внимательно следуйте его инструкциям;
по завершении процедуры перезагрузите компьютер.
4. Обновите драйвера видеокарты:
Это можно сделать двумя способами:
Способ №1. Нажмите вместе клавиши «Win» + «Break». В открывшемся окне пройдите по ссылке «Диспетчер устройств». В списке оборудования щелчком мышки откройте раздел «адаптеры». Кликните правой кнопкой по названию видеокарты. В контекстном меню нажмите «Обновить драйверы…». Далее следуйте подсказкам системы.
Способ №2. Откройте в браузере официальный сайт производителя видеокарты и перейдите в раздел «Загрузка драйверов» (например, Nvidia). Через строку внутреннего поиска или специальную форму задайте наименования и серию видеокарты, которая установлена на ваш ПК. Скачайте и установите драйвер в Windows.
Яндекс.Браузер
1. Первым делом в Яндекс.Браузере проверьте подключение ускорения. Откройте:
Меню → Настройки → Дополнительные настройки
2. В блоке система проверьте статус опции «Использовать аппаратное ускорение… ». Она должна быть включена.
3. Чтобы выполнить диагностику настроек по обработке графики, наберите в адресной строке browser://gpu/
В последней графе первого блока отображается статус подключения WebGL.
4. Дополнительно вы можете активировать программный рендеринг графики. Для этого перейдите на вкладку — browser://flags/Клацните опцию «Включить» в блоке «Переопределение списка программного рендеринга».
Opera
В Opera по умолчанию отключена поддержка WebGL. Чтобы активировать модуль, обеспечивающий работу этой технологии, выполните эти действия:
в строке для ввода доменов наберите — flags;
нажмите «Enter»;
в поисковой строке панели «Экспериментальные функции» введите — webgl;
снова нажмите «Enter»;
в появившихся блоках щёлкните кнопку «Включить».
Google Chrome
1. Проверить опции по обработке графики можно набрав в строке веб-обозревателя — chrome://gpu.
2. Чтобы активировать рендеринг, перейдите на вкладку — chrome://flags. А затем в поле «Переопределение списка… » щёлкните «Включить».
Вот и всё! Успешной вам настройки WebGL в браузерах!
Источник: //brauzerok.ru/mozilla-firefox/biblioteka-webgl-brauzerov
Как исправить Firefox и WebGL
Firefox и WebGL. обычно вызвано неверно настроенными системными настройками или нерегулярными записями в реестре Windows.
Эта ошибка может быть исправлена специальным программным обеспечением, которое восстанавливает реестр и настраивает системные настройки для восстановления стабильности
Если у вас есть Firefox и WebGL.
то мы настоятельно рекомендуем вам Загрузить (Firefox и WebGL.) Repair Tool.
This article contains information that shows you how to fix Firefox and WebGL. both (manually) and (automatically) , In addition, this article will help you troubleshoot some common error messages related to Firefox and WebGL. that you may receive.
Примечание: Эта статья была обновлено на 2019-04-13 и ранее опубликованный под WIKI_Q210794
Firefox и WebGL. это имя ошибки, содержащее сведения об ошибке, в том числе о том, почему это произошло, какой системный компонент или приложение вышло из строя, чтобы вызвать эту ошибку вместе с некоторой другой информацией.
Численный код в имени ошибки содержит данные, которые могут быть расшифрованы производителем неисправного компонента или приложения.
Ошибка, использующая этот код, может возникать во многих разных местах внутри системы, поэтому, несмотря на то, что она содержит некоторые данные в ее имени, пользователю все же сложно определить и исправить причину ошибки без особых технических знаний или соответствующего программного обеспечения.
Причины Firefox и WebGL.?
Если вы получили эту ошибку на своем ПК, это означает, что произошла сбой в работе вашей системы.
Общие причины включают неправильную или неудачную установку или удаление программного обеспечения, которое может привести к недействительным записям в вашем реестре Windows, последствиям атаки вирусов или вредоносных программ, неправильному отключению системы из-за сбоя питания или другого фактора, кто-то с небольшими техническими знаниями, случайно удалив необходимый системный файл или запись в реестре, а также ряд других причин. Непосредственная причина «Firefox и WebGL». ошибка – это неправильное выполнение одной из обычных операций с помощью системного или прикладного компонента.
More info on Firefox and WebGL
РЕКОМЕНДУЕМЫЕ: Нажмите здесь, чтобы исправить ошибки Windows и оптимизировать производительность системы.
Есть идеи? Firefox показывает мне сообщение об ошибке «Выделить достаточно памяти». Я установил Unity для открытия некоторых онлайн-игр, но Hello. WebGL не работает на моем Firefox
Покупка записи gpu my WebGL в Firefox (последняя стабильная версия). Я использую Windows 8 Pro 32bit и имею графику AMD Radeon HD 3100, и я использую последние драйверы для своей карты. Привет, ребята,
У меня проблема с
решает эту проблему. Использование / атака WebGL в Firefox и Opera? (могут пострадать и другие браузеры)
Однако, просмотрев настройки для Firefox на Mac. Нажмите, чтобы установить значение true. Кто угодно?
Fx v4 Opera и другие браузеры, и в статье рекомендуется отключить WebGL в браузере. Любой мой скри.
Ура .. Информация? Недавно я прочитал эту статью о новом эксплойте / атаке, используя WebGL в Firefox, и Opera, я не могу найти ссылку на WebGL …. О: config
Вот
Что такое WEBGL
он говорит, что для этого опыта необходим браузер, поддерживающий WebGL. Есть ли у IE 9 стена
Я пробовал сайт в IE 9 и не поддерживал это?
Нет webGL / openGL
все драйверы обновлены. Драйверы не должны иметь большого значения, если эта проблема будет большой помощью.
Я настраиваю свои окна с поддержкой Optiplex 755. Проигрыватель 7 pro поддерживает webgl / opengl в соответствии со спецификациями. Проверьте наличие обновлений и убедитесь, что для работы требуется WebGL и аппаратное ускорение.
Любые идеи о том, как разрешить бит 64, 4 гигабайтов ram с браузером Chrome Chrome. Если он не работает, он отображается вручную в вашем браузере. Возможно, вам также придется включить обновление Chrome.
ATI Radeon hd 2400 xt интегрирован. Я не знаю, что такое значение по умолчанию в Chrome, но вообще, если оно не очень устарело. Opera 11 и WebGL
И теперь, внезапно, вне и т. Д. Приятно читать, по производительности Flash было ужасно по сравнению с другими браузерами, Opera столько, сколько я делал при использовании v9. никогда не использовали Opera, начиная с ранних версий v10.Я хотел удалить Chrome Plus и найти другой браузер, который будет использоваться рядом, чтобы открыть новый поток, чтобы выразить свое удивление, но …
Я чувствую, что могу, наконец, действительно, ДЕЙСТВИТЕЛЬНО наслаждаться на любой ОС с достаточной аппаратной поддержкой.
Те, кто знает меня здесь, также знают, что я IE9, и хотя я полностью ожидал тех же результатов, я загрузил Opera. Концерн Opera Core – WebGL и аппаратное ускорение Я не хотел, чтобы LOL
И наконец Цитата:
Наша реализация будет включать в себя полные компоновки ускорения и обнаружила, что она глючная, глючная, медленная и раздражающая. Op? Ra 11.50 не использует DirectX, а OpenGL для открытия веб-страницы. новая версия в настоящее время в d? veloppement. Когда v11 находился в разработке, я тестировал бета-просмотр через https-страницы, был очень медленным и т. Д.
Как и в случае с IE9, Op? Ra предложит нигде, Opera для меня удивительно быстро.
WebGL не поддерживается YOGA 910
Кто-нибудь знает, что происходит? Появляется WebGL. Я получаю сообщение о том, что мой браузер поддерживает его, но мой компьютер этого не делает. У меня была карта, которая поддерживала больше, чем просто некоторые игры.
Кроме того, я хочу, чтобы Yoga 910 обладал более красивой графикой, не поддерживался.
Я использую Chrome и перехожу на androidify.com или в новую Google Earth и одну важную проблему.
Я очень доволен своей йогой 910.
WebGL попал в ошибку?
Как серебристый серфер, у меня есть моя Домашняя страница и как я могу ее решить?
Кто-нибудь знает, что означает это сообщение, и не знаю, что это значит. Время отключения WebGL?
WebGL – это новый веб-стандарт, который активируется путем обновления своих систем по мере необходимости, чтобы помочь снизить риски.
Время отключения WebGL? Ссылка выше дает информацию о том, как отключить WebGL по умолчанию в Firefox 4 и Google Chrome и включен в Safari. Firefox и Chrome. Эта ссылка подробно описывает, почему вы хотели бы это сделать.
US-CERT рекомендует пользователям и администраторам просматривать отчет в контексте и отказ в обслуживании и междоменные атаки.Воздействие этих вопросов включает WebGL и переключаемая графика
Странно то, что он работает на другом старом ноутбуке с графикой Intel. Браузер всегда говорит, что Hello, я бы хотел использовать WebGL на моем Latitude 5570. Спасибо за любую помощь.
webgl не поддерживается.
Я нашел записку от HP, утверждающую, что приложения, использующие OpenGL, не могут использовать SG SG с настройками производительности. Но такой режим не включен в режим энергосбережения в amd-переключаемой графике. Они предлагают переключение на выделенный режим с графикой AMD Switchable в некоторых своих моделях. Переименование файла exe и добавление его в опцию в BIOS Dell.
К сожалению, кажется, что все браузеры все графики в BIOS как обходной путь. Проблемы с Shockwave и WebGL с Chrome
говоря, что Shockwave Flash или WebGL перестали работать. Нажатие на «игнорировать» или «перезагружать» просто приводит к работе на моем ПК, используя операционную систему Windows XP. Все чаще при просмотре веб-сайтов я получаю сообщения. W10 больше не будет использовать их, и Chrome подпрыгнул. У меня схожие проблемы с тем, как я могу остановить их от сбоев?
Зачем мне эти программы и Flash на этом веб-сайте. Я использую Google Chrome для просмотра в браузере при необходимости – я вернулся в IE!
Нынешнее решение похоже на использование другого, я думаю, что это связано с тем, что сообщение появляется рано или поздно.
AMD Radeon R5 M330 – WebGL не поддерживается !!!
AMD, используемая для nVidia, так что это действительно расстраивает ..!) Помогите пожалуйста! Кстати, только что обновили драйверы, прежде чем отправлять эту проблему! Спасибо заранее!
Новая видеокарта от AMD и не поддерживает WebGL? (Никогда раньше
Недостатки безопасности, обнаруженные в стандарте WebGL
Обнаруженные недостатки безопасности создают синий экран смерти, но вводят вредоносный код в систему. Исследователи из Context Information Security опубликовали предупреждение о стандарте WebGL.
По мнению исследователей, этот недостаток можно использовать не только в стандарте WebGL. От Mosaic 1 до Chrome 15, от HTML 1.0 до WebGL (Infographic)
ПодробнееСкриншоты
браузерная компания будет получать все больше и больше. Несколько лет назад, firefox оставил позади, IE 9 принял HTML5, новый Firefox будет появляться каждые шесть недель. Все основные браузеры получают визуальное обновление всего за несколько месяцев. Это потрясающе, чтобы посмотреть, что такое ранняя шкала времени, с скриншотами основных версий.
отмечая свой третий день рождения.
Google Chrome теперь Chrome Netscape или Opera выглядели как по сравнению с сегодняшним днем. Нажмите, чтобы расширить … Это, безусловно, оживило рынок браузеров и побудило всех двигаться быстрее или получать пользователей, потому что в этом году они улучшили большую функцию и ошибки.
тоже.
Satellite L505 – Нет сообщения об ошибке поддержки WebGL
Можете ли вы опубликовать снимок экрана об этой ошибке, я надеюсь, вы можете мне помочь.
Firefox 5 Июнь 21, Firefox 6 Август 8, Firefox 7 Сентябрь 27 Дата релиза канала
все эти версии, не могут ждать до июня! Ссылка
Приятно, я бы с удовольствием посмотрел По словам поставщика браузеров с открытым исходным кодом, Firefox 5, Firefox 6 и Firefox 7 будут обернуты и будут предлагаться конечным пользователям в 2011.Click для расширения …
Источник: //ru.fileerrors.com/firefox-and-webgl.html
3D в вебе — выбор технологии
Это первая статья из небольшой серии, которая написана разработчиками трехмерного javascript-движка на базе WebGL.
Эта статья — обзорная, но в последующих планируется рассказать уже о самом движке и его возможностях — с примерами, демонстрациями и проч.
И автор будет благодарен, если кто-нибудь поделится для него инвайтом, чтобы он мог не только отвечать на возможные вопросы в х, но и последующие статьи на эту тему мог бы публиковать не через меня, а самостоятельно.
Обзор 3D в Web
Привет всем хабражителям. В этой статье я хочу немного рассказать о состоянии дел в области трехмерной графики в Web, и о том, что может предложить наша команда для тех, кто бы хотел реализовать проект, связанный с 3D, в вебе, но сомневается в выборе технологии или просто не знает в какую сторону «копать».
Также надеюсь, что статья будет интересна всем, кто следит за развитием веб-технологий.
Несмотря на то, что технологии трехмерной графики, используемые в десктопных приложениях, довольно долгое время шагают семимильными шагами, и за прошедшие 10 лет успело смениться несколько поколений 3D API и графического железа, веб-разработчики не имели родной для веба технологии, позволяющей работать с 3D.
Компании, создающие проекты с трехмерной графикой вынуждены были разрабатывать собственные плагины к браузерам, либо использовать сторонние, обеспечивающие отображение 3D графики.
Эти подходы сопряжены с необходимостью либо содержать отдельную команду для поддержки плагина, либо быть ограниченным тем уровнем функционала и поддержки, который предлагали компании создающие решения для 3D графики в браузере. Ситуация начала исправляться пару лет назад, когда Apple предложила API для работы с 3D в Web.
Начинание Apple поддержали Google и Mozilla, и, несколько позднее, Opera. Так родилась спецификация WebGL. Приблизительно в то же время Adobe объявила о том, что Flash 11 будет иметь API для работы с трехмерной графикой. На мой взгляд, несмотря на имеющиеся неоспоримые достоинства, Flash является плагином и также как и любой другой плагин не является родной для веба технологией.
Он очень слабо интегрирован с экосистемой браузера, и фактически выживается с мобильных платформ. Кроме того Stage3D API не базируется на каком-то устоявшемся и популярном 3D API, а значит требует много времени для изучения и понимания возможностей, узких мест, например затруднен перенос существующих исходных кодов шейдеров. Кроме того, при создании проектов на Flash сложно опираться на HTML-инструментарий для сложной верстки и затруднено согласование (наложение, взаимодействие) DOM страницы и контента, сделанного с использованием Flash, а при разработке на ActionScript невозможно воспользоваться всем богатством библиотек созданных сообществом Web-разработчиков. На мой взгляд, WebGL имеет больше перспектив. Надеюсь, я смогу убедить вас в этом.
Обзор WebGL
В основе WebGL лежит API OpenGL, и с некоторой долей условности можно сказать, что WebGL – это биндинг OpenGL для JavaScript. WebGL ориентируется на набор возможностей предоставляемых OpenGL ES 2.0, что позволяет использовать его на широком спектре оборудования: как на десктопах, так на мобильных платформах.
Разумеется, возможности настольных компьютеров в большинстве случаев существенно превышают то, что может дать WebGL.
Но такое решение позволило создать некоторое единообразие с мобильными платформами, где ускорители трехмерной графики обосновались относительно недавно и на данный момент по уровню функционала и производительности примерно соответствуют графическим ускорителям среднего класса для десктопных компьютеров 5-7 ми летней давности.
Как и OpenGL, WebGL – это довольно низкоуровневый API, и для того чтобы создавать проекты, используя его непосредственно, нужно довольно хорошо разбираться во многих непростых аспектах трехмерной графики.
Однако история показала, что высокоуровневые 3D API плохо приживаются в среде разработчиков, так, например, канул в лету Direct3D 7 Retained Mode, к 8-й версии Direct3D Microsoft перестала его развивать. На мой взгляд, причина тому – очень сильные различия в задачах, стоящих перед 3D-разработчиками.Перед многими стоит задача создать максимально реалистичную графику, работающую в режиме реального времени, и никто не желает жертвовать существенной частью производительности ради универсальности или несколько большей простоты.
При работе с низкоуровневым API зачастую имеются возможности сделать менее универсальное (но решающее поставленную задачу), зато в разы более быстрое и/или даже простое решение.
Многие могут напомнить мне известную фразу Дональда Кнута: «Преждевременная оптимизация – корень всех бед», но в случае с трехмерной графикой выводить минимум 30, а лучше 60 кадров в секунду – не просто желание, это – необходимость. При этом требуется обеспечивать привлекательный и конкурентный уровень графики приложения.
Разработчики стандарта WebGL при рассмотрении этих противоречий рассчитывают на то, что сложность работы с WebGL непосредственно будет компенсирована большим числом библиотек. Таким образом, будут удовлетворены и опытные разработчики, создающие сложные приложения, и начинающие – они смогут создавать проекты, не вникая сразу во все детали низкоуровневого API, а будут использовать те или иные библиотеки/фрэймворки. В настоящий момент WebGL уже поддерживается браузерами Google Chrome и Mozilla Firefox для Windows, Linux и MacOS, и браузером Firefox for Android. Opera в 12-й версии также представила реализацию WebGL (хоть и довольно сырую), в ночных сборках Safari для MacOS имеется возможность включить поддержку WebGL. В iOS можно активировать WebGL в компоненте UIWebView, правда пока что с использованием приватных API (соответственно такое приложение не может быть опубликовано в AppStore).
Обзор IEWebGL
Внимательный читатель к этому моменту уже наверняка заметил, что я обошел стороной вопрос поддержки WebGL со стороны Microsoft.
К сожалению, по ряду причин, обсуждение которых выходит далеко за рамки этой статьи, в Microsoft решили, что WebGL недостаточно соответствует духу Web, и идеям, на которых вырос современный Интернет, а также, что стандарт WebGL в существующем виде имеет ряд проблем с безопасностью.
Это не может не огорчать любого, кто имеет достаточный опыт веб-разработки и знает, как тяжело строить свои решения на технологиях, которые имеют существенно отличающийся уровень поддержки среди производителей браузеров.
Наша команда рада предложить возможное решение для тех, кто хочет создавать проекты на WebGL и в то же время не хочет упускать пользователей браузеров Internet Explorer. Наша разработка – IEWebGL. Это ActiveX плагин для IE, работающий во всех версиях браузера с 6-й по 10-ю и реализующий API WebGL. IEWebGL абсолютно бесплатен.
Вы можете использовать его для создания своих проектов без ограничений. Плагин работает как в 32-х, так и в 64-х битных версиях браузеров Internet Explorer на операционных системах начиная с Windows XP и заканчивая Windows 8 (за исключением Metro-style IE и ARM-версии Windows 8, но об этом подробнее в следующей статье).
Расскажу немного подробнее о том, как устроен IEWebGL. Возможно, вы знаете что, для нормальной работы OpenGL в Windows необходимо устанавливать драйвер от производителя видеокарты, так как драйверы, входящие в комплект Windows обеспечивают только аппаратное ускорение Direct3D.
В связи с этим Google и Mozilla разработали библиотеку с открытым исходным кодом ANGLE, которая эмулирует API OpenGL посредством Direct3D и таким образом не зависит от наличия OpenGL драйвера в системе. ANGLE-рендерер используется браузерами Chrome и Firefox в Windows по умолчанию.
ANGLE также содержит в своем составе транслятор языка шейдеров GLSL (используемый в OpenGL/WebGL) в язык HLSL, используемый Direct3D. В настоящий момент реализация стандарта OpenGL ES 2.0 библиотекой ANGLE, проходит все тесты на совместимость ES 2.0.3.
Плагин IEWebGL построен на основе ANGLE и поэтому предоставляет высококачественную реализацию стандарта WebGL, сравнимую по качеству с реализациями в Google Chrome и Mozilla Firefox.Кроме того, в современных версиях IE используются новые API для аппаратно-ускоренного композитинга страницы и графического контента плагина, таким образом обеспечивается высокая скорость работы и низкое потребление энергии, так как графический контент не покидает пределов видеоадаптера и не требуется его обработка центральным процессором.
Разумеется, плагин не является частью браузера, и потому имеются некоторые очень незначительные отличия, в основном касающиеся получения контекста WebGL. По стандарту контекст WebGL создается вызовом .
getContext(“webgl”) элемента canvas, однако плагины создаются на странице с использованием элемента object и поэтому разработчику сайта нужно либо генерировать разный HTML-код для IE и для прочих браузеров, либо использовать JavaScript для динамического создания нужного элемента (object или canvas) в зависимости от браузера. К счастью на этом отличия практически заканчиваются. В IE вы используете тот же вызов .getContext(“webgl”) применительно к элементу object и в дальнейшем работаете с контекстом в полном соответствии с API WebGL. Код для браузеров со встроенной поддержкой WebGL: Код для браузеров Internet Explorer: IEWebGL также реализует полную поддержку стандарта TypedArray в IE до 9-й версии включительно. В IE10 IEWebGL использует реализацию TypedArray встроенную в браузер. Таким образом, даже если ваш сайт не работает с 3D графикой, вы можете использовать IEWebGL, для того, чтобы добавить возможность работы с бинарными данными в IE версий 9 и ниже используя стандартные API. Подводя итог, хочу сказать, что на сегодняшний день при выборе технологии для отображения 3D в Web, стоит рассмотреть WebGL как реальную альтернативу старым подходам, надежно работающую в большинстве браузеров.
Сайт IEWebGL: iewebgl.com
В следующей статье мы расскажем уже непосредственно про наш javascript-движок, использующий возможности WebGL для трехмерной визуализации.
- 3d
- 3d графика
- webgl
- javascript
- web-разработка
Источник: //habr.com/post/149025/
Как включить WebGL в моем браузере? Bilee
Я принял этот ответ в сообществе wiki, поэтому, пожалуйста, обновите его, если вы заметите устаревшую или отсутствующую информацию.
Поддержка браузера для WebGL
Проверьте caniuse.com/webgl, чтобы узнать, поддерживает ли ваш браузер WebGL.
Включение WebGL
Если ваш браузер поддерживает WebGL, выполните следующие действия, чтобы включить его:
Хром
Во-первых, включите аппаратное ускорение:
- Перейдите в chrome://settings
- Нажмите кнопку + Показать дополнительные настройки
- В разделе « Система » убедитесь, что флажок Использовать аппаратное ускорение, когда установлен флажок (вам нужно перезапустить Chrome, чтобы все изменения вступили в силу)
Затем включите WebGL:
- Перейти к chrome://flags
- Убедитесь, что отключить WebGL не активирован (вам нужно перезапустить Chrome, чтобы все изменения вступили в силу)
В новых версиях этот параметр Disable WebGL не будет доступен, вам придется искать WebGL 2.0 (или другую версию), которая выглядит так:
Здесь вам нужно будет поменять значение « Default на « Enabled в раскрывающемся списке.
- [Попробовать, если выше не работает] Включить – Переопределить список рендеринга программного обеспечения
Затем проверьте состояние WebGL:
- Перейти к chrome://gpu
- Проверьте элемент WebGL в списке состояния графических функций . Статус будет одним из следующих:
- Аппаратное ускорение – WebGL включен и аппаратно ускорен (работает на графической карте).
- Программное обеспечение, аппаратное ускорение недоступно – WebGL включен, но работает в программном обеспечении. См. Здесь для получения дополнительной информации: «Для программного обеспечения WebGL Chrome использует SwiftShader , программный GL-растеризатор».
- Недоступно – WebGL недоступен в аппаратном или программном обеспечении.
Если статус не «Аппаратное ускорение» , то список обнаруженных проблем (ниже списка состояния графических функций ) может объяснить, почему аппаратное ускорение недоступно.
Если ваша видеокарта / драйверы занесены в черный список, вы можете переопределить черный список. Предупреждение: это не рекомендуется! (См. Примечание к черным спискам ниже). Чтобы переопределить черный список:
- Перейти к chrome://flags
- Активируйте параметр списка переопределения программного обеспечения (вам нужно перезапустить Chrome, чтобы все изменения вступили в силу)
Дополнительную информацию см. В справке Chrome: WebGL и 3D-графика .
Fire Fox
Во-первых, включите WebGL:
- Перейти к about:config
- Поиск webgl.disabled
- Убедитесь, что его значение false (любые изменения вступают в силу немедленно без перезапуска Firefox)
Затем проверьте состояние WebGL:
- Перейти к about:support
- Осмотрите строку WebGL Renderer в таблице Graphics :
- Если статус содержит производителя, модель и драйвер видеокарты (например: «NVIDIA Corporation – NVIDIA GeForce GT 650M OpenGL Engine» ), то WebGL включен.
- Если статус «что-то вроде « Заблокировано для вашей видеокарты из-за неразрешенных проблем с драйверами » или « Заблокировано для версии вашего графического драйвера » , ваша видеокарта / драйвер в черный список.
Если ваша видеокарта / драйверы занесены в черный список, вы можете переопределить черный список. Предупреждение: это не рекомендуется! (См. Примечание к черным спискам ниже). Чтобы переопределить черный список:
- Перейти к about:config
- Поиск webgl.force-enabled
- Установите значение true
(Как и Chrome, Firefox имеет флажок « Использовать аппаратное ускорение, когда доступно» , в разделе «Настройки» > « Дополнительно» > « Основные» > « Просмотр» . Однако, в отличие от Chrome, Firefox не требует, чтобы этот флажок был проверен для работы WebGL.)
Сафари
- Перейти к настройкам Safari
- Перейдите на вкладку « Дополнительно »
- Убедитесь, что установлен флажок Show Develop в панели меню.
- В меню « Разработка Safari» убедитесь, что Enable WebGL установлен
Заметки
Если ваши графические драйверы слишком стары для поддержки WebGL, вы можете обновить их.
Более подробная информация доступна здесь:
- Chrome: графика не отображается должным образом
- Firefox: обновите графические драйверы
Черные списки
Некоторые видеокарты и драйверы занесены в черный список некоторыми браузерами, поскольку они, как известно, содержат серьезные ошибки или вызывают сбои. В очень тяжелых случаях это может привести к зависанию всего компьютера! Например, эта проблема приводит к тому, что некоторые компьютеры Mac блокируются и требуют перезапуска.
У многих браузеров есть возможность переопределить черный список (т. Е. Попытаться использовать черные списки, несмотря на риски). Это не рекомендуется! Если вы понимаете и принимаете риски, вы должны переопределять черный список.
Более подробная информация доступна здесь:
- WebGL Blacklists
- Chrome: черные графические функции
- Chrome: список ошибок драйвера GPU
- Firefox: заблокированные графические драйверы
Источник: //www.bilee.com/webgl.html