.\" Automatically generated by Pandoc 2.9.2.1 .\" .TH "rtcSetGeometryOccludedFilterFunction" "3" "" "" "Embree Ray Tracing Kernels 4" .hy .SS NAME .IP .nf \f[C] rtcSetGeometryOccludedFilterFunction - sets the occlusion filter for the geometry \f[R] .fi .SS SYNOPSIS .IP .nf \f[C] #include void rtcSetGeometryOccludedFilterFunction( RTCGeometry geometry, RTCFilterFunctionN filter ); \f[R] .fi .SS DESCRIPTION .PP The \f[C]rtcSetGeometryOccludedFilterFunction\f[R] function registers an occlusion filter callback function (\f[C]filter\f[R] argument) for the specified geometry (\f[C]geometry\f[R] argument). .PP Only a single callback function can be registered per geometry, and further invocations overwrite the previously set callback function. Passing \f[C]NULL\f[R] as function pointer disables the registered callback function. .PP The registered occlusion filter function is invoked for every hit encountered during the \f[C]rtcOccluded\f[R]-type ray queries and can accept or reject that hit. The feature can be used to define a silhouette for a primitive and reject hits that are outside the silhouette. E.g. a tree leaf could be modeled with an alpha texture that decides whether hit points lie inside or outside the leaf. .PP Please see the description of the \f[C]rtcSetGeometryIntersectFilterFunction\f[R] for a description of the filter callback function. .PP The \f[C]rtcOccluded\f[R]-type functions terminate traversal when a hit got committed. As filter functions can only set the \f[C]tfar\f[R] distance of the ray for a committed hit, the occlusion filter cannot influence the \f[C]tfar\f[R] value of subsequent traversal, as that directly ends. For that reason \f[C]rtcOccluded\f[R] and occlusion filters cannot get used to gather the next n-hits, and \f[C]rtcIntersect\f[R] and intersection filters should get used instead. .SS EXIT STATUS .PP On failure an error code is set that can be queried using \f[C]rtcGetDeviceError\f[R]. .SS SEE ALSO .PP [rtcSetGeometryIntersectFilterFunction]