NVIDIA OptiX 7.7 nvidia_logo_transpbg.gif Up
OptixBuildInputCustomPrimitiveArray Struct Reference

#include <optix_types.h>

Public Attributes

const CUdeviceptraabbBuffers
 
unsigned int numPrimitives
 
unsigned int strideInBytes
 
const unsigned int * flags
 
unsigned int numSbtRecords
 
CUdeviceptr sbtIndexOffsetBuffer
 
unsigned int sbtIndexOffsetSizeInBytes
 
unsigned int sbtIndexOffsetStrideInBytes
 
unsigned int primitiveIndexOffset
 

Detailed Description

Custom primitive inputs.

See also
OptixBuildInput::customPrimitiveArray

Member Data Documentation

 aabbBuffers

const CUdeviceptr* OptixBuildInputCustomPrimitiveArray::aabbBuffers

Points to host array of device pointers to AABBs (type OptixAabb), one per motion step. Host array size must match number of motion keys as set in OptixMotionOptions (or an array of size 1 if OptixMotionOptions::numKeys is set to 1). Each device pointer must be a multiple of OPTIX_AABB_BUFFER_BYTE_ALIGNMENT.

 flags

const unsigned int* OptixBuildInputCustomPrimitiveArray::flags

Array of flags, to specify flags per sbt record, combinations of OptixGeometryFlags describing the primitive behavior, size must match numSbtRecords.

 numPrimitives

unsigned int OptixBuildInputCustomPrimitiveArray::numPrimitives

Number of primitives in each buffer (i.e., per motion step) in OptixBuildInputCustomPrimitiveArray::aabbBuffers.

 numSbtRecords

unsigned int OptixBuildInputCustomPrimitiveArray::numSbtRecords

Number of sbt records available to the sbt index offset override.

 primitiveIndexOffset

unsigned int OptixBuildInputCustomPrimitiveArray::primitiveIndexOffset

Primitive index bias, applied in optixGetPrimitiveIndex(). Sum of primitiveIndexOffset and number of primitive must not overflow 32bits.

 sbtIndexOffsetBuffer

CUdeviceptr OptixBuildInputCustomPrimitiveArray::sbtIndexOffsetBuffer

Device pointer to per-primitive local sbt index offset buffer. May be NULL. Every entry must be in range [0,numSbtRecords-1]. Size needs to be the number of primitives.

 sbtIndexOffsetSizeInBytes

unsigned int OptixBuildInputCustomPrimitiveArray::sbtIndexOffsetSizeInBytes

Size of type of the sbt index offset. Needs to be 0, 1, 2 or 4 (8, 16 or 32 bit).

 sbtIndexOffsetStrideInBytes

unsigned int OptixBuildInputCustomPrimitiveArray::sbtIndexOffsetStrideInBytes

Stride between the index offsets. If set to zero, the offsets are assumed to be tightly packed and the stride matches the size of the type (sbtIndexOffsetSizeInBytes).

 strideInBytes

unsigned int OptixBuildInputCustomPrimitiveArray::strideInBytes

Stride between AABBs (per motion key). If set to zero, the aabbs are assumed to be tightly packed and the stride is assumed to be sizeof( OptixAabb ). If non-zero, the value must be a multiple of OPTIX_AABB_BUFFER_BYTE_ALIGNMENT.