56 template<typename Processor> static constexpr
void reflect(Processor&& RTTI) {
110 :
GPUVertexFormat(aAttributesList.begin(), aAttributesList.end(), inputSlot) {}
115 template<
typename BeginIterator,
typename EndIterator>
117 : attributes(begin, end), inputSlot(inputSlot) {
120 if(attribute.offset == 0) {
121 attribute.offset = offsetSoFar;
123 offsetSoFar = attribute.offset +
UInt32(attribute.element.getSize());
143 template<
typename Processor>
static constexpr void reflect(Processor&& RTTI) {
157template<>
struct std::hash<
CeresEngine::GPUVertexInputRate> {
#define CE_REFLECT_HASH(T)
Definition Hash.hpp:89
#define CE_REFL_DATA(N)
Definition Macros.hpp:541
#define CE_SCRIPT_EXPORT(...)
The CE_SCRIPT_EXPORT macro marks a class or method as exportable and available in scripting environme...
Definition Macros.hpp:247
#define CE_STRUCT_ENUM_DECL(T)
Definition StructEnum.hpp:49
Definition StructEnum.hpp:18
UInt32 UnderlyingType
Definition StructEnum.hpp:20
Determines how a single element should be a vertex.
Definition VertexDeclaration.hpp:153
Definition Application.hpp:19
sfl::small_vector< T, N, ScopedAllocatorAdaptor< StdAllocator< T, RawAllocator > > > SmallVector
SmallVector is a sequence container similar to Vector.
Definition SmallVector.hpp:31
std::uint32_t UInt32
Definition DataTypes.hpp:23
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
A vertex attribute represents a pair of points that can be stored inside a vertex buffer.
Definition GPUVertexFormat.hpp:29
VertexElement element
The vertex element that this vertex attribute represents.
Definition GPUVertexFormat.hpp:31
A basic vertex type.
Definition Mesh.hpp:51