| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- .TH "RTCRayN" "3" "" "" "Embree Ray Tracing Kernels 3"
- .SS NAME
- .IP
- .nf
- \f[C]
- RTCRayN\ \-\ ray\ packet\ of\ runtime\ size
- \f[]
- .fi
- .SS SYNOPSIS
- .IP
- .nf
- \f[C]
- #include\ <embree3/rtcore_ray.h>
- struct\ RTCRayN;
- float&\ RTCRayN_org_x(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_org_y(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_org_z(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_tnear(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_dir_x(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_dir_y(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_dir_z(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ RTCRayN_time\ (RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- float&\ \ \ \ \ \ \ \ RTCRayN_tfar\ (RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- unsigned\ int&\ RTCRayN_mask\ (RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- unsigned\ int&\ RTCRayN_id\ \ \ (RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- unsigned\ int&\ RTCRayN_flags(RTCRayN*\ ray,\ unsigned\ int\ N,\ unsigned\ int\ i);
- \f[]
- .fi
- .SS DESCRIPTION
- .PP
- When the ray packet size is not known at compile time (e.g.
- when Embree returns a ray packet in the \f[C]RTCFilterFuncN\f[] callback
- function), Embree uses the \f[C]RTCRayN\f[] type for ray packets.
- These ray packets can only have sizes of 1, 4, 8, or 16.
- No other packet size will be used.
- .PP
- You can either implement different special code paths for each of these
- possible packet sizes and cast the ray to the appropriate ray packet
- type, or implement one general code path that uses the
- \f[C]RTCRayN_XXX\f[] helper functions to access the ray packet
- components.
- .PP
- These helper functions get a pointer to the ray packet (\f[C]ray\f[]
- argument), the packet size (\f[C]N\f[] argument), and returns a
- reference to a component (e.g.
- x\-component of origin) of the the i\-th ray of the packet (\f[C]i\f[]
- argument).
- .SS EXIT STATUS
- .SS SEE ALSO
- .PP
- [RTCHitN]
|