CudaModule Service

May 15, 2026 ยท View on GitHub

Back to Service index

CudaModule provides CUDA and OptiX-based acceleration for specialized rendering, ray tracing, illumination estimation, point cloud scanning, and related workflows.

Build Status

  • Present in EvoEngine_Services/CudaModule.
  • Disabled by default through ServiceInfo.cmake.
  • If registered, its CMake requires CUDA and OptiX; the Service returns early when either is unavailable.
  • Builds as CudaModuleService.
  • Defines CUDA_MODULE_SERVICE.

Main Responsibilities

  • OptiX ray tracing infrastructure.
  • CUDA buffer and math utilities.
  • Camera rendering PTX.
  • Illumination estimation PTX.
  • Point cloud scanning PTX.
  • Vulkan/CUDA interop support.
  • Ray tracer layer and camera abstractions.
  • BTF material/rendering support.
  • Light probe and triangle illumination helpers.

Main Entry Points

SourceRole
RayTracerLayerLayer for CUDA/OptiX ray tracing workflows.
OptiXRayTracerOptiX tracing implementation.
CUDAModuleCUDA module support code.
RayTracerCameraCamera abstraction for ray tracing.
BasicPointCloudScannerUtility for CUDA-assisted point cloud scanning.
TriangleIlluminationEstimatorIllumination estimation helper.
BtfMaterial / BtfMeshRendererBTF material/rendering support.

SDK Integration

CudaModule plugs into layers, rendering, camera workflows, point cloud generation, and optional DigitalAgriculture illumination tools. Other code checks CUDA_MODULE_SERVICE before using these APIs.

Future Work Notes

Treat this Service as optional. Code outside the Service should compile without CUDA/OptiX and should guard CUDA-specific includes and registration with CUDA_MODULE_SERVICE.