Texture buffer configuration. More...
#include <idistributed_compute_destination_buffer.h>
Public Attributes | |
Buffer_layout | layout |
! The buffer layout can be either 1- or 2-dimensional. More... | |
Buffer_format | format |
Texture destination buffer format. More... | |
mi::math::Bbox_struct< mi::Float32, 2 > | covered_area |
! Covered 2d area in screen space. More... | |
mi::math::Vector_struct< mi::Uint32, 2 > | resolution |
! Resolution of the buffer. More... | |
Texture buffer configuration.
This structure defines the basic buffer parameters required by the rendering system to allocate the required buffer storage (see generate_buffer_storage
).
The covered area is the 2D area of the geometry's surface that a 2D texture tile covers. The covered area is typically larger than the object's surface area because the returned 2D tile has to have integral width and height resolution while the surface area is given in floating point values. (See get_surface_area()
.)
The associated compute technique has to compute and set the covered area. The covered area is required to enable the calling rendering system to compute the texture coordinates to correctly texture map the tile onto the geometry's 2D surface area.
If the texture buffer layout specifies a 2D array, then the 2D resolution of the 2D tile needs to be specified. The resolution needs to be known to the calling rendering system to enable valid accesses to the texture's 2D array.
If the texture buffer layout specifies an array of isolated texture values, then the resolution needs to be specified as (number of intersection points, 0) and each buffer entry at the end needs to correspond to exactly one intersection point and the number of texture values has to correspond to the number of intersections.
mi::math::Bbox_struct<mi::Float32, 2> nv::index::IDistributed_compute_destination_buffer_2d_texture::Buffer_config::covered_area |
! Covered 2d area in screen space.
Buffer_format nv::index::IDistributed_compute_destination_buffer_2d_texture::Buffer_config::format |
Texture destination buffer format.
! Buffer format desprition.
Buffer_layout nv::index::IDistributed_compute_destination_buffer_2d_texture::Buffer_config::layout |
! The buffer layout can be either 1- or 2-dimensional.
mi::math::Vector_struct<mi::Uint32, 2> nv::index::IDistributed_compute_destination_buffer_2d_texture::Buffer_config::resolution |
! Resolution of the buffer.