有一个很棒的3d应用程序框架叫做three.js
。据我所知,它有几个渲染子系统:基于Canvas
和基于WebGL
。
那么,移动设备支持呢?(Android, iOS)
无论three.js如何,它都是这样分解的:
Canvas
元素可以与2D
上下文或WebGL
上下文一起使用。threejs既可以使用WebGL,也可以使用2D上下文。
大多数手机都支持2D
上下文。
很少支持WebGL
上下文。移动版Firefox支持WebGL
,并且至少在一些android版本中可用,黑莓PlayBook也可以使用它。
:
http://caniuse.com/canvas(又名2D)
http://caniuse.com/webgl更新12-12-2014 http://caniuse.com/壮举= webgl
- IOS8将启用WebGL。Android浏览器已经启用了WebGl。
- 然而,如果你想创建一个应用程序,你可以使用Crosswalk在最新的Chromium上运行应用程序(它已经启用了WebGL)。
- 或者,CocoonJS有"Canvas+",这是Canvas元素的原生android/iOS实现,包括虚拟javascript环境。(换句话说,一个自定义浏览器,只能渲染画布元素)
你可以在手机上使用Three.js,至少在iOS上,并且只使用Three.js的CanvasRenderer。WebGLRenderer不能在iOS上工作。
尽量不要使用纹理,这会减慢很多帧率。
使用简单的彩色网格,它工作得很好,而且速度很快。
我对动画几何进行了一些测试,但只有原语。我可以在iPodTouch 1G和iPodTouch 4G上进行测试。两者都运行良好,帧率很好。
我无法在Android上尝试,但我认为它也可以工作。