Triangle geometry data description. More...
#include <DeviceContext.h>
Public Attributes | |
const Char * | GeometryName = nullptr |
Geometry name used to map a geometry to a hit group in the shader binding table. | |
IBuffer * | pVertexBuffer = nullptr |
Triangle vertices data source. | |
Uint64 | VertexOffset = 0 |
Data offset, in bytes, in pVertexBuffer . | |
Uint32 | VertexStride = 0 |
Stride, in bytes, between vertices. | |
Uint32 | VertexCount = 0 |
The number of triangle vertices. | |
VALUE_TYPE | VertexValueType = VT_UNDEFINED |
The type of the vertex components. | |
Uint8 | VertexComponentCount = 0 |
The number of vertex components. | |
Uint32 | PrimitiveCount = 0 |
The number of triangles. | |
IBuffer * | pIndexBuffer = nullptr |
Triangle indices data source. | |
Uint64 | IndexOffset = 0 |
Data offset in bytes in pIndexBuffer. | |
VALUE_TYPE | IndexType = VT_UNDEFINED |
The type of triangle indices, see Diligent::VALUE_TYPE. | |
IBuffer * | pTransformBuffer = nullptr |
Geometry transformation data source, must contain a float4x3 matrix aka Diligent::InstanceMatrix. | |
Uint64 | TransformBufferOffset = 0 |
Data offset in bytes in pTransformBuffer . | |
RAYTRACING_GEOMETRY_FLAGS | Flags = RAYTRACING_GEOMETRY_FLAG_NONE |
Geometry flags, se Diligent::RAYTRACING_GEOMETRY_FLAGS. | |
Triangle geometry data description.
const Char* Diligent::BLASBuildTriangleData::GeometryName = nullptr |
Geometry name used to map a geometry to a hit group in the shader binding table.
Add geometry data to the geometry that is allocated by BLASTriangleDesc with the same name.
Uint64 Diligent::BLASBuildTriangleData::IndexOffset = 0 |
Data offset in bytes in pIndexBuffer.
Offset must be aligned by RayTracingProperties::IndexBufferAlignment and must be a multiple of the IndexType size.
VALUE_TYPE Diligent::BLASBuildTriangleData::IndexType = VT_UNDEFINED |
The type of triangle indices, see Diligent::VALUE_TYPE.
This is an optional value. Must be undefined or same as in BLASTriangleDesc.
IBuffer* Diligent::BLASBuildTriangleData::pIndexBuffer = nullptr |
Triangle indices data source.
Must be null if BLASTriangleDesc::IndexType is undefined. The buffer must be created with Diligent::BIND_RAY_TRACING flag.
Uint32 Diligent::BLASBuildTriangleData::PrimitiveCount = 0 |
The number of triangles.
Must equal to VertexCount / 3
if pIndexBuffer
is null
or must be equal to index count / 3.
IBuffer* Diligent::BLASBuildTriangleData::pTransformBuffer = nullptr |
Geometry transformation data source, must contain a float4x3
matrix aka Diligent::InstanceMatrix.
The buffer must be created with Diligent::BIND_RAY_TRACING flag.
IBuffer* Diligent::BLASBuildTriangleData::pVertexBuffer = nullptr |
Triangle vertices data source.
Triangles are considered "inactive" if the x component of each vertex is NaN. The buffer must be created with BIND_RAY_TRACING flag.
Uint64 Diligent::BLASBuildTriangleData::TransformBufferOffset = 0 |
Data offset in bytes in pTransformBuffer
.
Offset must be aligned by RayTracingProperties::TransformBufferAlignment.
Uint8 Diligent::BLASBuildTriangleData::VertexComponentCount = 0 |
The number of vertex components.
This is an optional value. Must be undefined or same as in BLASTriangleDesc.
Uint32 Diligent::BLASBuildTriangleData::VertexCount = 0 |
The number of triangle vertices.
Must be less than or equal to BLASTriangleDesc::MaxVertexCount.
Uint64 Diligent::BLASBuildTriangleData::VertexOffset = 0 |
Data offset, in bytes, in pVertexBuffer
.
VertexValueType
size.VertexStride
. Uint32 Diligent::BLASBuildTriangleData::VertexStride = 0 |
Stride, in bytes, between vertices.
VertexValueType
size.VALUE_TYPE Diligent::BLASBuildTriangleData::VertexValueType = VT_UNDEFINED |
The type of the vertex components.
This is an optional value. Must be undefined or same as in BLASTriangleDesc.