threejs学习系列之二:threejs 基本概念

129 阅读1分钟

一、场景 Scene

场景是threejs 3D世界的舞台

const scene = new THREE.Scene();  // 创建场景

二、 相机 Camera

常用相机分为:透视投影相机PerspectiveCamera和正投影相机 OrthographicCamera。透视投影相机模拟人眼看世界,近大远小;正投影相机没有近大远小特点,一般用于宏观观看,比如俯视看地图的情况

三、渲染器 Renderer

// 创建渲染器
const renderer = new THREE.WebGLRenderer({
     antialias:true  //解决渲染锯齿问题
}); 

设置背景颜色: renderer.setClearColor(0x666666,1); 设置透明度:renderer.setClearAlpha(0.5);

设置设备像素比:renderer.setPixelRatio(window.devicePixelRatio);// 免渲染模糊

四、几何体 Geometry

threejs提供常用几何体:长方体:BoxGeometry、球体:SphereGeometry、圆柱体:CylinderGeometry、圆锥:ConeGeometry、矩形平面:PlaneGeometry、圆平面:CircleGeometry

五、材质 Material

1.点材质PointsMaterial

2.线材质 LineBasicMaterial, 虚线材质:LineDashedMaterial

2.精灵材质SpriteMaterial

4.网格材质:网格基础材质:MeshBasicMaterial,网格漫反射材质:MeshLambertMaterial,网格高光材质:MeshPhongMaterial,物理材质:MeshStandardMaterialMeshPhysicalMaterial

其中,网格基础材质不受光照影响

六、模型

1.点模型Points

2.线模型:首尾不闭合连续线条:Line、 闭合线条:LineLoop、非连续线条:LineSegments

3.网格模型Mesh

七、光

环境光; AmbientLight,点光源: PointLight,聚光灯光源:SpotLight,平行光:DirectionalLight