为什么选用threejs?
- threejs上手学习成本低,易于学习和使用
- 开源,跨平台兼容性,中文资料相对较多,方便查找文档
- 活跃的社区和支持,出现问题方便解决;示例较多,方便学习查看
- 丰富的功能集,插件丰富
官方文档下载
- three.js官方代码案例
GitHub - mrdoob/three.js: JavaScript 3D Library.
在线加速镜像:
- 官方详细文档
基础 - three.js manual (threejs.org) - Three.js 中文网(大量代码图片,方便理解学习)
Three.js中文网 - 跃焱邵隼博客(案例代码相结合,方便理解threejs中的各概念)
跃焱邵隼 (wellyyss.cn)
1. 一些重要的概念
- scene 场景:场景是Three.js中用于容纳所有 “3D物体”、“光源” 和 “摄像机” 的容器。创建场景是构建03D应用的第一步。
- objects 物体:物体可以有很多种,比如原始的几何体,导入的模型 ,粒子,光源等。
- camera 相机:
-
- 理论上的视角,虽然相机也被加入了场景中,但是相机是看不见的。
- 摄像机决定了从哪个角度和距离观察场景。
- 正投影(2D场景,正视图,侧视图,俯视图);透视(3D场景投影)。
- 透视相机(Three.js最常使用的是透视相机,它是模拟人的观察视角:物体近大远小。)
- renderer 渲染器:从相机的角度渲染场景,结果将被绘制到 canvas 中。(将3D场景渲染成2D图像,并呈现在网页上。)