mirror of
https://github.com/love2d/love.git
synced 2026-08-17 11:00:31 +02:00
Cleaned up some vertex data-related code.
--HG-- branch : minor
This commit is contained in:
@@ -67,6 +67,23 @@ enum IndexDataType
|
||||
INDEX_MAX_ENUM
|
||||
};
|
||||
|
||||
// http://escience.anu.edu.au/lecture/cg/surfaceModeling/image/surfaceModeling015.png
|
||||
enum PrimitiveType
|
||||
{
|
||||
PRIMITIVE_TRIANGLES,
|
||||
PRIMITIVE_TRIANGLE_STRIP,
|
||||
PRIMITIVE_TRIANGLE_FAN,
|
||||
PRIMITIVE_POINTS,
|
||||
PRIMITIVE_MAX_ENUM
|
||||
};
|
||||
|
||||
enum AttributeStep
|
||||
{
|
||||
STEP_PER_VERTEX,
|
||||
STEP_PER_INSTANCE,
|
||||
STEP_MAX_ENUM
|
||||
};
|
||||
|
||||
namespace vertex
|
||||
{
|
||||
|
||||
@@ -79,10 +96,12 @@ enum Usage
|
||||
USAGE_MAX_ENUM
|
||||
};
|
||||
|
||||
enum class PrimitiveMode
|
||||
enum DataType
|
||||
{
|
||||
TRIANGLES,
|
||||
POINTS,
|
||||
DATA_UNORM8,
|
||||
DATA_UNORM16,
|
||||
DATA_FLOAT,
|
||||
DATA_MAX_ENUM
|
||||
};
|
||||
|
||||
enum class TriangleIndexMode
|
||||
@@ -165,6 +184,7 @@ inline CommonFormat getSinglePositionFormat(bool is2D)
|
||||
}
|
||||
|
||||
size_t getIndexDataSize(IndexDataType type);
|
||||
size_t getDataTypeSize(DataType datatype);
|
||||
|
||||
IndexDataType getIndexDataTypeFromMax(size_t maxvalue);
|
||||
|
||||
@@ -184,6 +204,18 @@ bool getConstant(const char *in, Usage &out);
|
||||
bool getConstant(Usage in, const char *&out);
|
||||
std::vector<std::string> getConstants(Usage);
|
||||
|
||||
bool getConstant(const char *in, PrimitiveType &out);
|
||||
bool getConstant(PrimitiveType in, const char *&out);
|
||||
std::vector<std::string> getConstants(PrimitiveType);
|
||||
|
||||
bool getConstant(const char *in, AttributeStep &out);
|
||||
bool getConstant(AttributeStep in, const char *&out);
|
||||
std::vector<std::string> getConstants(AttributeStep);
|
||||
|
||||
bool getConstant(const char *in, DataType &out);
|
||||
bool getConstant(DataType in, const char *&out);
|
||||
std::vector<std::string> getConstants(DataType);
|
||||
|
||||
} // vertex
|
||||
|
||||
typedef vertex::XYf_STf_RGBAub Vertex;
|
||||
|
||||
Reference in New Issue
Block a user