.\" 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 <embree4/rtcore.h>

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]
