Технология Web-GL
С появлением Web-технологии компьютер
начинают использовать с другой стороны, это были представители широчайших слоев
населения домохозяйки,
пенсионеры, дети.
При появлении технологии Web компьютеры повернулись лицом к этим двум совершенно противоположным категориям потенциальных пользователей. Элиту объединяла одна черта – в силу высочайшей ответственности и практически стопроцентной занятости “большие люди” никогда не пользовались компьютером; типичной была ситуация, когда с компьютером работал секретарь. В какой-то момент времени они поняли, что компьютер им может быть полезен, что они могут результативно использовать то небольшое время, которое можно выделить на работу за компьютером. Они вдруг поняли, что компьютер это не просто модная и дорогая игрушка, но инструмент получения актуальной информации для бизнеса. При этом им не нужно было тратить сколько-нибудь заметного времени, чтобы освоить технологию работы с компьютером (по сравнению с тем, как это было раньше).
Спектр социальных групп, подключающихся к сети Интернет и ищущих информацию в WWW(World Wide Web), все время расширяется за счет пользователей, не относящихся к категории специалистов в области информационных технологий. Это врачи, строители, историки, юристы, финансисты, спортсмены, путешественники, священнослужители, артисты, писатели, художники. Список можно продолжать бесконечно. Любой, кто ощутил полезность и незаменимость Сети для своей профессиональной деятельности или увлечений, присоединяется к огромной армии потребителей информации во «Всемирной Паутине».
Web-технология полностью перевернула наши представления о работе с информацией, да и с компьютером вообще. Оказалось, что традиционные параметры развития вычислительной техники производительность, пропускная способность, емкость запоминающих устройств не учитывали главного «узкого места» системы интерфейса с человеком. Устаревший механизм взаимодействия человека с информационной системой сдерживал внедрение новых технологий и уменьшал выгоду от их применения. И только когда интерфейс между человеком и компьютером был упрощен до естественности восприятия обычным человеком, последовал беспрецедентный взрыв интереса к возможностям вычислительной техники.
С развитием технологий гипертекстовой разметки в Интернете стало появляться всё больше сайтов, тематика которых была совершенно различной – от сайтов крупных компаний, повествующих об успехах компании и её провалах, до сайтов маленьких фирм, предлагающих посетить их офисы в пределах одного города.
Развитие Интернет-технологий послужило толчком к появлению новой ветки в Интернете – Интернет- форумов. Стали появляться сайты, и даже целые порталы, на которых люди со всех уголков планеты могут общаться, получать ответы на любые вопросы и, даже, заключать деловые сделки.
При появлении технологии Web компьютеры повернулись лицом к этим двум совершенно противоположным категориям потенциальных пользователей. Элиту объединяла одна черта – в силу высочайшей ответственности и практически стопроцентной занятости “большие люди” никогда не пользовались компьютером; типичной была ситуация, когда с компьютером работал секретарь. В какой-то момент времени они поняли, что компьютер им может быть полезен, что они могут результативно использовать то небольшое время, которое можно выделить на работу за компьютером. Они вдруг поняли, что компьютер это не просто модная и дорогая игрушка, но инструмент получения актуальной информации для бизнеса. При этом им не нужно было тратить сколько-нибудь заметного времени, чтобы освоить технологию работы с компьютером (по сравнению с тем, как это было раньше).
Спектр социальных групп, подключающихся к сети Интернет и ищущих информацию в WWW(World Wide Web), все время расширяется за счет пользователей, не относящихся к категории специалистов в области информационных технологий. Это врачи, строители, историки, юристы, финансисты, спортсмены, путешественники, священнослужители, артисты, писатели, художники. Список можно продолжать бесконечно. Любой, кто ощутил полезность и незаменимость Сети для своей профессиональной деятельности или увлечений, присоединяется к огромной армии потребителей информации во «Всемирной Паутине».
Web-технология полностью перевернула наши представления о работе с информацией, да и с компьютером вообще. Оказалось, что традиционные параметры развития вычислительной техники производительность, пропускная способность, емкость запоминающих устройств не учитывали главного «узкого места» системы интерфейса с человеком. Устаревший механизм взаимодействия человека с информационной системой сдерживал внедрение новых технологий и уменьшал выгоду от их применения. И только когда интерфейс между человеком и компьютером был упрощен до естественности восприятия обычным человеком, последовал беспрецедентный взрыв интереса к возможностям вычислительной техники.
С развитием технологий гипертекстовой разметки в Интернете стало появляться всё больше сайтов, тематика которых была совершенно различной – от сайтов крупных компаний, повествующих об успехах компании и её провалах, до сайтов маленьких фирм, предлагающих посетить их офисы в пределах одного города.
Развитие Интернет-технологий послужило толчком к появлению новой ветки в Интернете – Интернет- форумов. Стали появляться сайты, и даже целые порталы, на которых люди со всех уголков планеты могут общаться, получать ответы на любые вопросы и, даже, заключать деловые сделки.
Понятие о Web-GL
WebGL (Web-based Graphics Library) – это
библиотека для программного обеспечения, которая расширяет возможности языка
программирования JavaScript, позволяя ему создавать интерактивную 3D графику
внутри любого совместимого с ней веб-браузера. Код на WebGL выполняется с
помощью видеокарты.
WebGL – это контекст элемента Canvas
HTML5, который обеспечивает API 3D графику без использования плагинов.
Спецификация версии 1.0 была выпущена 3 марта 2011 года. Некоммерческая Khronos
Group управляет работой WebGL. WebGL построена на основе OpenGL ES 2.0 и
обеспечивает API для 3D графики.Она использует элемент HTML5 canvas, также ей
доступен интерфейс Document Object Model. Автоматическое управление памятью
предоставляется языком JavaScript.
Поддержка браузерами
Компьютерные
браузеры:
·
Mozilla Firefox
– WebGL был включен во все платформы, у которых есть нужная графическая карта с
обновленными драйверами, начиная с версии 4.0.
·
Google Chrome –
WebGL включен по умолчанию во все версии начиная с 9.
·
Safari – Safari поддерживает WebGL, но
поддержка отключена по умолчанию.
·
Opera – WebGL не
реализована в последней версии Opera 11.64. Однако, альфа версия Opera.NEXT 12,
и новее, поддерживает WebGL. Так же доступен в «ночных» сборках начиная с Opera
12.00
·
Internet
Explorer – Microsoft не заявляло об официальной поддержке WebGL. Плагины Chrome
Frame и IEWebGL предусматривают опции, необходимые для поддержки WebGL в
Internet Explorer.
·
Maemo 5 –
официально функционирует в стандартном браузере Maemo 5 с выходом Maemo 5 PR1.2
в мае 2011 года.
Мобильные браузеры:
·
BlackBerry PlayBook—
WebGL доступен посредством WebWorks и
браузера в PlayBook OS 2.0.
·
Sony Ericsson
Xperia — многие устройства на
базе Android имеют поддержку WebGL после обновления прошивки.
Рабочая группа
В
состав рабочей группы, разрабатывающий стандарт входят: Khronos Group,
разработчики браузеров Apple Safari, Google Chrome, Mozilla Firefox и Opera, а
также специалисты AMD и Nvidia.
История
WebGL возник из экспериментов над Canvas
3D, которые устраивал Владимир Вукичевич из Mozilla. Владимир Вукичевич впервые
продемонстрировал прототип Canvas 3D в 2006 году. В конце 2007 года и Mozilla,
и Opera создали свои собственные отдельные реализации.
В начале 2009 года Mozilla и Khronos организовали
рабочую группу WebGL. 10 декабря 2009 года консорциум опубликовал первую
черновую спецификацию WebGL. Председатель группы Арун Ранганатан, заявил, что
завершение работы над спецификацией ожидается в первом квартале 2010 года. Окончательная ревизия первой редакции
спецификаций была представлена 3 марта 2011 года в Сан-Франциско. Было показано
в мае 2011, что в WebGL имеются существенные слабые места в безопасности, такие
как отказ в обслуживании и разрешение скриптовых атак.
Безопасность
В мае
2011 года служба безопасности Context Information Security опубликовала отчет,
который детально разбирает несколько проблем с безопасностью в текущих
реализациях WebGL от Google Chrome и Mozilla Firefox, и вообще в самой
спецификации 10 WebGL как таковой. Согласно отчету, WebGL позволяет полным по
Тьюрингу программам, появившимся на компьютере из Интернета, добраться до
привилегированного режима графических драйверов и оборудования. Отчет также
снабжен ссылками на примеры действий, создающих проблемы с безопасностью; эти
действия способны вызывать отказ от обслуживания и хищение междоменных
изображений. Отчет завершается тем, что «браузеры, в которых WebGL встроен и
включен по умолчанию, подвергают пользователя риску, созданному благодаря
данным проблемам.»
Позже United States Computer Emergency
Readiness Team опубликовала предупреждение о том, что «WebGL содержит множество
существенных проблем с безопасностью. Влияние этих проблем включает в себя
произвольное выполнение кода, отказ от обслуживания и меж-доменные атаки.»
US-CERT также призывал «пользователей и администраторов просмотреть отчет
Context и отключать WebGL, чтобы постараться уменьшить риск».
Группа
Khronos, которая включает в себя Mozilla и Google Chrome, ответила на
беспокойства, предлагая возможные решения и будущие методы разработки. После
просмотра отчета Context Mozilla решила убрать поддержку меж-доменных
изображений в Firefox; в это время группа Khronos обновила спецификацию WebGL,
чтобы улучшить защиту от отказа от обслуживания и атак на открытые ресурсы. В
настоящее время предложенные решения все еще находятся на стадии разработки и
не распространены повсеместно производителями GPU.
Context была не довольна решением группы
Khronos сделать шаг, зафиксировав WebGL, и решила, что это решение не
эффективно по отношению к поставленным проблемам. В последующей статье Context
снабжает читателей еще большим количеством примеров уязвимости системы
безопасности в последних реализациях WebGL на различных платформах. Признаки
этих проблем стоят в ряду неисправностей начиная с разрушения системы и
заканчивая утечкой информации. Context продолжает задавать вопрос, была ли
WebGL специфицирована, разработана и реализована с учетом службы безопасности.
В июне
2011 года Microsoft заявил, что они не могут одобрить WebGL в его текущей форме
с точки зрения безопасности. Исследование, проведенное командой инженеров MSRC,
привело к заключению, что поддержка WebGL в продуктах Microsoft имела бы
трудности с исполнением требований Security Development Lifecycle – стандарты
безопасности для программного обеспечения, принятые внутри Microsoft. Microsoft
ссылается на чрезмерно позволенную незащищенность функциональности оборудования
и непроверенные возможности защиты от отказа от обслуживания, как на их ключевые
проблемы.
Вице-президент по техническим стратегиям
Mozilla Марк Шавер забраковал критику Microsoft. В посте своего блога он
написал, что Mozilla работала над проблемами с адресацией в спецификации WebGL
и реализации для Firefox. Он подчеркнул, что веб нуждался в 3D возможностях, и
заявил, что проблемы с безопасностью присущи новым технологиям. Он рекомендовал
работу Microsoft над Direct3D API, используемый в Silverlight 5, которую он
оценил как надежную, но добавил, что та же технология могла бы быть перенесена
со стороны Microsoft и на реализацию WebGL.
Практическое использование Web-GL
Картографический сервис Google Maps был
запущен в далеком 2005 году. Это был один из первых сервисов, который
продемонстрировал большие возможности современных веб-технологий.
В
марте 2012 года команда разработчиков этого сервиса выпустила новую тестовую
версию своих карт – MapsGL. По сути своей MapsGL это одно из первых масштабных
веб-приложений, основанных на технологии WebGL. MapsGL использует всю мощь
аппаратного ускорения для создания впечатляющего 3D прямо в нашем браузере
Google Chrome.
С
технической стороны вопроса, MapsGL вносит большие изменения в то, как карты
обрабатываются сервером и клиентом. Теперь вместо того, чтобы загружать
обработанную карту с сервера, браузер получает векторные данные карт и
обрабатывает их уже сам при помощи WebGL. Рендеринг карт на стороне браузера
позволяет уменьшить объем передаваемых данных и повысить качество 3D карт.
Несмотря на то, что технология WebGL
кроссплатформенна, производительность может сильно отличаться на разном
«железе» и разных операционных системах. Именно поэтому тестирование так важно.
Некоторые графические карты не поддерживают технологию WebGL, поэтому для этих
пользователей сохраняется возможность использовать старую версию карт. На
некоторых ускорителях производительность слишком мала, поэтому для них
используется гибридный режим работы MapsGL с частичной обработкой на стороне
сервера.
Чтобы присоединиться к тестированию
Google MapsGL, достаточно на странице сервиса включить его кнопкой «Хотите
чего-то нового?».
Библиотеки
Для разработки WebGL используется несколько библиотек. Библиотека WebGLU была первой, которая была
сделана общедоступной. Другие библиотеки, объединенные в WebGL, включают в себя GLGE, C3DL,Copperlicht, SpiderGL, gwt-g3d — G3D (обертка WebGL) для GWT (Google Web Toolkit), SceneJS, X3DOM, Processing.js, Three.js, Turbulenz, OSGJS, XB PointStream и CubicVR.js
ANGLE (Almost Native Graphics Layer Engine) — это текущий общедоступный
проект, выпущенный подлицензией BSD, которая позволяет
переводить содержимое WebGL в OpenGL ES 2.0, вызывать API DirectX 9, которые взаимодействуют
с платформами
Microsoft Windows без необходимости в дополнительных
драйверах OpenGL.
Основные преимущества Web-GL
- поддержка практически всех современных браузеров;
- отсутствие установки дополнительного ПО;
- быстродействие в работе обеспечивается
пользовательскими видеокартами и не зависит от перебоев в работе сервера;
- возможность наглядно представлять информацию
пользователю: рассмотреть объект с разных ракурсов, провести интерактивное
взаимодействие с ним и т.п.
На данный момент, WebGL технология
недостаточно распространена в российском сегменте Интернета. Многие компании не
хотят усложнять свои сайты дополнительными скриптами, если можно представлять
информацию и в обычном динамичном 2D, или же не рискуют закупать дорогое
оборудование 3D-сканеров и 3D-принтеров. В частности, использованием WebGL
технологии в разработке сайтов типа «Интернет-магазин» открывает перед
клиентами новые возможности. С помощью
данной технологии можно реализовать полноценный 3D-объект товара,
например, мобильного телефона, дать пользователю рассмотреть реально
существующий объект с разных ракурсов, выявить его недостатки и достоинства.
Приводя в пример тот же мобильный телефон, пользователь может разобрать его,
осмотреть внутренние детали.
Если
пользователь решил добавить товар в «Корзину», то он может послать запрос
продавцу представить в WebGL формате именно тот самый продукт, который будет
отправлен ему. Продавец проводит сканирование продукта и выставляет информацию
прямо на сайт в удобную форму взаимодействия с клиентом, чем будет, например,
пересылать этот обьект пользователю через электронную почту.
WebGL
технология может помочь при разработке пользовательского интерфейса. Если
реализовывать интерактивные 3D-модели прямо в браузере, то разработчики
Интернет-магазина могут сделать полноценное 3D-меню со всем функционалом,
добавить динамичности для сайтов. К примеру, магазин книг можно представить в
виде полноценной библиотеки со стоящими на виртуальных «полках» книгами, где
каждый сможет буквально «пощупать» интересующий его продукт.
WebGL технология несет в себе и много
недостатков, таких как сложная поддержка безопасности и реализации. Но с каждым
годом ее спецификация усовершенствуется, становится более доступной для
пользователя. Именно поэтому за использованием WebGL технологий стоит будущее в
развитии красивых, адаптивных и динамических сайтов.
Литература
3.
Коичи Мацуда, Роджер Ли WebGL. Программирование трехмерной графики. 2015.
4.
Зайцева И.В., Астахова Н.И. Оптимизация управленческой деятельности организации
с использованием современных информационных систем. 2013.
5. Зайцева И.В. Методы исследования состояния
информационной системы. 2011.
Комментариев нет:
Отправить комментарий