Аппаратное ускорение
Для смены мажорной версии Opera без серьезных внешних изменений может быть только одна причина – коренная переработка внутри ядра браузера. Как мы отметили выше, таковая действительно имеет место. Это рендеринг страниц и интерфейса при помощи графического процессора, что по идее должно ускорить работу программы.
До этого Opera не имела дела с GPU-ускорением вообще и 3D-графикой в частности. Так что, полагаем, для программистов компании это был первый опыт. Причем решено было «ускорить» таким образом все, что только возможно. Подобные модификации требуют больших временных и человеческих затрат, поскольку затрагивают базовые основы приложения. К тому же новый способ рендеринга прежде всего должен быть эффективнее прежнего, иначе чем еще можно оправдать его внедрение?
Но, к сожалению, не получилось. Судя по блогу команды-разработчика настольной версии браузера добиться даже той же производительности, что обеспечивает классический способ отрисовки страниц и интерфейса, не удалось. Конечно, на глаз это вряд ли будет заметно, особенно при загрузке несложных сайтов, но результат несколько удручает.
Команда Opera с таким оптимизмом взялась за GPU-ускорение, но после выяснилось, что там не все так просто, а потому уже в бета-версии оно было по умолчанию отключено. Тем не менее, никто не запрещает его включить самостоятельно. Делается это на специальной внутренней странице конфигурирования программы. Необходимо установить значение параметра EnableHardwareAcceleration в 1.
Однако не только ради спорных красот интерфейса и теоретического ускорения работы было внедрено GPU-ускорение. Главное назначение GPU – это рендеринг трехмерной графики, которая стала официально доступна для браузеров более года назад с принятием стандарта WebGL 1.0. По умолчанию его поддержка в Opera 12 также отключена, но это легко изменить, установив параметр EnableWebGL в значение 1.
Включив WebGL и открыв несколько примеров трехмерных сцен, мы убедились, что ее реализация еще не идеальна. Хотя бы потому, что в Chrome они же выглядят лучше:
Не исключено, что дело здесь в оптимизации сцен под браузер Chrome, а не в плохой реализации спецификации WebGL в Opera 12. Тем не менее, проблема от этого не исчезает. По факту это проблема WebGL – этот API еще плохо внедрен в браузерах и по новой «Опере» это видно.
Кстати, Opera Mobile 12 для Android и Symbian вышла на несколько месяцев ранее. Аппаратное ускорение для смартфонов она не добавила, однако WebGL поддерживается также.