wisdom
Loading...
Searching...
No Matches
wis::AcceleratedGeometryInput Struct Reference

Detailed Description

Geometry description for bottom-level acceleration structure. Mayy contain AABBs or Triangles.

wis::ASGeometryType geometry_type;
uint64_t vertex_or_aabb_buffer_address;
uint64_t vertex_or_aabb_buffer_stride;
uint64_t index_buffer_address;
uint64_t transform_matrix_address;
uint32_t vertex_count;
uint32_t triangle_or_aabb_count;
wis::DataFormat vertex_format;
wis::IndexType index_format;
};
ASGeometryType
Type of the geometry in the Acceleration Structure.
Definition api.hpp:191
ASGeometryFlags
Geometry flags for additional geometry features.
Definition api.hpp:1489
IndexType
Index type for index buffer. Enum values resemble the byte stride of the format.
Definition api.hpp:1232
DataFormat
Data format for data. Used as a template for data in several cases. Can be used to describe:
Definition api.hpp:310
Geometry description for bottom-level acceleration structure. Mayy contain AABBs or Triangles.
Definition api.hpp:2110

Definition at line 2110 of file api.hpp.

#include <api.hpp>

Public Attributes

wis::ASGeometryType geometry_type
 Type of the geometry (Triangles/AABB).
 
wis::ASGeometryFlags flags
 Geometry flags.
 
uint64_t vertex_or_aabb_buffer_address
 Buffer address of the buffer containing vertex data or AABB data (float [6]) depending on the geometry type.
 
uint64_t vertex_or_aabb_buffer_stride
 Stride of the vertex buffer in bytes or stride of the AABB buffer in bytes.
 
uint64_t index_buffer_address
 Buffer address of the buffer containing index data. Unused for wis::ASGeometryType::AABBs.
 
uint64_t transform_matrix_address
 GPU Buffer address of the containing transform matrix (float [3][4]). Unused for wis::ASGeometryType::AABBs.
 
uint32_t vertex_count
 Vertex count. Unused for wis::ASGeometryType::AABBs.
 
uint32_t triangle_or_aabb_count
 For triangles it is equal to (index_count/3) and count for AABBs.
 
wis::DataFormat vertex_format
 Format of the vertices. Unused for wis::ASGeometryType::AABBs.
 
wis::IndexType index_format
 Format of the indices. Unused for wis::ASGeometryType::AABBs.
 

Data Members

◆ flags

wis::ASGeometryFlags wis::AcceleratedGeometryInput::flags

Geometry flags.

Definition at line 2112 of file api.hpp.

◆ geometry_type

wis::ASGeometryType wis::AcceleratedGeometryInput::geometry_type

Type of the geometry (Triangles/AABB).

Definition at line 2111 of file api.hpp.

◆ index_buffer_address

uint64_t wis::AcceleratedGeometryInput::index_buffer_address

Buffer address of the buffer containing index data. Unused for wis::ASGeometryType::AABBs.

Definition at line 2115 of file api.hpp.

◆ index_format

wis::IndexType wis::AcceleratedGeometryInput::index_format

Format of the indices. Unused for wis::ASGeometryType::AABBs.

Definition at line 2120 of file api.hpp.

◆ transform_matrix_address

uint64_t wis::AcceleratedGeometryInput::transform_matrix_address

GPU Buffer address of the containing transform matrix (float [3][4]). Unused for wis::ASGeometryType::AABBs.

Definition at line 2116 of file api.hpp.

◆ triangle_or_aabb_count

uint32_t wis::AcceleratedGeometryInput::triangle_or_aabb_count

For triangles it is equal to (index_count/3) and count for AABBs.

Definition at line 2118 of file api.hpp.

◆ vertex_count

uint32_t wis::AcceleratedGeometryInput::vertex_count

Vertex count. Unused for wis::ASGeometryType::AABBs.

Definition at line 2117 of file api.hpp.

◆ vertex_format

wis::DataFormat wis::AcceleratedGeometryInput::vertex_format

Format of the vertices. Unused for wis::ASGeometryType::AABBs.

Definition at line 2119 of file api.hpp.

◆ vertex_or_aabb_buffer_address

uint64_t wis::AcceleratedGeometryInput::vertex_or_aabb_buffer_address

Buffer address of the buffer containing vertex data or AABB data (float [6]) depending on the geometry type.

Definition at line 2113 of file api.hpp.

◆ vertex_or_aabb_buffer_stride

uint64_t wis::AcceleratedGeometryInput::vertex_or_aabb_buffer_stride

Stride of the vertex buffer in bytes or stride of the AABB buffer in bytes.

Definition at line 2114 of file api.hpp.


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