rtcIntersect1Mp(3)

πŸ“¦ version 3.13.5, in epel 9, fedora 43, fedora 44

✨ rtcIntersect1Mp(3) ✨

okay so bestie, welcome to the Embree Ray Tracing Kernels 3 manual page for rtcIntersect1Mp, and lemme tell you, this one is giving pointer stream energy πŸ¦‹


🌸 NAME 🌸

rtcIntersect1Mp β€” finds the closest hits for a stream of M pointers to single rays πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

#include <embree3/rtcore.h>

void rtcIntersect1Mp(
  RTCScene scene,
  struct RTCIntersectContext* context,
  struct RTCRayHit** rayhit,
  unsigned int M
);

πŸ’– DESCRIPTION πŸ’–

So the rtcIntersect1Mp function is literally out here finding the closest hits for a stream of M single rays (that's the rayhit argument, bestie) against the scene (the scene argument, duh). The rayhit argument points to an array of pointers to the individual ray/hit structures. And if you're sitting there like "okay but how do I even set up and trace a ray" β€” go read Section [rtcIntersect1], it's all there, iykyk πŸ“–βœ¨

Now, the vibe check: a ray in a ray stream is considered inactive if its tnear value is larger than its tfar value. That's just how it is 🫢

The stream size M can be an arbitrary positive integer including 0 β€” yes, zero, we love a flexible queen πŸ‘‘. And every single ray must be aligned to 16 bytes. Not optional. Align your rays, bestie, no cap πŸ’…


😭 EXIT STATUS 😭

okay so for performance reasons this function does not do any error checks, which means it will not set any error flags on failure. It's giving "I'm fast and I'm not sorry" πŸ’€


🌈 SEE ALSO 🌈

  • [rtcOccluded1Mp]

and that's the whole page, periodt πŸ’– This was rtcIntersect1Mp(3) from the Embree Ray Tracing Kernels 3 β€” go forth and trace, you absolute icon πŸ§šβœ¨πŸ¦‹

πŸ“¦ where this page comes from