二、实现步骤
1. 创建渲染场景scene
scene实际上相当于一个三维空间,用于承载和显示我们所定义的一切,包括相机、物体、灯光等。在实际开发时为了方便观察可添加一些辅助工具,比如 格、坐标轴等。
2. 添加照相机camera
视觉效果是近大远小。
配置参数 PerspectiveCamera(fov, aspect, near, far)。
fov:相机的可视角度。
aspect:相机可视范围的长宽比。
near:相对于深度剪切面的远的距离。
far:相对于深度剪切面的远的距离。
3. 添加场景渲染需要的灯光
4. 创建、导出并加载模型文件loader
创建模型,可以使用three.js editor进行创建或者用three.js的基础模型生成类进行生成,相对复杂的或者比较特殊的模型需要使用建模工具进行创建(c4d、3dmax等)。
使用three.js editor进行创建,可添加基本几何体,调整几何体的各种参数(位置、颜色、材质等)。
6. 通过tween动画库实现粒子坐标从position到position1点转换
利用 TWEEN 的缓动算法计算出各个粒子每一次变化的坐标位置,从初始位置到结束位置时间设置为2s(可自定义),每次执行计算之后都需要将attributes的position属性设置为true,用来提醒场景需要更新,在下次渲染时,render会使用最新计算的值进行渲染。
7. 添加渲染场景render
创建容器。
定义render渲染器,设置各个参数。
将渲染器添加到容器里。
自定义的渲染函数 render,在渲染函数里面我们利用 TWEEN.update 去更新模型的状态。
调用自定义的循环动画执行函数 animate,利用requestAnimationFrame方法进行逐帧渲染。
let container = document.createElement('div'); document.body.appendChi
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!