Three.js 介绍

 

相关概念:

  • 场景(scene):场景里面包含所有模型和几何体。
  • 相机(camera):相机决定了你看到场景的哪一部分。
  • 渲染器(renderer):通过渲染器,把相机看到的那一部分场景展示在屏幕上。
  • 几何体(Mesh):几何体由几何位置和几何材质组成,几何位置决定它的形状,几何材质决定它的外表样式。
    • 几何位置
      • 几何位置由多个面组成,例如一个正方体由六个面组成,每一个面都由两个三角形组成,每一个三角形都有三个点(Point)

      • 在使用几何位置生成面的时候要注意:几何位置生成的顺序对显示有影响,如果是顺时针生成的面,则是几何体的靠前的一面,如果是逆时针,则是几何体的靠后的一面

    • 几何材质
      • 一个几何体中可以添加多种材质,通过 SceneUtils.createMultiMaterialObject() 创建一个包含多个材质的几何体,创建后几何体是一个 Three.Group 组
  • 烟雾(Fog):烟雾控制着某一个区域的几何体、模型等的清晰程度,通过设置烟雾区间来实现,在区间之内的几何体会比较模糊。
  • 纹理(Texture):纹理可以控制场景的背景,可以是纯色,也可以是图片。
  • 组(Group):Group 由多个几何体或其他 Object3D 对象组成。
  • 位置(Position):在三维中有三条轴线,分别是 x,y,z,使用 position 可以定义在这三条轴线上的位置
  • 旋转(rotation):通过三条轴线 x,y,z,使用 rotation 可以定义在这三条轴线上的旋转角度

基础对象

Object3D: 通用的对象类,集合体和模型等都是 Object3D 的实例化对象,Object3D 对象上存在一些公共方法给其他对象继承。

MESH:通过 three.MESH 创建一个 mesh

API 介绍

重置所有几何体的材质,根据被灯光照射到的效果进行显示:new THREE.MeshNormalMaterial()