Skip to main content

Render Graph

Asset ID:render_graph

A render graph used by a camera

Asset schema properties

uuid

uuid

Unique identifier for the asset

name

string

Name of the asset

blendStates

array[object]

All blend states

Pipeline color blend attachment state

alphaBlendOp

integer

Alpha blend operator

blendEnable

boolean

Enable blending

colorBlendOp

integer

Color blend operator

colorWriteMask

integer

Color write mask

dstAlphaBlendFactor

integer

Destination alpha blend factor

dstColorBlendFactor

integer

Destination color blend factor

srcAlphaBlendFactor

integer

Source alpha blend factor

srcColorBlendFactor

integer

Source color blend factor

defaultRenderTargetIndex

uint32

Default:0

The index of the render target to blit into the canvas

graphOrder

array[array]

The order in which to interpret the nodes

inputDescriptor

array[object]

Input descriptor used to parse input data

Parameter description

name

string

Parameter name

categories

array[string]

Categories

default

Parameter default value

nativeType

Parameter native type

type

Parameter type

nodeDataDescriptions

array[object]

Descriptions of all nodes

The description of a render graph node

name

string

Node name

aliases

unordered_map<std::string, std::string>

Aliases between data defined in the camera data object (user provided), and the shader data object

batchType

1opaque2transparent4static_meshes8static_textured_meshes16all_static_meshes32skinned64selected128do_not_use_material256double_sided512single_sided1024pass_occlusion_test

Batch type

bufferName

string

Default:""

Name of the buffer to use for this node

bufferOffset

uint64

Default:0

Offset in the buffer to use for this node

bufferSize

uint64

Default:0

Size of the buffer to use for this node. 0 for while size.

bufferValue

uint32

Default:0

Value to fill the buffer with

clearColors

array[array]

Clear colors

conditions

array[string]

Conditions for this node to be valid. Read from the camera data object

constDataType

0none1material2DEPRECATED_skybox3debug4DEPRECATED_clear_ssao5DEPRECATED_ssao6DEPRECATED_blur7voxel8DEPRECATED_temporal_denoise9DEPRECATED_spatial_denoise10DEPRECATED_outline11DEPRECATED_bloom12DEPRECATED_atmosphere13DEPRECATED_ssr14DEPRECATED_compose_reflections15DEPRECATED_compose_outlines16DEPRECATED_compose_transparent17DEPRECATED_grid_quad18DEPRECATED_timestamp19DEPRECATED_volumetric_lighting20DEPRECATED_color_grading21DEPRECATED_exposure22DEPRECATED_minmip23gpu_occlusion_culling24cpu_occlusion_culling25gpu_occlusion_culling26DEPRECATED_edge_outline27DEPRECATED_point_cloud28DEPRECATED_downsample29DEPRECATED_upsample_combine

Const data type

dataJson

object

Data provided to the shader through the node data buffer

depthBiasClamp

float

Default:0

Depth bias clamp

depthBiasConstantFactor

float

Default:0

Depth bias constant factor

depthBiasSlopeFactor

float

Default:0

Depth bias slope factor

drawIndirect

boolean

Draw indirect

frameNodeType

0viewport1draw_batch2draw_batch_with_materials3dispatch_compute4blit_image5blit_image_pointer_to_dst6copy_image7resolve_image8node_draw_quad9generate_mip_chain10copy_to_cubemap11copy_to_light_cubemap12copy_to_reflection_cubemap13clear_images14timestamp15clear_point_cloud_buffer16draw_debug_lines17dispatch_decals_compute

Node type

inputDepthRenderTargetIndices

array[uint32]

Indices of render targets with depth aspect that are read by this node

inputRenderTargetIndices

array[uint32]

Indices of render targets with color aspect that are read by this node

outputDepthRenderTargetIndices

array[uint32]

Indices of render targets with depth aspect that are written to by this node

outputRenderTargetIndices

array[uint32]

Indices of render targets with color aspect that are written to by this node

pipelineDescription

object

{

backFaceStencilOpStateIndex,

blendStateIndices,

cullMode,

depthCompareOp,

depthTestEnable,

depthWriteEnable,

frontFace,

frontFaceStencilOpStateIndex,

polygonMode,

stencilStateIndex,

topology,

}

Pipeline description

shaderRef

uuid

Shader used by this node. Can be invalid if the execution node hard-codes its own shader

occlusionInputDepthRenderTargetIndex

uint32

The index of the render target used for occlusion

renderPassDescriptions

array[object]

Descriptions of all render passes

Description of a render pass

name

string

Default:"<unnamed_render_pass>"

Render pass name

attachmentClearColors

array[array]

The attachments clear colors

attachmentDescriptions

array[object]

The attachment descriptions

Vulkan Attachment description

finalLayout

integer

Final layout

flags

integer

Attachment description flags

format

integer

Format

initialLayout

integer

Initial layout

loadOp

integer

Load op

samples

integer

Sample count

stencilLoadOp

integer

Stencil load op

stencilStoreOp

integer

Stencil store op

storeOp

integer

Store op

colorAttachmentIndices

array[uint32]

The indices of the render targets used as color attachments for this render pass

colorAttachmentReferences

array[object]

The attachment references of the render targets used as color attachments for this render pass

Vulkan Attachment reference

attachment

uint32

Attachment

layout

integer

Layout

depthAttachmentIndex

uint32

The index of the render target used as depth attachment for this render pass

depthAttachmentReference

object

{

attachment,

layout,

}

The attachment reference of the render target used as depth attachment for this render pass

nodeIndices

array[uint32]

The indices of the nodes composing this render pass

resolveAttachmentIndices

array[uint32]

The indices of the render targets used as resolve attachments for this render pass

resolveAttachmentReferences

array[object]

The attachment references of the render targets used as resolve attachments for this render pass

Vulkan Attachment reference

attachment

uint32

Attachment

layout

integer

Layout

sampleCount

uint32

Default:1

Multisampling

renderTargetDescriptions

array[object]

Descriptions of all render targets

Description of a render target

name

string

Default:"<unnamed_rt>"

Render target name

aspect

integer

Default:"VK_IMAGE_ASPECT_COLOR_BIT"

The aspect of the image to use, in the graph

extent

array[float]

Default:[0,0,0]

The extent of the render target, leave at 0 to use the canvas extent

flags

integer

Default:0

Flags to use on image creation

format

integer

Default:"VK_FORMAT_UNDEFINED"

Format of the render target

memoryType

integer

Default:"vk::memory_type::local"

Memory type

memoryUsage

integer

Default:"vk::memory_usage_gpu_only"

How the image is accessed

mipLevels

uint32

Default:1

Number of mip maps

sampleCount

integer

Default:"VK_SAMPLE_COUNT_1_BIT"

Number of samples per pixel

samplerType

uint32

Default:0

THe sampler to use when accessing this render target

tiling

integer

Default:"VK_IMAGE_TILING_OPTIMAL"

Tiling of the image

usage

integer

Default:0

How this render target is going to be used

stencilStates

array[object]

All stencil states

Stencil operators state

compareMask

uint32

Compare mask

compareOp

integer

Compare operator

depthFailOp

integer

Depth fail operator

failOp

integer

Fail operator

passOp

integer

Pass operator

reference

uint32

Reference

writeMask

uint32

Write mask