Files
embree/man/man3/RTCBufferType.3embree4
T

80 lines
2.7 KiB
Plaintext

.\" Automatically generated by Pandoc 3.1.11.1
.\"
.TH "RTCBufferType" "3" "" "" "Embree Ray Tracing Kernels 4"
.SS NAME
.IP
.EX
RTCFormat \- specifies format of data in buffers
.EE
.SS SYNOPSIS
.IP
.EX
#include <embree4/rtcore_ray.h>
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_TRANSFORM = 23,
RTC_BUFFER_TYPE_FLAGS = 32
};
.EE
.SS DESCRIPTION
The \f[CR]RTBufferType\f[R] structure defines slots to assign data
buffers to using the [rtcSetGeometryBuffer],
[rtcSetSharedGeometryBuffer], and [rtcSetNewGeometryBuffer] API calls.
.PP
For most geometry types the \f[CR]RTC_BUFFER_TYPE_INDEX\f[R] slot is
used to assign an index buffer, while the
\f[CR]RTC_BUFFER_TYPE_VERTEX\f[R] is used to assign the corresponding
vertex buffer.
.PP
The \f[CR]RTC_BUFFER_TYPE_VERTEX_ATTRIBUTE\f[R] slot can get used to
assign arbitrary additional vertex data which can get interpolated using
the [rtcInterpolate] API call.
.PP
The \f[CR]RTC_BUFFER_TYPE_NORMAL\f[R],
\f[CR]RTC_BUFFER_TYPE_TANGENT\f[R], and
\f[CR]RTC_BUFFER_TYPE_NORMAL_DERIVATIVE\f[R] are special buffers
required to assign per vertex normals, tangents, and normal derivatives
for some curve types.
.PP
The \f[CR]RTC_BUFFER_TYPE_GRID\f[R] buffer is used to assign the grid
primitive buffer for grid geometries (see [RTC_GEOMETRY_TYPE_GRID]).
.PP
The \f[CR]RTC_BUFFER_TYPE_FACE\f[R], \f[CR]RTC_BUFFER_TYPE_LEVEL\f[R],
\f[CR]RTC_BUFFER_TYPE_EDGE_CREASE_INDEX\f[R],
\f[CR]RTC_BUFFER_TYPE_EDGE_CREASE_WEIGHT\f[R],
\f[CR]RTC_BUFFER_TYPE_VERTEX_CREASE_INDEX\f[R],
\f[CR]RTC_BUFFER_TYPE_VERTEX_CREASE_WEIGHT\f[R], and
\f[CR]RTC_BUFFER_TYPE_HOLE\f[R] are special buffers required to create
subdivision meshes (see [RTC_GEOMETRY_TYPE_SUBDIVISION]).
.PP
The \f[CR]RTC_BUFFER_TYPE_TRANSFORM\f[R] buffer is used to provide
instance transformation information for instance array geometries (see
[RTC_GEOMETRY_TYPE_INSTANCE_ARRAY]).
.PP
The \f[CR]RTC_BUFFER_TYPE_FLAGS\f[R] 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
[rtcSetGeometryBuffer], [rtcSetSharedGeometryBuffer],
[rtcSetNewGeometryBuffer]