Monado OpenXR Runtime
Loading...
Searching...
No Matches
render_compute_layer_ubo_data Struct Reference

UBO data that is sent to the compute layer shaders. More...

#include <render/render_interface.h>

Collaboration diagram for render_compute_layer_ubo_data:

Data Fields

struct render_viewport_data view
 
struct { 
 
   uint32_t   value 
 
   uint32_t   padding0 
 
   uint32_t   padding1 
 
   uint32_t   padding2 
 
layer_count 
 
struct xrt_normalized_rect pre_transform
 
struct { 
 
   struct xrt_normalized_rect   post_transforms 
 
   struct { 
 
      uint32_t   layer_type 
 
      uint32_t   unpremultiplied_alpha 
 
      uint32_t   _padding0 
 
      uint32_t   _padding1 
 
   }   layer_data 
 Corresponds to enum xrt_layer_type and unpremultiplied alpha. More...
 
   struct { 
 
      uint32_t   color_image_index 
 
      uint32_t   depth_image_index 
 
      uint32_t   _padding0 
 
      uint32_t   _padding1 
 
   }   image_info 
 Which image/sampler(s) correspond to each layer. More...
 
   struct xrt_matrix_4x4   mv_inverse 
 Shared between cylinder and equirect2. More...
 
   struct { 
 
      float   radius 
 
      float   central_angle 
 
      float   aspect_ratio 
 
      float   padding 
 
   }   cylinder_data 
 For cylinder layer. More...
 
   struct { 
 
      float   radius 
 
      float   central_horizontal_angle 
 
      float   upper_vertical_angle 
 
      float   lower_vertical_angle 
 
   }   eq2_data 
 For equirect2 layers. More...
 
   struct xrt_matrix_4x4   transforms_timewarp 
 For projection layers. More...
 
   struct { 
 
      struct xrt_vec3   val 
 
      float   padding 
 
   }   quad_position 
 For quad layers. More...
 
   struct { 
 
      struct xrt_vec3   val 
 
      float   padding 
 
   }   quad_normal 
 
   struct xrt_matrix_4x4   inverse_quad_transform 
 
   struct { 
 
      struct xrt_vec2   val 
 
      float   padding0 
 
      float   padding1 
 
   }   quad_extent 
 Quad extent in world scale. More...
 
   struct xrt_colour_rgba_f32   color_scale 
 Color scale and bias for all layers. More...
 
   struct xrt_colour_rgba_f32   color_bias 
 
layers [(128)] 
 

Detailed Description

UBO data that is sent to the compute layer shaders.

Field Documentation

◆ _padding0

uint32_t render_compute_layer_ubo_data::_padding0
Todo:
Implement separated samplers and images (and change to samplers[2])

◆ color_scale

struct xrt_colour_rgba_f32 render_compute_layer_ubo_data::color_scale

Color scale and bias for all layers.

Referenced by comp_render_cs_layer().

◆ [struct]

struct { ... } render_compute_layer_ubo_data::cylinder_data

For cylinder layer.

Referenced by do_cs_cylinder_layer().

◆ [struct]

struct { ... } render_compute_layer_ubo_data::eq2_data

For equirect2 layers.

Referenced by do_cs_equirect2_layer().

◆ [struct]

struct { ... } render_compute_layer_ubo_data::image_info

Which image/sampler(s) correspond to each layer.

std140 uvec2, because it is an array it gets padded to vec4.

Referenced by do_cs_cylinder_layer(), do_cs_equirect2_layer(), do_cs_projection_layer(), and do_cs_quad_layer().

◆ [struct]

struct { ... } render_compute_layer_ubo_data::layer_data

Corresponds to enum xrt_layer_type and unpremultiplied alpha.

std140 uvec2, because it is an array it gets padded to vec4.

Referenced by comp_render_cs_layer().

◆ mv_inverse

struct xrt_matrix_4x4 render_compute_layer_ubo_data::mv_inverse

Shared between cylinder and equirect2.

Referenced by do_cs_cylinder_layer(), and do_cs_equirect2_layer().

◆ [struct]

struct { ... } render_compute_layer_ubo_data::quad_extent

Quad extent in world scale.

Referenced by do_cs_quad_layer().

◆ [struct]

struct { ... } render_compute_layer_ubo_data::quad_position

For quad layers.

All quad transforms and coordinates are in view space

Referenced by do_cs_quad_layer().

◆ transforms_timewarp

struct xrt_matrix_4x4 render_compute_layer_ubo_data::transforms_timewarp

For projection layers.

Timewarp matrices

Referenced by do_cs_projection_layer().


The documentation for this struct was generated from the following file: