Appearance
@tmrw-realityos/charm • Docs
@tmrw-realityos/charm / PipelineInfo
Class: PipelineInfo
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_WRITEKeep in mind that the default pipeline is: DEPTH_ALWAYS | CULLMODE_NONE | NO_BLEND
Constructors
new PipelineInfo()
new PipelineInfo(
v):PipelineInfo
Parameters
• v: number = DEFAULT_PIPELINE
Returns
Defined in
packages/charm/src/graphics/pipelineInfo.ts:331
Properties
hash
hash:
number=DEFAULT_PIPELINE
Defined in
packages/charm/src/graphics/pipelineInfo.ts:327
default
staticdefault:PipelineInfo
Defined in
packages/charm/src/graphics/pipelineInfo.ts:329
Accessors
blendOperation
getblendOperation():BlendOperation
setblendOperation(value):void
Parameters
• value: BlendOperation
Returns
BlendOperation
Defined in
packages/charm/src/graphics/pipelineInfo.ts:409
colorFormat
getcolorFormat():ColorFormat
setcolorFormat(value):void
Parameters
• value: ColorFormat
Returns
ColorFormat
Defined in
packages/charm/src/graphics/pipelineInfo.ts:441
cullMode
getcullMode():CullMode
setcullMode(value):void
Parameters
• value: CullMode
Returns
CullMode
Defined in
packages/charm/src/graphics/pipelineInfo.ts:361
depthCompare
getdepthCompare():DepthCompare
setdepthCompare(value):void
Parameters
• value: DepthCompare
Returns
DepthCompare
Defined in
packages/charm/src/graphics/pipelineInfo.ts:370
depthFormat
getdepthFormat():DepthFormat
setdepthFormat(value):void
Parameters
• value: DepthFormat
Returns
DepthFormat
Defined in
packages/charm/src/graphics/pipelineInfo.ts:451
depthWrite
getdepthWrite():boolean
setdepthWrite(value):void
Parameters
• value: boolean
Returns
boolean
Defined in
packages/charm/src/graphics/pipelineInfo.ts:380
dstBlendFactor
getdstBlendFactor():BlendFactor
setdstBlendFactor(value):void
Parameters
• value: BlendFactor
Returns
BlendFactor
Defined in
packages/charm/src/graphics/pipelineInfo.ts:431
geometryBuffers
getgeometryBuffers():number
setgeometryBuffers(value):void
Parameters
• value: number
Returns
number
Defined in
packages/charm/src/graphics/pipelineInfo.ts:345
multisample
getmultisample():boolean
setmultisample(value):void
Parameters
• value: boolean
Returns
boolean
Defined in
packages/charm/src/graphics/pipelineInfo.ts:390
perInstance
getperInstance():boolean
setperInstance(value):void
Parameters
• value: boolean
Returns
boolean
Defined in
packages/charm/src/graphics/pipelineInfo.ts:400
srcBlendFactor
getsrcBlendFactor():BlendFactor
setsrcBlendFactor(value):void
Parameters
• value: BlendFactor
Returns
BlendFactor
Defined in
packages/charm/src/graphics/pipelineInfo.ts:420
topology
gettopology():Topology
settopology(value):void
Parameters
• value: Topology
Returns
Topology
Defined in
packages/charm/src/graphics/pipelineInfo.ts:353
Methods
clear()
clear():
void
Returns
void
Defined in
packages/charm/src/graphics/pipelineInfo.ts:335
disableBlend()
disableBlend():
void
This is not a flag, it helps change several flags in one function
Returns
void
Defined in
packages/charm/src/graphics/pipelineInfo.ts:470
getDescriptor()
getDescriptor():
IPipelineSimpleDescriptor
Returns
IPipelineSimpleDescriptor
Defined in
packages/charm/src/graphics/pipelineInfo.ts:503
setBlend()
setBlend(
op,src,dst):void
This is not a flag, it helps change several flags in one function
Parameters
• op: BlendOperation
• src: BlendFactor
• dst: BlendFactor
Returns
void
Defined in
packages/charm/src/graphics/pipelineInfo.ts:463
setColorFormatFromString()
setColorFormatFromString(
value):void
Parameters
• value: string
Returns
void
Defined in
packages/charm/src/graphics/pipelineInfo.ts:491
setDepthFormatFromString()
setDepthFormatFromString(
value):void
Parameters
• value: string
Returns
void
Defined in
packages/charm/src/graphics/pipelineInfo.ts:497
setDepthTest()
setDepthTest(
v):void
this is not a flag, just helpers to change depthWrite and depthCompare flags
Parameters
• v: boolean
Returns
void
Defined in
packages/charm/src/graphics/pipelineInfo.ts:457
setOutput()
setOutput(
output,compatible):void
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
Defined in
packages/charm/src/graphics/pipelineInfo.ts:479
descriptorFromHash()
staticdescriptorFromHash(h):IPipelineSimpleDescriptor
Constructs a simple pipeline descriptor based on the pipeline flags
Parameters
• h: number
Returns
IPipelineSimpleDescriptor