Поддержка Canvas и WebGL (three.js) на мобильных устройствах?
Там есть замечательная платформа 3D-приложений под названием three.js
. Насколько я понял, у него есть несколько подсистем подсистемы: на основе Canvas
и на основе WebGL
.
Итак, как насчет поддержки мобильных устройств? (Android, iOS)
Ответы
Ответ 1
Независимо от трёх .js он разбивается следующим образом:
Элемент Canvas
может использоваться с контекстом 2D
или контекстом WebGL
. threejs может использовать либо WebGL, либо 2D-контекст.
Большинство мобильных телефонов поддерживают контекст 2D
.
Мало поддержки WebGL
контекста. Firefox для мобильных устройств поддерживает WebGL
и доступен, по крайней мере, для некоторых сборщиков Android, и BlackBerry PlayBook также может использовать его.
См:
http://caniuse.com/canvas (aka 2D)
http://caniuse.com/webgl
Ответ 2
Обновление 12-12-2014
http://caniuse.com/#feat=webgl
- У IOS8 будет включен WebGL.
- В браузерах Android включен WebGl.
- Однако, если вы хотите создать приложение, вы можете использовать Crosswalk, чтобы запустить приложение на последнем Chromium (у которого есть WebGL включен).
- В качестве альтернативы CocoonJS имеет "Canvas +", который является встроенной версией Canvas для Android и iOS, включая виртуальную среду javascript, (Другими словами, пользовательский браузер, который может отображать только элементы Canvas)
Ответ 3
Вы можете использовать Three.js на мобильном телефоне, по крайней мере, iOS и только с помощью CanvasRenderer из three.js.
WebGLRenderer не будет работать на iOS.
Старайтесь не использовать текстуры, это замедляет частоту кадров.
С простыми цветными сетками он работает очень хорошо и быстро.
У меня было несколько тестов с анимированной геометрией, только примитивы.
Я могу проверить его на iPodTouch 1G и iPodTouch 4G. Оба работали хорошо, с хорошей частотой кадров.
Я не мог попробовать его на Android, но я думаю, что он тоже работает.