rtcIntersectNp.3embree3 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. .TH "rtcIntersectNp" "3" "" "" "Embree Ray Tracing Kernels 3"
  2. .SS NAME
  3. .IP
  4. .nf
  5. \f[C]
  6. rtcIntersectNp\ \-\ finds\ the\ closest\ hits\ for\ a\ SOA\ ray\ stream\ of
  7. \ \ size\ N
  8. \f[]
  9. .fi
  10. .SS SYNOPSIS
  11. .IP
  12. .nf
  13. \f[C]
  14. #include\ <embree3/rtcore.h>
  15. void\ rtcIntersectNp(
  16. \ \ RTCScene\ scene,
  17. \ \ struct\ RTCIntersectContext*\ context,
  18. \ \ struct\ RTCRayHitNp*\ rayhit,
  19. \ \ unsigned\ int\ N
  20. );
  21. \f[]
  22. .fi
  23. .SS DESCRIPTION
  24. .PP
  25. The \f[C]rtcIntersectNp\f[] function finds the closest hits for a SOA
  26. ray stream (\f[C]rays\f[] argument) of size \f[C]N\f[] (basically a
  27. large ray packet) with the scene (\f[C]scene\f[] argument).
  28. The \f[C]rayhit\f[] argument points to two structures of pointers with
  29. one pointer for each ray and hit component.
  30. Each of these pointers points to an array with the ray or hit component
  31. data for each ray or hit.
  32. This way the individual components of the SOA ray stream do not need to
  33. be stored sequentially in memory, which makes it possible to have large
  34. varying size ray packets in SOA layout.
  35. See Section [rtcIntersect1] for a description of how to set up and trace
  36. rays.
  37. .IP
  38. .nf
  39. \f[C]
  40. \f[]
  41. .fi
  42. .IP
  43. .nf
  44. \f[C]
  45. \f[]
  46. .fi
  47. .PP
  48. A ray in a ray stream is considered inactive if its \f[C]tnear\f[] value
  49. is larger than its \f[C]tfar\f[] value.
  50. .PP
  51. The stream size \f[C]N\f[] can be an arbitrary positive integer
  52. including 0.
  53. Each ray component array must be aligned to 16 bytes.
  54. .SS EXIT STATUS
  55. .PP
  56. For performance reasons this function does not do any error checks, thus
  57. will not set any error flags on failure.
  58. .SS SEE ALSO
  59. .PP
  60. [rtcOccludedNp]