.\" Automatically generated by Pandoc 2.5
.\"
.TH "rtcAttachGeometryByID" "3" "" "" "Embree Ray Tracing Kernels 3"
.hy
.SS NAME
.IP
.nf
\f[C]
rtcAttachGeometryByID \- attaches a geometry to the scene
  using a specified geometry ID
\f[R]
.fi
.SS SYNOPSIS
.IP
.nf
\f[C]
#include <embree3/rtcore.h>

void rtcAttachGeometryByID(
  RTCScene scene,
  RTCGeometry geometry,
  unsigned int geomID
);
\f[R]
.fi
.SS DESCRIPTION
.PP
The \f[C]rtcAttachGeometryByID\f[R] function attaches a geometry
(\f[C]geometry\f[R] argument) to a scene (\f[C]scene\f[R] argument) and
assigns a user provided geometry ID (\f[C]geomID\f[R] argument) to that
geometry.
All geometries attached to a scene are defined to be included inside the
scene.
A geometry can get attached to multiple scenes.
The passed user\-defined geometry ID is used to identify the geometry
when hit by a ray during ray queries.
Using this function, it is possible to share the same IDs to refer to
geometries inside the application and Embree.
.PP
This function is thread\-safe, thus multiple threads can attach
geometries to a scene in parallel.
.PP
The user\-provided geometry ID must be unused in the scene, otherwise
the creation of the geometry will fail.
Further, the user\-provided geometry IDs should be compact, as Embree
internally creates a vector which size is equal to the largest geometry
ID used.
Creating very large geometry IDs for small scenes would thus cause a
memory consumption and performance overhead.
.SS EXIT STATUS
.PP
On failure an error code is set that can be queried using
\f[C]rtcGetDeviceError\f[R].
.SS SEE ALSO
.PP
[rtcAttachGeometry]
