Skip to content

Util 工具类 ​

说明

一些非常适用的公共函数

安装 ​

sh
npm install @poggi/three-core
pnpm add @poggi/three-core
yarn add @poggi/three-core

buildObjectBox(object: Object3D) ​

快速构建模型矩形包围盒,它将返回中心点、盒子尺寸以及包围盒对象

buildSimpleStrategy(params: IBaseStrategyParamas) ​

用于构建模型的基本分级策略,当场景中模型过多,导致性能受到影响时,可以采用该方案,为距离较远的模型采用替代方案进行临时替换,以提高渲染性能

你可以传入自己的模型进行临时替换,若不传入,则方法会根据模型的尺寸生成一个等尺寸的立方体进行替换

loading

buildLevelStrategy(levelStrategys: ILevelStrategy[]) ​

构建一组模型的分级策略,与buildSimpleStrategy不同的是,该方法的自由度更高,可更自由的构建分级策略

通过该策略方式,可解决摩尔纹问题

loading

setMaskColor(model: Object3D, params: IMaskParams) ​

保证高性能的情况下,在保留原本材质外观的情况下,在模型上覆盖一层遮罩,用于表达一些模型的状态 使用setMaskColor添加蒙版,使用recoverMaskColor移除蒙版

loading

Interfaces ​

IBaseStrategyParamas

属性名说明类型是否必选默认值
target目标模型Object3D是-
targetDistance目标模型显示距离number是-
substitution替代模型Object3D | Material否根据目标模型自动计算出对应尺寸的底面立方体
substitutionDistance替代模型显示距离number是-

ILevelStrategy

属性名说明类型是否必选默认值
object对象(如果不传,那么将根据模型的大小自动计算一个立方体)Object3D是-
distance距离摄像机的距离number是-

IMaskParams

属性名说明类型是否必选默认值
color颜色Color是-
opacity透明度number否-
clone是否克隆boolean否-