OptiX-Based Code
Description
Collaboration diagram for OptiX-Based Code:

Classes | |
| struct | AreaLight |
| The different types of area lights that can exist in our current models. More... | |
| struct | PointLight |
| Packed parameters of a point light. More... | |
| struct | CameraMissParameters |
| The parameters associated with camera miss data. A.K.A background data. More... | |
| struct | MissParameters |
| The parameters for a camera miss record. More... | |
| struct | LensParams |
| Inverse lens param for modeling polynomial forward model. More... | |
| struct | CameraParameters |
| The parameters needed to define a camera. More... | |
| struct | SemanticCameraParameters |
| Parameters need to define a camera that generates semantic segmentation data. More... | |
| struct | LidarParameters |
| Parameters used to define a lidar. More... | |
| struct | RadarParameters |
| Parameters used to define a radar. More... | |
| struct | RaygenParameters |
| Parameters for specifying raygen programs. More... | |
| struct | MeshParameters |
| All the data to specific a triangle mesh. More... | |
| struct | MaterialParameters |
| All parameters for specifying a material in optix. More... | |
| struct | ContextParameters |
| Parameters associated with the entire optix scene. More... | |
| struct | MaterialRecordParameters |
| Parameters associated with a single object in the scene. Padding added during record creation. More... | |
| struct | PerRayData_camera |
| Data associated with a single camera ray. More... | |
| struct | PerRayData_semantic |
| Data associated with a single segmentation camera ray. More... | |
| struct | PerRayData_shadow |
| Data associated with a single shadow ray. More... | |
| struct | PerRayData_lidar |
| Data associated with a single lidar ray. More... | |
| struct | PerRayData_radar |
| Data associated with a single radar ray. More... | |
| class | chrono::sensor::ChOptixEngine |
| Optix Engine that is responsible for managing all render-based sensors. More... | |
| struct | chrono::sensor::Transform |
| Transform struct for packing a translation, rotation, and scale. More... | |
| class | chrono::sensor::ChOptixGeometry |
| Optix Geometry class that is responsible for managing all geometric information in the optix scene This handles the acceleration structure and transforms. More... | |
| class | chrono::sensor::ChOptixPipeline |
| Class to hold all the Shader Binding Table parameters adnd manage the ray tracing pipeline, materials, ray gen programs. More... | |
| struct | chrono::sensor::ProgramString |
| holds string values for ptx file and ray generation program More... | |
| struct | chrono::sensor::ByteImageData |
| stores image data More... | |
Macros | |
| #define | OPTIX_ERROR_CHECK(result) |
| Checks the output of an optix call for any error, will throw a runtime error if not success. More... | |
| #define | CUDA_ERROR_CHECK(result) |
| Checks the output of a cuda call for any error, will throw a runtime error if not success. More... | |
Functions | |
| void | chrono::sensor::GetShaderFromFile (OptixDeviceContext context, OptixModule &module, const std::string &file_name, OptixModuleCompileOptions &module_compile_options, OptixPipelineCompileOptions &pipeline_compile_options) |
| launches ray generation program More... | |
| void | chrono::sensor::optix_log_callback (unsigned int level, const char *tag, const char *message, void *) |
| ByteImageData | chrono::sensor::LoadByteImage (const std::string &filename) |
| loads image to struct ByteImageData, returns an empty struct with 0 values if loading failed More... | |
| void | chrono::sensor::SetSensorShaderDir (const std::string &path) |
| const std::string & | chrono::sensor::GetSensorShaderDir () |
Macro Definition Documentation
◆ CUDA_ERROR_CHECK
| #define CUDA_ERROR_CHECK | ( | result | ) |
Value:
{ \
if (result != cudaSuccess) { \
std::string error_name = std::string(cudaGetErrorName(result)); \
std::string error_string = std::string(cudaGetErrorString(result)); \
std::string file = std::string(__FILE__); \
std::string line = std::to_string(__LINE__); \
throw std::runtime_error(error_name + ": " + error_string + " at " + file + ":" + line); \
} \
}
Checks the output of a cuda call for any error, will throw a runtime error if not success.
◆ OPTIX_ERROR_CHECK
| #define OPTIX_ERROR_CHECK | ( | result | ) |
Value:
{ \
if (result != OPTIX_SUCCESS) { \
std::string error_name = std::string(optixGetErrorName(result)); \
std::string error_string = std::string(optixGetErrorString(result)); \
std::string file = std::string(__FILE__); \
std::string line = std::to_string(__LINE__); \
throw std::runtime_error(error_name + ": " + error_string + " at " + file + ":" + line); \
} \
}
Checks the output of an optix call for any error, will throw a runtime error if not success.
Enumeration Type Documentation
◆ BackgroundMode
|
strong |
◆ CameraLensModelType
| enum CameraLensModelType |
◆ LidarBeamShape
|
strong |
◆ PipelineType
|
strong |
◆ RadarReturnMode
|
strong |
◆ RayType
| enum RayType |
Function Documentation
◆ GetShaderFromFile()
| CH_SENSOR_API void chrono::sensor::GetShaderFromFile | ( | OptixDeviceContext | context, |
| OptixModule & | module, | ||
| const std::string & | file_name, | ||
| OptixModuleCompileOptions & | module_compile_options, | ||
| OptixPipelineCompileOptions & | pipeline_compile_options | ||
| ) |
launches ray generation program
- Parameters
-
context optix device context module optix module that will be created file_name the file where the shader program is implemented module_compile_options compile options for the module pipeline_compile_options compile options for the pipeline
◆ LoadByteImage()
| CH_SENSOR_API ByteImageData chrono::sensor::LoadByteImage | ( | const std::string & | filename | ) |
loads image to struct ByteImageData, returns an empty struct with 0 values if loading failed
- Parameters
-
filename