1RTCHit(3) Embree Ray Tracing Kernels 3 RTCHit(3)
2
3
4
5 NAME
6 RTCHit - single hit structure
7
8 SYNOPSIS
9 #include <embree3/rtcore.h>
10
11 struct RTCHit
12 {
13 float Ng_x; // x coordinate of geometry normal
14 float Ng_y; // y coordinate of geometry normal
15 float Ng_z; // z coordinate of geometry normal
16
17 float u; // barycentric u coordinate of hit
18 float v; // barycentric v coordinate of hit
19
20 unsigned int primID; // geometry ID
21 unsigned int geomID; // primitive ID
22 unsigned int instID[RTC_MAX_INSTANCE_LEVEL_COUNT]; // instance ID
23 };
24
25 DESCRIPTION
26 The RTCHit type defines the type of a ray/primitive intersection re‐
27 sult. The hit contains the unnormalized geometric normal in object
28 space at the hit location (Ng_x, Ng_y, Ng_z members), the barycentric
29 u/v coordinates of the hit (u and v members), as well as the primitive
30 ID (primID member), geometry ID (geomID member), and instance ID stack
31 (instID member) of the hit. The parametric intersection distance is
32 not stored inside the hit, but stored inside the tfar member of the
33 ray.
34
35 The embree3/rtcore_ray.h header additionally defines the same hit
36 structure in structure of array (SOA) layout for hit packets of size 4
37 (RTCHit4 type), size 8 (RTCHit8 type), and size 16 (RTCHit16 type).
38 The header additionally defines an RTCHitNt template for hit packets of
39 an arbitrary compile-time size.
40
41 EXIT STATUS
42 SEE ALSO
43 [RTCRay], [Multi-Level Instancing]
44
45
46
47 RTCHit(3)