| { |
| "commands": [ |
| { |
| "mark_boundary": { |
| "frame_id": 0, |
| "resources": [] |
| } |
| }, |
| { |
| "dispatch_compute": { |
| "shader_ref": "0_pre_process", |
| "push_data_ref": "push_data_1", |
| "rangeND": [ |
| 60, |
| 34, |
| 1 |
| ], |
| "implicit_barrier": false, |
| "bindings": [ |
| { |
| "set": 0, |
| "id": 2, |
| "resource_ref": "in_motion" |
| }, |
| { |
| "set": 0, |
| "id": 0, |
| "resource_ref": "in_colour" |
| }, |
| { |
| "set": 0, |
| "id": 7, |
| "resource_ref": "in_nearest_offset_tm1" |
| }, |
| { |
| "set": 0, |
| "id": 5, |
| "resource_ref": "in_depth_tm1" |
| }, |
| { |
| "set": 0, |
| "id": 3, |
| "resource_ref": "in_history" |
| }, |
| { |
| "set": 0, |
| "id": 4, |
| "resource_ref": "in_feedback_tm1" |
| }, |
| { |
| "set": 0, |
| "id": 6, |
| "resource_ref": "in_derivative_tm1" |
| }, |
| { |
| "set": 0, |
| "id": 1, |
| "resource_ref": "in_depth" |
| }, |
| { |
| "set": 1, |
| "id": 1, |
| "resource_ref": "out_derivative", |
| "descriptor_type": "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE" |
| }, |
| { |
| "set": 1, |
| "id": 3, |
| "resource_ref": "out_nearest_offset", |
| "descriptor_type": "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE" |
| }, |
| { |
| "set": 1, |
| "id": 0, |
| "resource_ref": "out_input_tensor" |
| } |
| ] |
| } |
| }, |
| { |
| "dispatch_barrier": { |
| "image_barrier_refs": [], |
| "tensor_barrier_refs": [ |
| "barrier_14" |
| ], |
| "memory_barrier_refs": [], |
| "buffer_barrier_refs": [] |
| } |
| }, |
| { |
| "dispatch_graph": { |
| "graph_ref": "1_nss", |
| "implicit_barrier": false, |
| "bindings": [ |
| { |
| "set": 0, |
| "id": 0, |
| "resource_ref": "out_input_tensor" |
| }, |
| { |
| "set": 0, |
| "id": 1, |
| "resource_ref": "out_feedback_aliaser" |
| }, |
| { |
| "set": 0, |
| "id": 2, |
| "resource_ref": "out_tp_aliaser" |
| }, |
| { |
| "set": 0, |
| "id": 3, |
| "resource_ref": "out_k3_aliaser" |
| }, |
| { |
| "set": 0, |
| "id": 4, |
| "resource_ref": "out_k2_aliaser" |
| }, |
| { |
| "set": 0, |
| "id": 5, |
| "resource_ref": "out_k1_aliaser" |
| }, |
| { |
| "set": 0, |
| "id": 6, |
| "resource_ref": "out_k0_aliaser" |
| } |
| ] |
| } |
| }, |
| { |
| "dispatch_barrier": { |
| "image_barrier_refs": [ |
| "barrier_23", |
| "barrier_25", |
| "barrier_27", |
| "barrier_29", |
| "barrier_31", |
| "barrier_33" |
| ], |
| "tensor_barrier_refs": [], |
| "memory_barrier_refs": [], |
| "buffer_barrier_refs": [] |
| } |
| }, |
| { |
| "dispatch_compute": { |
| "shader_ref": "2_post_process", |
| "push_data_ref": "push_data_22", |
| "rangeND": [ |
| 120, |
| 68, |
| 1 |
| ], |
| "implicit_barrier": false, |
| "bindings": [ |
| { |
| "set": 0, |
| "id": 1, |
| "resource_ref": "in_motion" |
| }, |
| { |
| "set": 0, |
| "id": 2, |
| "resource_ref": "in_history" |
| }, |
| { |
| "set": 0, |
| "id": 8, |
| "resource_ref": "out_nearest_offset" |
| }, |
| { |
| "set": 0, |
| "id": 3, |
| "resource_ref": "out_k0" |
| }, |
| { |
| "set": 0, |
| "id": 4, |
| "resource_ref": "out_k1" |
| }, |
| { |
| "set": 0, |
| "id": 5, |
| "resource_ref": "out_k2" |
| }, |
| { |
| "set": 0, |
| "id": 6, |
| "resource_ref": "out_k3" |
| }, |
| { |
| "set": 0, |
| "id": 0, |
| "resource_ref": "in_colour" |
| }, |
| { |
| "set": 0, |
| "id": 7, |
| "resource_ref": "out_tp" |
| }, |
| { |
| "set": 1, |
| "id": 0, |
| "resource_ref": "out_colour", |
| "descriptor_type": "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE" |
| } |
| ] |
| } |
| }, |
| { |
| "mark_boundary": { |
| "frame_id": 1, |
| "resources": [ |
| "out_colour" |
| ] |
| } |
| } |
| ], |
| "resources": [ |
| { |
| "shader": { |
| "uid": "0_pre_process", |
| "src": "./0_pre_process.spv", |
| "entry": "main", |
| "type": "SPIR-V", |
| "push_constants_size": 128, |
| "specialization_constants": [] |
| } |
| }, |
| { |
| "raw_data": { |
| "uid": "push_data_1", |
| "src": "./0_pre_process_push_consts.npy" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_motion", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_motion.dds", |
| "format": "VK_FORMAT_R16G16_SFLOAT", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_colour", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_colour.dds", |
| "format": "VK_FORMAT_B10G11R11_UFLOAT_PACK32", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_nearest_offset_tm1", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_nearest_offset_tm1.dds", |
| "format": "VK_FORMAT_R8_UNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_CUSTOM_EXT", |
| "custom_border_color": [ |
| 0.0, |
| 0.0, |
| 0.0, |
| 0.0 |
| ], |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_depth_tm1", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_depth_tm1.dds", |
| "format": "VK_FORMAT_R32_SFLOAT", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_CUSTOM_EXT", |
| "custom_border_color": [ |
| 0.0, |
| 0.0, |
| 0.0, |
| 0.0 |
| ], |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_history", |
| "dims": [ |
| 1, |
| 1920, |
| 1088, |
| 1 |
| ], |
| "src": "./in_history.dds", |
| "format": "VK_FORMAT_B10G11R11_UFLOAT_PACK32", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_EDGE", |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_feedback_tm1", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_feedback_tm1.dds", |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_CUSTOM_EXT", |
| "custom_border_color": [ |
| -1.0, |
| -1.0, |
| -1.0, |
| -1.0 |
| ], |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_derivative_tm1", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_derivative_tm1.dds", |
| "format": "VK_FORMAT_R8G8_UNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "in_depth", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "src": "./in_depth.dds", |
| "format": "VK_FORMAT_R32_SFLOAT", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "OPTIMAL" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_derivative", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "dst": "./out_derivative.dds", |
| "format": "VK_FORMAT_R8G8_UNORM", |
| "shader_access": "writeonly", |
| "mips": 1, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_nearest_offset", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "dst": "./out_nearest_offset.dds", |
| "format": "VK_FORMAT_R8_UNORM", |
| "shader_access": "readwrite", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_input_tensor", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 12 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "graph": { |
| "uid": "1_nss", |
| "src": "./1_nss.vgf" |
| } |
| }, |
| { |
| "tensor_barrier": { |
| "uid": "barrier_14", |
| "src_access": "compute_shader_write", |
| "dst_access": "graph_read", |
| "src_stage": [ |
| "compute" |
| ], |
| "dst_stage": [ |
| "graph" |
| ], |
| "tensor_resource": "out_input_tensor" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_feedback", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "dst": "./out_feedback.dds", |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "writeonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_feedback_aliaser", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 4 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "alias_target": { |
| "resource_ref": "out_feedback" |
| }, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_tp", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_BORDER", |
| "border_color": "FLOAT_TRANSPARENT_BLACK", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_tp_aliaser", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 4 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "alias_target": { |
| "resource_ref": "out_tp" |
| }, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_k3", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_EDGE", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_k3_aliaser", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 4 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "alias_target": { |
| "resource_ref": "out_k3" |
| }, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_k2", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_EDGE", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_k2_aliaser", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 4 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "alias_target": { |
| "resource_ref": "out_k2" |
| }, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_k1", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_EDGE", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_k1_aliaser", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 4 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "alias_target": { |
| "resource_ref": "out_k1" |
| }, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_k0", |
| "dims": [ |
| 1, |
| 960, |
| 544, |
| 1 |
| ], |
| "format": "VK_FORMAT_R8G8B8A8_SNORM", |
| "shader_access": "readonly", |
| "mips": 1, |
| "min_filter": "LINEAR", |
| "mag_filter": "LINEAR", |
| "mip_filter": "NEAREST", |
| "border_address_mode": "CLAMP_EDGE", |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "tensor": { |
| "uid": "out_k0_aliaser", |
| "dims": [ |
| 1, |
| 544, |
| 960, |
| 4 |
| ], |
| "format": "VK_FORMAT_R8_SINT", |
| "shader_access": "readwrite", |
| "alias_target": { |
| "resource_ref": "out_k0" |
| }, |
| "tiling": "LINEAR" |
| } |
| }, |
| { |
| "shader": { |
| "uid": "2_post_process", |
| "src": "./2_post_process.spv", |
| "entry": "main", |
| "type": "SPIR-V", |
| "push_constants_size": 76, |
| "specialization_constants": [] |
| } |
| }, |
| { |
| "raw_data": { |
| "uid": "push_data_22", |
| "src": "./2_post_process_push_consts.npy" |
| } |
| }, |
| { |
| "image_barrier": { |
| "uid": "barrier_23", |
| "src_access": "compute_shader_write", |
| "dst_access": "compute_shader_read", |
| "old_layout": "general", |
| "new_layout": "general", |
| "src_stage": [ |
| "compute" |
| ], |
| "dst_stage": [ |
| "compute" |
| ], |
| "image_resource": "out_nearest_offset" |
| } |
| }, |
| { |
| "image_barrier": { |
| "uid": "barrier_25", |
| "src_access": "graph_write", |
| "dst_access": "compute_shader_read", |
| "old_layout": "general", |
| "new_layout": "general", |
| "src_stage": [ |
| "graph" |
| ], |
| "dst_stage": [ |
| "compute" |
| ], |
| "image_resource": "out_k0" |
| } |
| }, |
| { |
| "image_barrier": { |
| "uid": "barrier_27", |
| "src_access": "graph_write", |
| "dst_access": "compute_shader_read", |
| "old_layout": "general", |
| "new_layout": "general", |
| "src_stage": [ |
| "graph" |
| ], |
| "dst_stage": [ |
| "compute" |
| ], |
| "image_resource": "out_k1" |
| } |
| }, |
| { |
| "image_barrier": { |
| "uid": "barrier_29", |
| "src_access": "graph_write", |
| "dst_access": "compute_shader_read", |
| "old_layout": "general", |
| "new_layout": "general", |
| "src_stage": [ |
| "graph" |
| ], |
| "dst_stage": [ |
| "compute" |
| ], |
| "image_resource": "out_k2" |
| } |
| }, |
| { |
| "image_barrier": { |
| "uid": "barrier_31", |
| "src_access": "graph_write", |
| "dst_access": "compute_shader_read", |
| "old_layout": "general", |
| "new_layout": "general", |
| "src_stage": [ |
| "graph" |
| ], |
| "dst_stage": [ |
| "compute" |
| ], |
| "image_resource": "out_k3" |
| } |
| }, |
| { |
| "image_barrier": { |
| "uid": "barrier_33", |
| "src_access": "graph_write", |
| "dst_access": "compute_shader_read", |
| "old_layout": "general", |
| "new_layout": "general", |
| "src_stage": [ |
| "graph" |
| ], |
| "dst_stage": [ |
| "compute" |
| ], |
| "image_resource": "out_tp" |
| } |
| }, |
| { |
| "image": { |
| "uid": "out_colour", |
| "dims": [ |
| 1, |
| 1920, |
| 1088, |
| 1 |
| ], |
| "dst": "./out_colour.dds", |
| "format": "VK_FORMAT_B10G11R11_UFLOAT_PACK32", |
| "shader_access": "writeonly", |
| "mips": 1, |
| "tiling": "LINEAR" |
| } |
| } |
| ] |
| } |