Skip to content

@tmrw-realityos/charm


@tmrw-realityos/charm / PipelineInfo

Class: PipelineInfo

Defined in: packages/charm/src/graphics/pipelineInfo.ts:326

This class helps build and hash pipelines by converting some complex object into a single 32bits number. It only covers the most common cases like blending, depth, culling, multisample and topology. Cases not covered: geometry stride, separate blending, For most complex cases you need to build the pipelinedescriptor manually.

Usage

Just create an instance and assign the flags you want. There are two ways to do so, one using the setters:

typescript
const desc = new PipelineInfo();
desc.topology = Topology.triangleList;
desc.cullMode = CullMode.front;

Or another one using const flags (faster):

typescript
const desc = new PipelineInfo();
desc.hash = TRIANGLELIST | CULLMODE_FRONT | DEPTH_LESS | DEPTH_WRITE

Keep in mind that the default pipeline is: DEPTH_ALWAYS | CULLMODE_NONE | NO_BLEND

Constructors

new PipelineInfo()

new PipelineInfo(v): PipelineInfo

Defined in: packages/charm/src/graphics/pipelineInfo.ts:331

Parameters

v

number = DEFAULT_PIPELINE

Returns

PipelineInfo

Properties

hash

hash: number = DEFAULT_PIPELINE

Defined in: packages/charm/src/graphics/pipelineInfo.ts:327


default

static default: PipelineInfo

Defined in: packages/charm/src/graphics/pipelineInfo.ts:329

Accessors

blendOperation

Get Signature

get blendOperation(): BlendOperation

Defined in: packages/charm/src/graphics/pipelineInfo.ts:409

Returns

BlendOperation

Set Signature

set blendOperation(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:404

Parameters
value

BlendOperation

Returns

void


colorFormat

Get Signature

get colorFormat(): ColorFormat

Defined in: packages/charm/src/graphics/pipelineInfo.ts:441

Returns

ColorFormat

Set Signature

set colorFormat(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:436

Parameters
value

ColorFormat

Returns

void


cullMode

Get Signature

get cullMode(): CullMode

Defined in: packages/charm/src/graphics/pipelineInfo.ts:361

Returns

CullMode

Set Signature

set cullMode(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:357

Parameters
value

CullMode

Returns

void


depthCompare

Get Signature

get depthCompare(): DepthCompare

Defined in: packages/charm/src/graphics/pipelineInfo.ts:370

Returns

DepthCompare

Set Signature

set depthCompare(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:365

Parameters
value

DepthCompare

Returns

void


depthFormat

Get Signature

get depthFormat(): DepthFormat

Defined in: packages/charm/src/graphics/pipelineInfo.ts:451

Returns

DepthFormat

Set Signature

set depthFormat(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:446

Parameters
value

DepthFormat

Returns

void


depthWrite

Get Signature

get depthWrite(): boolean

Defined in: packages/charm/src/graphics/pipelineInfo.ts:380

Returns

boolean

Set Signature

set depthWrite(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:375

Parameters
value

boolean

Returns

void


dstBlendFactor

Get Signature

get dstBlendFactor(): BlendFactor

Defined in: packages/charm/src/graphics/pipelineInfo.ts:431

Returns

BlendFactor

Set Signature

set dstBlendFactor(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:425

Parameters
value

BlendFactor

Returns

void


geometryBuffers

Get Signature

get geometryBuffers(): number

Defined in: packages/charm/src/graphics/pipelineInfo.ts:345

Returns

number

Set Signature

set geometryBuffers(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:339

Parameters
value

number

Returns

void


multisample

Get Signature

get multisample(): boolean

Defined in: packages/charm/src/graphics/pipelineInfo.ts:390

Returns

boolean

Set Signature

set multisample(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:384

Parameters
value

boolean

Returns

void


perInstance

Get Signature

get perInstance(): boolean

Defined in: packages/charm/src/graphics/pipelineInfo.ts:400

Returns

boolean

Set Signature

set perInstance(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:394

Parameters
value

boolean

Returns

void


srcBlendFactor

Get Signature

get srcBlendFactor(): BlendFactor

Defined in: packages/charm/src/graphics/pipelineInfo.ts:420

Returns

BlendFactor

Set Signature

set srcBlendFactor(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:414

Parameters
value

BlendFactor

Returns

void


topology

Get Signature

get topology(): Topology

Defined in: packages/charm/src/graphics/pipelineInfo.ts:353

Returns

Topology

Set Signature

set topology(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:349

Parameters
value

Topology

Returns

void

Methods

clear()

clear(): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:335

Returns

void


disableBlend()

disableBlend(): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:470

This is not a flag, it helps change several flags in one function

Returns

void


setBlend()

setBlend(op, src, dst): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:463

This is not a flag, it helps change several flags in one function

Parameters

op

BlendOperation

src

BlendFactor

dst

BlendFactor

Returns

void


setColorFormatFromString()

setColorFormatFromString(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:491

Parameters

value

string

Returns

void


setDepthFormatFromString()

setDepthFormatFromString(value): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:497

Parameters

value

string

Returns

void


setDepthTest()

setDepthTest(v): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:457

this is not a flag, just helpers to change depthWrite and depthCompare flags

Parameters

v

boolean

Returns

void


setOutput()

setOutput(output, compatible): void

Defined in: packages/charm/src/graphics/pipelineInfo.ts:479

Sets color format and multisample based on a texture properties. Compatible flag forces to find a compatible format (using sRGB when necessary)

Parameters

output

GPUTexture

compatible

boolean = true

Returns

void