Better

Ethan的博客,欢迎访问交流

Three.js Layers 工作机制

在 Raycaster 实现中,不会过滤 visible 为 false 的物体的,也就是说不可见物体依旧可以被拾取到,那如果想要不可见对象不参与拾取,该怎么实现呢,可以利用 Object3D 的 layers 属性实现。从源码中可以了解一下基础的位运算操作。


three.js 基础(三)

three.js 对底层 WebGL 的高级封装的同时,保留底层开发的特性,仍然可以使用点、面、法向量、UV 构造几何体,以及编写着色脚本来创造自己想要的特殊材质。


关于镜头旋转那些事儿?

三维世界中镜头控制器与旋转动画那点事!


three.js 性能优化清单

最近发现我的场景容易出现卡顿的现象,这让很困惑,虽然数据量挺大,但也不至于那么大,而且我发现的奇怪现象是,GPU 的使用率非常低,倒是 CPU 使用了上升的比较快。


BufferGeometry 渲染热力图小踩坑

最近一个需求中,使用 BufferGeometry 进行热力图的绘制,踩了点小坑,简单记录一下啊。


绘制一个任意旋转角度的矩形

通过鼠标响应,完成一个任意选择角度矩形的绘制。


关于 three.js 的一些小知识

一些使用 three.js 过程中总结的小知识,以及一些使用建议,建议绝大部分来自看到的一篇文章,因此没有实践过,不保证有效哈。


fitExtents in three.js

在 three.js 中实现聚焦某个物体,或整体内容自适应屏幕,在自身项目测试问题不大,但特殊情况估计还需要调整。


three.js 基础(二)

主要了解下 webgl 简单渲染流程 ,three.js 常用矩阵的推导,核心对象 BufferGeometry 进一步了解,以及纹理贴图、动画模块、加载器、后置处理器等了解。


Three.js 之 DragControls

近期准备阅读一些 three.js 中为我们提供的实用的高阶封装,一方面可以了解 three.js 能力边界,还可以了解原理学习,巩固基础,还可能了解一些设计。这次了解个最简单的 DragControls 类。