three.js系列基础

之所以用这个题目是觉得threejs无论学了多久永远都是学了忘,忘了再学,在项目中没有实践永远都是隔岸观火,没办法深入进去,这次再挣扎一下,做个学习笔记吧,希望能加深些印象。 本系列笔记是跟随Bruno Simons大佬边学习边做的笔记

入门开始,先来些枯燥的原理做开胃菜吧😈

说起threejs,是web领域最负盛名的3d引擎框架,和其他的如babylon.js不同,他们主打的是做游戏,因此有非常丰富的游戏常用接口,而threejs则更加底层,实现的是帮助我们打通和webGL连接的通道,毕竟webgl实在太难搞了,写一个小三角行都要好几十行代码。 threejs实际上就是封装好了接口,让我们可以直接调用接口实现画图。 提到webgl就不得不说到最新的webgpu概念了,据业界大佬传闻webgpu标准很快就会确定了,那时我们web3d很可能也有大展拳脚的机会了,哈哈哈哈哈…..

话不多说,回归正题。

在threejs中,创建一个3d的场景需要以下几大要素:

  1. Scene, 即场景,物体相机等需要放置在场景中
  2. Objects, 即物体, 物体通常包含geometry(几何体), material(材质)两部分,共同组成mesh(模型)
  3. Camera, 即相机
  4. Renderer, 渲染器,将整个场景渲染到canvas画布上

除此之外还有一些非必要的元素,control — 控制器, light — 光源 等等可以给场景添加额外的功能


Posted

in

by

Tags: