Appearance
Interface: ViewerOptions
Defined in: packages/viewer-core/src/public/types.ts:475
Viewer.create() 的构造选项;全部可选。
Properties
antialias?
optionalantialias?:boolean
Defined in: packages/viewer-core/src/public/types.ts:479
硬件 MSAA(传给 WebGLRenderer,构造后不可变,默认 true)。SMAA 后处理抗锯齿见 quality.antialias。
background?
optionalbackground?:Color|"transparent"
Defined in: packages/viewer-core/src/public/types.ts:477
初始背景:纯色或 "transparent";不传则用引擎默认浅灰垂直渐变。
batchedFaces?
optionalbatchedFaces?:boolean
Defined in: packages/viewer-core/src/public/types.ts:523
面几何走「按材质×空间区域分桶的 BatchedMesh」而非 per-mesh InstancedMesh (BatchedMesh 面几何基座)。face draw call 从 O(可见件数) 塌到 O(桶数)。 Viewer.create 缺省为开(未传 → true),显式传 false 才退回 per-mesh InstancedMesh 路径,退回时行为与启用批处理前字节级一致。
外观(面色 / 节点色 / highlight / 金属粗糙)、拾取、剖切、Sobel 描边均已对齐 flag-off——经 per-instance DataTexture + 顶点属性重灌 + clip fork USE_BATCHING:
- 面色(FMO per-face)、逐面金属/粗糙 → 顶点属性重灌 (setMeshFaceGroupVertexColors / aFaceMetalness·aFaceRoughness + FaceBatchStore.syncMeshGeometry 的 setGeometryAt 重灌带色几何);
- 节点色 / 用户色 → per-instance,经 BatchedMesh 原生 setColorAt;
- highlight(选中/hover/flash)、逐实例金属/粗糙 → 每桶 DataTexture(batchId 索引)+ 顶点 shader
USE_BATCHING分支 texelFetch; - 拾取:InstancedMesh 骨架以真实 cpuGeom 作 invisible 拾取代理,拾取链零改复用;
- 剖切:clip fork 顶点世界坐标补
USE_BATCHINGbatchingMatrix 分支,capping 走骨架; - Sobel 描边:BatchedMesh 纳入 MODEL_GEOMETRY_LAYER,深度预渲染取 batch 面深度。
未做:透明度操作(v2);eviction / 内存释放(cpuGeom 不释放,拾取代理与 batch 双份内存);材质编辑跨桶迁移(v2)。
debug?
optionaldebug?:boolean
Defined in: packages/viewer-core/src/public/types.ts:495
调试开关;当前版本未接线,预留。
environment?
optionalenvironment?:string
Defined in: packages/viewer-core/src/public/types.ts:501
可选 HDRI 环境贴图 URL(.hdr equirect),用于 IBL;不传则用内置程序化环境。
initialCamera?
optionalinitialCamera?:object
Defined in: packages/viewer-core/src/public/types.ts:485
初始相机位姿(位置 / 目标点);不传用引擎默认位姿。
position?
optionalposition?:Vec3
target?
optionaltarget?:Vec3
initialProjection?
optionalinitialProjection?:CameraProjection
Defined in: packages/viewer-core/src/public/types.ts:487
初始相机投影方式(透视 / 正交);不传默认透视。会话内状态、不持久化,运行时经 viewer.camera.setProjection 切换。
lod?
optionallod?:LodOptions
Defined in: packages/viewer-core/src/public/types.ts:499
LOD 与小件代理初始化策略,默认 "auto"。
navCube?
optionalnavCube?:object
Defined in: packages/viewer-core/src/public/types.ts:489
导航立方体初始配置:enabled 默认 true,anchor 默认 "top-right",size 为 CSS 像素、默认 185。
anchor?
optionalanchor?:NavCubeAnchor
enabled?
optionalenabled?:boolean
size?
optionalsize?:number
pixelRatio?
optionalpixelRatio?:number
Defined in: packages/viewer-core/src/public/types.ts:481
渲染像素比;默认取 window.devicePixelRatio(非浏览器环境为 1)。
quality?
optionalquality?:QualityOptions
Defined in: packages/viewer-core/src/public/types.ts:497
渲染质量选项,逐项默认值见 QualityOptions。
workerPoolSize?
optionalworkerPoolSize?:number
Defined in: packages/viewer-core/src/public/types.ts:483
几何解码 worker 池大小;默认按 CPU 核数减一,钳制在 1–12。