- Game Development with Three.js
- Isaac Sukin
- 313字
- 2021-07-23 15:45:43
The wonderful world of Three.js
Three.js is a JavaScript library that simplifies displaying 3D graphics in web browsers. Artists, major brands, and many others are increasingly using Three.js to power immersive online experiences that can reach millions of people across many platforms. There are many inspiring demos of the technology at http://threejs.org/.
Three.js is usually used with a new technology called WebGL, a JavaScript API for rendering graphics without plugins. The API is based on OpenGL, a desktop graphics API (GL stands for graphics library). Because it uses the client's graphics processing unit to accelerate rendering, WebGL is fast! However, many mobile browsers as well as Internet Explorer 10 and below do not support WebGL. Luckily, Three.js supports rendering with the HTML5 Canvas API as well as other technologies such as Scalable Vector Graphics instead.
Note
You can find up-to-date information on browser support at http://caniuse.com/webgl.
Three.js is originally written and maintained by Ricardo Cabello, who is also known as Mr.Doob. The library is open source (MIT-licensed) and is available from its GitHub page, https://github.com/mrdoob/three.js. The documentation of Three.js is available online at http://threejs.org/docs/. When the documentation is insufficient, the best place to look is the examples
folder of the project, which contains a large collection of examples demonstrating different features. You can browse the examples online at http://threejs.org/examples/. The source code in the src
folder is also worth browsing if you need to know how a certain class works or what methods and properties it exposes. Developers respond to questions about Three.js on the Q&A site StackOverflow, so if you are confused about something, you can browse questions with the three.js
tag or ask your own.
Tip
This book was written with Version r61 of the Three.js project. Certain parts of the API are still under development, but anything that is likely to change will be pointed out when it is introduced.
- Extending Jenkins
- LaTeX Cookbook
- SpringMVC+MyBatis快速開發(fā)與項(xiàng)目實(shí)戰(zhàn)
- PostgreSQL Cookbook
- PowerCLI Cookbook
- 數(shù)據(jù)庫系統(tǒng)原理及MySQL應(yīng)用教程
- C#程序設(shè)計(jì)教程
- Django Design Patterns and Best Practices
- 基于Swift語言的iOS App 商業(yè)實(shí)戰(zhàn)教程
- Elasticsearch for Hadoop
- Learning Raspbian
- 硅谷Python工程師面試指南:數(shù)據(jù)結(jié)構(gòu)、算法與系統(tǒng)設(shè)計(jì)
- Keras深度學(xué)習(xí)實(shí)戰(zhàn)
- 軟件測試實(shí)用教程
- ASP.NET求職寶典