.\" Automatically generated by Pandoc 1.17.0.3 .\" .TH "RTCBufferType" "3" "" "" "Embree Ray Tracing Kernels 3" .hy .SS NAME .IP .nf \f[C] RTCFormat\ \-\ specifies\ format\ of\ data\ in\ buffers \f[] .fi .SS SYNOPSIS .IP .nf \f[C] #include\ enum\ RTCBufferType { \ \ RTC_BUFFER_TYPE_INDEX\ \ \ \ \ \ \ \ \ \ \ \ =\ 0, \ \ RTC_BUFFER_TYPE_VERTEX\ \ \ \ \ \ \ \ \ \ \ =\ 1, \ \ RTC_BUFFER_TYPE_VERTEX_ATTRIBUTE\ =\ 2, \ \ RTC_BUFFER_TYPE_NORMAL\ \ \ \ \ \ \ \ \ \ \ =\ 3, \ \ RTC_BUFFER_TYPE_TANGENT\ \ \ \ \ \ \ \ \ \ =\ 4, \ \ RTC_BUFFER_TYPE_NORMAL_DERIVATIVE\ =\ 5, \ \ RTC_BUFFER_TYPE_GRID\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\ 8, \ \ RTC_BUFFER_TYPE_FACE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\ 16, \ \ RTC_BUFFER_TYPE_LEVEL\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\ 17, \ \ RTC_BUFFER_TYPE_EDGE_CREASE_INDEX\ \ \ \ =\ 18, \ \ RTC_BUFFER_TYPE_EDGE_CREASE_WEIGHT\ \ \ =\ 19, \ \ RTC_BUFFER_TYPE_VERTEX_CREASE_INDEX\ \ =\ 20, \ \ RTC_BUFFER_TYPE_VERTEX_CREASE_WEIGHT\ =\ 21, \ \ RTC_BUFFER_TYPE_HOLE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\ 22, \ \ RTC_BUFFER_TYPE_FLAGS\ =\ 32 }; \f[] .fi .SS DESCRIPTION .PP The \f[C]RTBufferType\f[] structure defines slots to assign data buffers to using the [rtcSetGeometryBuffer], [rtcSetSharedGeometryBuffer], and [rtcSetNewGeometryBuffer] API calls. .PP For most geometry types the \f[C]RTC_BUFFER_TYPE_INDEX\f[] slot is used to assign an index buffer, while the \f[C]RTC_BUFFER_TYPE_VERTEX\f[] is used to assign the corresponding vertex buffer. .PP The \f[C]RTC_BUFFER_TYPE_VERTEX_ATTRIBUTE\f[] slot can get used to assign arbitrary additional vertex data which can get interpolated using the [rtcInterpolate] API call. .PP The \f[C]RTC_BUFFER_TYPE_NORMAL\f[], \f[C]RTC_BUFFER_TYPE_TANGENT\f[], and \f[C]RTC_BUFFER_TYPE_NORMAL_DERIVATIVE\f[] are special buffers required to assign per vertex normals, tangents, and normal derivatives for some curve types. .PP The \f[C]RTC_BUFFER_TYPE_GRID\f[] buffer is used to assign the grid primitive buffer for grid geometries (see [RTC_GEOMETRY_TYPE_GRID]). .PP The \f[C]RTC_BUFFER_TYPE_FACE\f[], \f[C]RTC_BUFFER_TYPE_LEVEL\f[], \f[C]RTC_BUFFER_TYPE_EDGE_CREASE_INDEX\f[], \f[C]RTC_BUFFER_TYPE_EDGE_CREASE_WEIGHT\f[], \f[C]RTC_BUFFER_TYPE_VERTEX_CREASE_INDEX\f[], \f[C]RTC_BUFFER_TYPE_VERTEX_CREASE_WEIGHT\f[], and \f[C]RTC_BUFFER_TYPE_HOLE\f[] are special buffers required to create subdivision meshes (see [RTC_GEOMETRY_TYPE_SUBDIVISION]). .PP The \f[C]RTC_BUFFER_TYPE_FLAGS\f[] can get used to add additional flag per primitive of a geometry, and is currently only used for linear curves. .SS EXIT STATUS .SS SEE ALSO .PP [rtcSetGeometryBuffer], [rtcSetSharedGeometryBuffer], [rtcSetNewGeometryBuffer]