External Custom Primitives
HOOPS Luminate’s software rendering architecture lets you add other types of primitives to the intersection process used during the rendering. These are custom external primitives. These primitives may be of any type that can be managed by the application: analytical shapes, nurbs, subdivision surfaces, voxel grids, etc…
Setting up Custom Ray Processing Callbacks
Custom intersection callbacks are defined at the viewpoint render list level using RED::IViewpointRenderList::SetViewpointSoftRayProcessingCallbacks
. There are two callbacks to specify:
- The
RED::SOFT_RAY_PROCESSING_INTERSECTION_CALLBACK
in charge of the intersection with the custom geometry.- The
RED::SOFT_RAY_PROCESSING_SHADING_CALLBACK
in charge of returning material and shading informations needed by HOOPS Luminate for the hit custom primitive.