GBuffer

GBuffer

# new GBuffer()

Source:

GBuffer is provided for deferred rendering and SSAO, SSR pass. It will do three passes rendering to four target textures. See

Extends

Members

# __uid__ :number

Source:
Inherited From:
Type:
  • number

# enableTargetTexture1 :boolean

Source:

If enable gbuffer texture 1.

Type:
  • boolean

# enableTargetTexture2 :boolean

Source:

If enable gbuffer texture 2.

Type:
  • boolean

# enableTargetTexture3 :boolean

Source:

If enable gbuffer texture 3.

Type:
  • boolean

# enableTargetTexture4 :boolean

Source:

If enable gbuffer texture 4.

Type:
  • boolean

Methods

# after(name, action, contextopt)

Source:
Inherited From:
Mixes In:

Alias of once('after' + name)

Parameters:
Name Type Attributes Description
name string
action function
context Object <optional>

# before(name, action, contextopt)

Source:
Inherited From:
Mixes In:

Alias of once('before' + name)

Parameters:
Name Type Attributes Description
name string
action function
context Object <optional>

# dispose(renderer)

Source:
Parameters:
Name Type Description
renderer clay.Renderer

# error(action, contextopt)

Source:
Inherited From:
Mixes In:

Alias of on('error')

Parameters:
Name Type Attributes Description
action function
context Object <optional>

# getTargetTexture1() → {clay.Texture2D}

Source:

Get first target texture. Channel storage:

  • R: normal.x * 0.5 + 0.5
  • G: normal.y * 0.5 + 0.5
  • B: normal.z * 0.5 + 0.5
  • A: glossiness
Returns:
Type
clay.Texture2D

# getTargetTexture2() → {clay.Texture2D}

Source:

Get second target texture. Channel storage:

  • R: depth
Returns:
Type
clay.Texture2D

# getTargetTexture3() → {clay.Texture2D}

Source:

Get third target texture. Channel storage:

  • R: albedo.r
  • G: albedo.g
  • B: albedo.b
  • A: metalness
Returns:
Type
clay.Texture2D

# getTargetTexture4() → {clay.Texture2D}

Source:

Get fourth target texture. Channel storage:

  • R: velocity.r
  • G: velocity.g
Returns:
Type
clay.Texture2D

# has(name, action) → {boolean}

Source:
Inherited From:
Mixes In:

If registered the event handler

Parameters:
Name Type Description
name string
action function
Returns:
Type
boolean

# off(action, contextopt)

Source:
Inherited From:
Mixes In:

Remove event listener

Parameters:
Name Type Attributes Description
action function
context Object <optional>

# on(name, action, contextopt)

Source:
Inherited From:
Mixes In:

Register event handler

Parameters:
Name Type Attributes Description
name string
action function
context Object <optional>

# once(name, action, contextopt)

Source:
Inherited From:
Mixes In:

Register event, event will only be triggered once and then removed

Parameters:
Name Type Attributes Description
name string
action function
context Object <optional>

# renderDebug(renderer, camera, typeopt)

Source:

Debug output of gBuffer. Use type parameter to choos the debug output type, which can be:

  • 'normal'
  • 'depth'
  • 'position'
  • 'glossiness'
  • 'metalness'
  • 'albedo'
  • 'velocity'
Parameters:
Name Type Attributes Default Description
renderer clay.Renderer
camera clay.Camera
type string <optional>
'normal'

# resize(width, height)

Source:

Set G Buffer size.

Parameters:
Name Type Description
width number
height number

# success(action, contextopt)

Source:
Inherited From:
Mixes In:

Alias of on('success')

Parameters:
Name Type Attributes Description
action function
context Object <optional>

# trigger(name)

Source:
Inherited From:
Mixes In:

Trigger event

Parameters:
Name Type Description
name string

# update(renderer, scene, camera)

Source:

Update GBuffer

Parameters:
Name Type Description
renderer clay.Renderer
scene clay.Scene
camera clay.Camera