rtcSetGeometryMask.3embree3 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. .TH "rtcSetGeometryMask" "3" "" "" "Embree Ray Tracing Kernels 3"
  2. .SS NAME
  3. .IP
  4. .nf
  5. \f[C]
  6. rtcSetGeometryMask\ \-\ sets\ the\ geometry\ mask
  7. \f[]
  8. .fi
  9. .SS SYNOPSIS
  10. .IP
  11. .nf
  12. \f[C]
  13. #include\ <embree3/rtcore.h>
  14. void\ rtcSetGeometryMask(
  15. \ \ RTCGeometry\ geometry,
  16. \ \ unsigned\ int\ mask
  17. );
  18. \f[]
  19. .fi
  20. .SS DESCRIPTION
  21. .PP
  22. The \f[C]rtcSetGeometryMask\f[] function sets a 32\-bit geometry mask
  23. (\f[C]mask\f[] argument) for the specified geometry (\f[C]geometry\f[]
  24. argument).
  25. .PP
  26. This geometry mask is used together with the ray mask stored inside the
  27. \f[C]mask\f[] field of the ray.
  28. The primitives of the geometry are hit by the ray only if the bitwise
  29. \f[C]and\f[] operation of the geometry mask with the ray mask is not 0.
  30. This feature can be used to disable selected geometries for specifically
  31. tagged rays, e.g.
  32. to disable shadow casting for certain geometries.
  33. .PP
  34. Ray masks are disabled in Embree by default at compile time, and can be
  35. enabled through the \f[C]EMBREE_RAY_MASK\f[] parameter in CMake.
  36. One can query whether ray masks are enabled by querying the
  37. \f[C]RTC_DEVICE_PROPERTY_RAY_MASK_SUPPORTED\f[] device property using
  38. \f[C]rtcGetDeviceProperty\f[].
  39. .SS EXIT STATUS
  40. .PP
  41. On failure an error code is set that can be queried using
  42. \f[C]rtcGetDeviceError\f[].
  43. .SS SEE ALSO
  44. .PP
  45. [RTCRay], [rtcGetDeviceProperty]