template<size_t Dimensions>
stim::mesh_vertices_channel_description struct

Initialization parameters for a multi-scalar channel of mesh vertex data.

Template parameters
Dimensions The number of dimensions (scalars) in the mesh vertex channel.

Public static variables

static size_t dimensions constexpr
The number of dimensions (scalars) in the vertex channel.

Constructors, destructors, conversion operators

mesh_vertices_channel_description() defaulted noexcept
Default constructor. Does not initialize the members.
mesh_vertices_channel_description(const mesh_vertices_channel_description&) defaulted constexpr noexcept
Copy constructor.
template<typename X>
mesh_vertices_channel_description(const X* x, bytes_between_vertices = sizeof(X)*dimensions) constexpr noexcept
Pointer-to-first-scalar constructor.
template<typename T>
mesh_vertices_channel_description(const vector<T, Dimensions>* vecs) constexpr noexcept
Pointer-to-vectors constructor.
template<typename X, typename Y>
mesh_vertices_channel_description(const X* x, const Y* y) constexpr noexcept
Componentwise/SoA constructor.
template<typename X, typename Y, typename Z>
mesh_vertices_channel_description(const X* x, const Y* y, const Z* z) constexpr noexcept
Componentwise/SoA constructor.
template<typename X, typename Y, typename Z, typename W>
mesh_vertices_channel_description(const X* x, const Y* y, const Z* z, const W* w) constexpr noexcept
Componentwise/SoA constructor.
template<typename T, size_t Ex>
mesh_vertices_channel_description(const span<T, Ex>& vals) constexpr noexcept
Span constructor.
operator bool() const explicit constexpr noexcept
Returns true if the fields of this description are sufficient to describe a mesh vertex channel.

Public functions

auto operator=(const mesh_vertices_channel_description&) -> mesh_vertices_channel_description& defaulted noexcept
Copy-assignment operator.
auto operator[](size_t idx) -> mesh_vertices_scalar_description& noexcept
Scalar subscript operator.
auto operator[](size_t idx) const -> constmesh_vertices_scalar_description& constexpr noexcept
Scalar subscript operator.

Public variables

mesh_vertices_scalar_description scalars
The vertex channel's scalar values.

Compatibility with UE4

template<typename T, typename Alloc>
mesh_vertices_channel_description(const ::TArray<T, Alloc>& arr) noexcept
TArray constructor.
template<typename T, typename SizeType>
mesh_vertices_channel_description(const ::TArrayView<T, SizeType>& view) noexcept
TArrayView constructor.
mesh_vertices_channel_description(const FVector2D* vecs) noexcept
Pointer-to-2D-vectors constructor.
mesh_vertices_channel_description(const FVector* vecs) noexcept
Pointer-to-3D-vectors constructor.
mesh_vertices_channel_description(const FVector4* vecs) noexcept
Pointer-to-4D-vectors constructor.
mesh_vertices_channel_description(const FPositionVertexBuffer&) noexcept
Initializes the description from a UE4 position vertex buffer.
mesh_vertices_channel_description(const FStaticMeshVertexBuffer&) noexcept
Initializes the description from the UVs or Normals component of a UE4 static mesh vertex buffer.

Friends

auto operator!=(const mesh_vertices_channel_description& lhs, const mesh_vertices_channel_description& rhs) -> bool constexpr noexcept
Returns true if two descriptions do not describe the same mesh vertex channel.
auto operator==(const mesh_vertices_channel_description& lhs, const mesh_vertices_channel_description& rhs) -> bool constexpr noexcept
Returns true if two descriptions describe the same mesh vertex channel.

Function documentation

template<size_t Dimensions>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description() defaulted noexcept

Default constructor. Does not initialize the members.

template<size_t Dimensions>
template<typename X>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const X* x, bytes_between_vertices = sizeof(X)*dimensions) constexpr noexcept

Pointer-to-first-scalar constructor.

template<size_t Dimensions>
template<typename X, typename Y>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const X* x, const Y* y) constexpr noexcept

Componentwise/SoA constructor.

template<size_t Dimensions>
template<typename X, typename Y, typename Z>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const X* x, const Y* y, const Z* z) constexpr noexcept

Componentwise/SoA constructor.

template<size_t Dimensions>
template<typename X, typename Y, typename Z, typename W>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const X* x, const Y* y, const Z* z, const W* w) constexpr noexcept

Componentwise/SoA constructor.

template<size_t Dimensions>
template<typename T, typename Alloc>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const ::TArray<T, Alloc>& arr) noexcept

TArray constructor.

template<size_t Dimensions>
template<typename T, typename SizeType>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const ::TArrayView<T, SizeType>& view) noexcept

TArrayView constructor.

template<size_t Dimensions>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const FVector2D* vecs) noexcept

Pointer-to-2D-vectors constructor.

template<size_t Dimensions>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const FVector* vecs) noexcept

Pointer-to-3D-vectors constructor.

template<size_t Dimensions>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const FVector4* vecs) noexcept

Pointer-to-4D-vectors constructor.

template<size_t Dimensions>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const FPositionVertexBuffer&) noexcept

Initializes the description from a UE4 position vertex buffer.

template<size_t Dimensions>
stim::mesh_vertices_channel_description<Dimensions>::mesh_vertices_channel_description(const FStaticMeshVertexBuffer&) noexcept

Initializes the description from the UVs or Normals component of a UE4 static mesh vertex buffer.

Variable documentation

template<size_t Dimensions>
mesh_vertices_scalar_description stim::mesh_vertices_channel_description<Dimensions>::scalars

The vertex channel's scalar values.