@tripo3d/engine / Pipeline
Interface: Pipeline
Defined in: pipeline/pipeline.ts:16
Pipeline 对业务公开的 View 与 Pass Definition 控制面。
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
outputMode | readonly | OutputMode | 当前最终颜色输出模式。 | pipeline/pipeline.ts:45 |
views | readonly | readonly RenderView[] | 全部存活 RenderView 按 order/sequence 排序的只读投影,包含 disabled View。 | pipeline/pipeline.ts:80 |
Methods
addPass()
addPass<T>(definition): T;Defined in: pipeline/pipeline.ts:24
同步取得一个Pipeline Pass owner。
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
definition | PassDefinition<T> | 作为owner唯一key且不会被Pipeline释放的Pass Definition。 |
Returns
T
首次setup返回的原始业务identity;重复添加返回同一结果。
Throws
setup/initial resize失败,Pipeline终止或active frame中首次添加时同步抛出。
addView()
addView(options): RenderView;Defined in: pipeline/pipeline.ts:33
注册一个绑定关系不可变的RenderView。
Parameters
| Parameter | Type | Description |
|---|---|---|
options | AddRenderViewOptions | borrowed Camera、same-Engine World和初始属性。 |
Returns
由Pipeline持有直至remove/World/Engine终态的RenderView identity。
Throws
options无效、World不合格、Pipeline终止或active frame中调用时同步抛出。
getPass()
getPass<T>(definition): T | undefined;Defined in: pipeline/pipeline.ts:35
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
definition | PassDefinition<T> | Pass Definition。 |
Returns
T | undefined
已安装 setup 结果;不存在时返回 undefined。
hasPass()
hasPass(definition): boolean;Defined in: pipeline/pipeline.ts:38
Parameters
| Parameter | Type | Description |
|---|---|---|
definition | PassDefinition<unknown> | Pass Definition。 |
Returns
boolean
当前 Pipeline 是否已安装该 identity。
isPassEnabled()
isPassEnabled(definition): boolean;Defined in: pipeline/pipeline.ts:43
Parameters
| Parameter | Type | Description |
|---|---|---|
definition | PassDefinition<unknown> | Pass Definition。 |
Returns
boolean
owner当前enabled;不存在时返回false,不代表当前output mode会调度其contributions。
removePass()
removePass(definition): boolean;Defined in: pipeline/pipeline.ts:53
删除Pass owner但不dispose业务借入的原生Three Pass。
Parameters
| Parameter | Type | Description |
|---|---|---|
definition | PassDefinition<unknown> | Pass Definition identity。 |
Returns
boolean
owner存在并完成terminal publication时为true;不存在或Engine终态时为false。
Throws
active frame或业务terminal callback失败时同步抛出。
removeView()
removeView(view): boolean;Defined in: pipeline/pipeline.ts:61
永久移除一个RenderView。
Parameters
| Parameter | Type | Description |
|---|---|---|
view | RenderView | 待移除的RenderView identity。 |
Returns
boolean
same-Pipeline live View被移除时为true,否则为false。
Throws
active frame中删除live View时同步抛出。
setOutputMode()
setOutputMode(mode): boolean;Defined in: pipeline/pipeline.ts:71
同步切换最终颜色输出模式。
auto跳过after-output后处理contributions并由内部OutputPass上屏;manual执行它们并由最终present contribution决定上屏。 manual存在有效颜色工作但缺少最终present contribution时按连续异常周期警告一次,但不会fallback。
Parameters
| Parameter | Type | Description |
|---|---|---|
mode | OutputMode | 要提交的输出模式。 |
Returns
boolean
模式是否实际发生变化。
setPassEnabled()
setPassEnabled(definition, enabled): boolean;Defined in: pipeline/pipeline.ts:78
Parameters
| Parameter | Type | Description |
|---|---|---|
definition | PassDefinition<unknown> | Pass Definition。 |
enabled | boolean | 要提交的 enabled。 |
Returns
boolean
找到并处理该 owner 时返回 true,否则返回 false。
Throws
enabled类型无效或Pipeline正在planning/render时同步抛出。