Three.js
![]() |
![]() Three.js作品样例 | |
原作者 | Ricardo Cabello (Mr.doob) |
---|---|
開發者 | Three.js Authors[1] |
首次发布 | 2010年4月24日[2] |
当前版本 | r83(2016年12月15日 | )
源代码库 | |
编程语言 | JavaScript |
类型 | JavaScript函数库 |
许可协议 | MIT[1] |
网站 | threejs |
Three.js是一个跨浏览器的脚本,使用JavaScript函数库或API来在网页浏览器中创建和展示动画的三维计算机图形。Three.js使用WebGL。源代码托管在GitHub。
概述
Three.js允许使用JavaScript创建网页中的GPU加速的3D动画元素,而不是使用特定的浏览器插件。[3][4]这归功于WebGL的出现。[5]
高级的JavaScript函数库例如Three.js或GLGE、SceneJS、PhiloGL或一定数量的其他函数库使作者在浏览器中显示复杂的三维计算机动画而不需要使用传统的独立应用程序或插件成为可能。[6]
历史
Three.js由Ricardo Cabello在2010四月于GitHub首次发布。[2]它的起源可以追溯到他在本世纪初演示场景的参与。代码最初是在ActionScript,稍后2009年移植到JavaScript。在Cabello看来,转移到JavaScript有两个优点:每次运行前没有编译代码和平台独立性。随着WebGL的到来,Paul Brunt增加渲染功能,这使Three.js的设计与绘制的代码作为一个模块,而不是核心本身。[7]Cabello的贡献包括API的设计、CanvasRenderer、 SVGRenderer并负责合并各种贡献到该项目。
该项目的二号贡献者Branislav Ulicny在2010年张贴在自己的网站一些WebGL演示后开始参与Three.js的开发工作。他希望Three.js中的WebGL渲染能力超过CanvasRenderer或SVGRenderer。[7]他的主要贡献通常涉及素材、着色器和后处理。
稍后在 WebGL 1.0 在2011年引入火狐4后,Joshua Koo开始参与工作。他在2011年9月创建了他的第一个面向3D文本的Three.js样本。[7] 目前该项目总共有650次贡献。[7]
特性
Three.js包括一下特性:[8]
参见
参考文献
- ^ 1.0 1.1 Three.js/license. github.com/mrdoob. [20 May 2012].
- ^ 2.0 2.1 First commit. github.com/mrdoob. [20 May 2012].
- ^ O3D
- ^ Unity (game engine)
- ^ Khronos Releases Final WebGL 1.0 Specification. Khronos Group. March 3, 2011 [2 June 2012].
- ^ Crossley, Rob. Study: Average dev costs as high as $28m. Intent Media Ltd. 11 January 2010 [2 June 2012].
- ^ 7.0 7.1 7.2 7.3 Three.js White Paper. Github.com. 2012-05-21 [2013-05-09].
- ^ mrdoob. Features mrdoob/three.js Wiki GitHub. Github.com. 2012-11-26 [2013-05-09].
参考书目
<ǃ--A number of computer science textbooks refer to Three.js as a tool for simplifying the development process for WebGL applications as well as an easy method for becoming familiar with the concepts of WebGL. These textbooks in order of appearance include:-->
- Dirksen, Jos. Learning Three.js: The JavaScript 3D Library for WebGL. UK: Packt Publishing. 2013. ISBN 9781782166283.
- Parisi, Tony. Webgl Up and Running. Sebastopol: Oreilly & Associates Inc. 2012. ISBN 9781449323578.
- Seidelin, Jacob. HTML5 games : creating fun with HTML5, CSS3, and WebGL. Chichester, West Sussex, U.K: John Wiley & Sons. 2012: 412–414. ISBN 1119975085. - "Three.js can make game development easier by taking care of low-level details"
- Williams, James. Learning HTML5 game programming : a hands-on guide to building online games using Canvas, SVG, and WebGL. Upper Saddle River, NJ: Addison-Wesley. 2012: 117–120, 123–131, 136, 140–142. ISBN 0321767365.
- Raasch, Jon. Smashing WebKit. Chichester: Wiley. 2011: 181, 182, 216. ISBN 1119999138.
- Williams, James. Three.js By Example. Vancouver, Canada: Leanpub. 2013.
外部链接
- 官方网站
- Three.js source in GitHub
- AlteredQualia
- Stemkoski Three.js Examples
- 1-2-three: graphic simulation by example
- Learning Three.js
- kepo-ing Zz85
- Learning WebGL
- WebGL Review Site