Monado OpenXR Runtime
|
The input data needed for a single view, shared between both GFX and CS paths. More...
#include <util/comp_render.h>
Data Fields | |
struct xrt_pose | world_pose |
New world pose of this view. More... | |
struct xrt_pose | eye_pose |
New eye pose of this view. More... | |
struct xrt_fov | fov |
New fov of this view, used for the layer scratch image. More... | |
VkImage | image |
The layer image for this view (aka scratch image), used for barrier operations. More... | |
VkImageView | srgb_view |
View into layer image (aka scratch image), used for both GFX (read/write) and CS (read) paths. More... | |
struct render_viewport_data | layer_viewport_data |
Pre-view layer target viewport_data (where in the image we should render the view). More... | |
struct xrt_normalized_rect | layer_norm_rect |
When sampling from the layer image (aka scratch image), how should we transform it to get to the pixels correctly. More... | |
struct xrt_normalized_rect | target_pre_transform |
Go from UV to tanangle for the target, this needs to match fov . More... | |
struct render_viewport_data | target_viewport_data |
struct { | |
struct render_gfx_target_resources * rtr | |
Per-view layer target resources. More... | |
struct xrt_matrix_2x2 vertex_rot | |
Distortion target vertex rotation information. More... | |
} | gfx |
struct { | |
VkImageView unorm_view | |
Only used on compute path. More... | |
} | cs |
The input data needed for a single view, shared between both GFX and CS paths.
To fully render a single view two "rendering" might be needed, the first being the layer squashing, and the second is the distortion step. The target for the layer squashing is referred to as "layer" or "scratch" and prefixed with layer
if needs be. The other final step is referred to as "distortion target" or just "target", and is prefixed with target
.
struct xrt_pose comp_render_view_data::eye_pose |
New eye pose of this view.
struct xrt_fov comp_render_view_data::fov |
New fov of this view, used for the layer scratch image.
Needs to match distortion parameters if distortion is used.
VkImage comp_render_view_data::image |
The layer image for this view (aka scratch image), used for barrier operations.
struct xrt_normalized_rect comp_render_view_data::layer_norm_rect |
When sampling from the layer image (aka scratch image), how should we transform it to get to the pixels correctly.
struct render_viewport_data comp_render_view_data::layer_viewport_data |
Pre-view layer target viewport_data (where in the image we should render the view).
struct render_gfx_target_resources* comp_render_view_data::rtr |
Per-view layer target resources.
VkImageView comp_render_view_data::srgb_view |
View into layer image (aka scratch image), used for both GFX (read/write) and CS (read) paths.
struct xrt_normalized_rect comp_render_view_data::target_pre_transform |
Go from UV to tanangle for the target, this needs to match fov
.
VkImageView comp_render_view_data::unorm_view |
Only used on compute path.
struct xrt_matrix_2x2 comp_render_view_data::vertex_rot |
Distortion target vertex rotation information.
struct xrt_pose comp_render_view_data::world_pose |
New world pose of this view.