Appearance
@tmrw-realityos/charm / WebGPUImmediateDraw
Class: WebGPUImmediateDraw
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:36
An interface to render simple shapes in inmediate mode. Useful for gizmos and debug info. Do not use to render scene geometry as it wont be taken into account in many steps.
Usage
typescript
renderer.renderAlpha.on( () => {
renderer.draw.drawPoints(flat_array_of_points, color, pointSize);
})You can change pipeline parameter using renderer.draw.pipeline:
typescript
renderer.draw.pipeline.push();
renderer.draw.pipeline.setBlend( BlendOperation.add, BlendFactor.one, BlendFactor.one );
renderer.draw.pipeline.setDepthTest( false );
renderer.draw.drawPoints(flat_array_of_points,color, pointSize);
renderer.draw.pipeline.pop();Extends
Constructors
Constructor
new WebGPUImmediateDraw(
context,backend):WebGPUImmediateDraw
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:57
Parameters
context
backend
WebGPUBackend
Returns
WebGPUImmediateDraw
Overrides
Properties
ambientLight
ambientLight:
vec3
Defined in: packages/charm/src/graphics/rendererInterface.ts:431
Inherited from
backend
backend:
WebGPUBackend
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:38
context
context:
WebGPURenderContext
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:37
drawBufferModified
drawBufferModified:
boolean=false
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:55
flatShader
flatShader:
FlatShader
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:47
geometryBuffer
geometryBuffer:
WebGPUBuffer
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:39
geometryBufferModified
geometryBufferModified:
boolean=false
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:54
geometryData
geometryData:
Float32Array
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:40
globalUniformsBindGroup?
optionalglobalUniformsBindGroup:GPUBindGroup
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:45
lastGeometryOffset
lastGeometryOffset:
number=0
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:44
lightVector
lightVector:
vec3
Defined in: packages/charm/src/graphics/rendererInterface.ts:430
Inherited from
phongShader
phongShader:
PhongShader
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:50
pipeline
pipeline:
PipelineInfo
Defined in: packages/charm/src/graphics/rendererInterface.ts:422
Inherited from
pipelineStack
pipelineStack:
number[] =[]
Defined in: packages/charm/src/graphics/rendererInterface.ts:427
Inherited from
pointsShader
pointsShader:
PointsShader
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:48
secondaryGeometryBuffer?
optionalsecondaryGeometryBuffer:WebGPUBuffer
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:42
structData
structData:
Float32Array
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:52
textureShader
textureShader:
TextureShader
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:49
transform
transform:
mat4
Defined in: packages/charm/src/graphics/rendererInterface.ts:424
Inherited from
transformStack
transformStack:
mat4[]
Defined in: packages/charm/src/graphics/rendererInterface.ts:425
Inherited from
Methods
bindGlobalsUniform()
bindGlobalsUniform(
renderPass,index):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:450
Parameters
renderPass
GPURenderPassEncoder
index
number
Returns
void
destroy()
destroy():
void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:92
Returns
void
Overrides
drawBox()
drawBox(
bmin,bmax,color):void
Defined in: packages/charm/src/graphics/rendererInterface.ts:492
Draw box as line geometry
Parameters
bmin
vec3
bmax
vec3
color
vec4
Returns
void
Inherited from
drawGeometry()
drawGeometry(
vertices,color,topology):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:255
Parameters
vertices
Float32Array
color
vec4
topology
Topology
Returns
void
drawLine()
drawLine(
vertices,color,strip):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:162
draws simple lines
Parameters
vertices
Float32Array
color
vec4
strip
boolean = false
Returns
void
Overrides
drawMesh()
drawMesh(
mesh,color,usePhong,strip,start,range):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:171
draws a mesh as long as the attributes are not interleaved
Parameters
mesh
color
vec4
usePhong
boolean = false
strip
boolean = false
start
number = 0
range
number = 0
Returns
void
Overrides
drawPoints()
drawPoints(
vertices,color,pointSize,fixedSize):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:99
Parameters
vertices
Float32Array
color
vec4
pointSize
number
fixedSize
boolean = true
Returns
void
Overrides
drawTexture()
drawTexture(
texture,area,color,gamma,depth,flipY):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:311
Parameters
texture
unknown
area
vec4
color
vec4
gamma
boolean = true
depth
number = 0
flipY
boolean = false
Returns
void
Overrides
drawTexture3D()
drawTexture3D(
texture,position,size,color,gamma,flipY):void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:391
Parameters
texture
unknown
position
vec3
size
vec2
color
vec4
gamma
boolean = true
flipY
boolean = true
Returns
void
Overrides
pop()
pop():
void
Defined in: packages/charm/src/graphics/rendererInterface.ts:456
Returns
void
Inherited from
push()
push():
void
Defined in: packages/charm/src/graphics/rendererInterface.ts:451
Returns
void
Inherited from
reset()
reset():
void
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:79
prepares the class for a new frame, resets some offsets to 0
Returns
void
Overrides
rotate()
rotate(
axis,angle_in_rad):void
Defined in: packages/charm/src/graphics/rendererInterface.ts:470
Parameters
axis
vec3
angle_in_rad
number
Returns
void
Inherited from
scale()
scale(
v):void
Defined in: packages/charm/src/graphics/rendererInterface.ts:474
Parameters
v
vec3
Returns
void
Inherited from
setTransform()
setTransform(
m):void
Defined in: packages/charm/src/graphics/rendererInterface.ts:462
Parameters
m
ReadonlyMat4
Returns
void
Inherited from
translate()
translate(
v):void
Defined in: packages/charm/src/graphics/rendererInterface.ts:466
Parameters
v
vec3
Returns
void
Inherited from
uploadGeometry()
uploadGeometry(
data):number
Defined in: packages/charm/src/graphics/WebGPU/WebGPUImmediateDraw.ts:417
Parameters
data
Float32Array
Returns
number