mirror of
https://github.com/love2d/love.git
synced 2026-08-17 11:00:31 +02:00
Avoid some hardcoded strings
This commit is contained in:
@@ -131,53 +131,53 @@ std::vector<Buffer::DataDeclaration> Buffer::getCommonFormatDeclaration(CommonFo
|
|||||||
return {};
|
return {};
|
||||||
case CommonFormat::XYf:
|
case CommonFormat::XYf:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC2}
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC2 }
|
||||||
};
|
};
|
||||||
case CommonFormat::XYZf:
|
case CommonFormat::XYZf:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC3}
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC3 }
|
||||||
};
|
};
|
||||||
case CommonFormat::RGBAub:
|
case CommonFormat::RGBAub:
|
||||||
return {
|
return {
|
||||||
{"VertexColor", DATAFORMAT_UNORM8_VEC4}
|
{ getConstant(ATTRIB_COLOR), DATAFORMAT_UNORM8_VEC4 }
|
||||||
};
|
};
|
||||||
case CommonFormat::STf_RGBAub:
|
case CommonFormat::STf_RGBAub:
|
||||||
return {
|
return {
|
||||||
{"VertexTexCoord", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexColor", DATAFORMAT_UNORM8_VEC4},
|
{ getConstant(ATTRIB_COLOR), DATAFORMAT_UNORM8_VEC4 },
|
||||||
};
|
};
|
||||||
case CommonFormat::STPf_RGBAub:
|
case CommonFormat::STPf_RGBAub:
|
||||||
return {
|
return {
|
||||||
{"VertexTexCoord", DATAFORMAT_FLOAT_VEC3},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_FLOAT_VEC3 },
|
||||||
{"VertexColor", DATAFORMAT_UNORM8_VEC4},
|
{ getConstant(ATTRIB_COLOR), DATAFORMAT_UNORM8_VEC4 },
|
||||||
};
|
};
|
||||||
case CommonFormat::XYf_STf:
|
case CommonFormat::XYf_STf:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexTexCoord", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_FLOAT_VEC2 },
|
||||||
};
|
};
|
||||||
case CommonFormat::XYf_STPf:
|
case CommonFormat::XYf_STPf:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexTexCoord", DATAFORMAT_FLOAT_VEC3},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_FLOAT_VEC3 },
|
||||||
};
|
};
|
||||||
case CommonFormat::XYf_STf_RGBAub:
|
case CommonFormat::XYf_STf_RGBAub:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexTexCoord", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexColor", DATAFORMAT_UNORM8_VEC4},
|
{ getConstant(ATTRIB_COLOR), DATAFORMAT_UNORM8_VEC4 },
|
||||||
};
|
};
|
||||||
case CommonFormat::XYf_STus_RGBAub:
|
case CommonFormat::XYf_STus_RGBAub:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexTexCoord", DATAFORMAT_UNORM16_VEC2},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_UNORM16_VEC2 },
|
||||||
{"VertexColor", DATAFORMAT_UNORM8_VEC4},
|
{ getConstant(ATTRIB_COLOR), DATAFORMAT_UNORM8_VEC4 },
|
||||||
};
|
};
|
||||||
case CommonFormat::XYf_STPf_RGBAub:
|
case CommonFormat::XYf_STPf_RGBAub:
|
||||||
return {
|
return {
|
||||||
{"VertexPosition", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_POS), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexTexCoord", DATAFORMAT_FLOAT_VEC2},
|
{ getConstant(ATTRIB_TEXCOORD), DATAFORMAT_FLOAT_VEC2 },
|
||||||
{"VertexColor", DATAFORMAT_UNORM8_VEC4},
|
{ getConstant(ATTRIB_COLOR), DATAFORMAT_UNORM8_VEC4 },
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -320,6 +320,13 @@ DEFINE_STRINGMAP_BEGIN(BuiltinVertexAttribute, ATTRIB_MAX_ENUM, attribName)
|
|||||||
}
|
}
|
||||||
DEFINE_STRINGMAP_END(BuiltinVertexAttribute, ATTRIB_MAX_ENUM, attribName)
|
DEFINE_STRINGMAP_END(BuiltinVertexAttribute, ATTRIB_MAX_ENUM, attribName)
|
||||||
|
|
||||||
|
const char *getConstant(BuiltinVertexAttribute attrib)
|
||||||
|
{
|
||||||
|
const char *name = nullptr;
|
||||||
|
getConstant(attrib, name);
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
DEFINE_STRINGMAP_BEGIN(IndexDataType, INDEX_MAX_ENUM, indexType)
|
DEFINE_STRINGMAP_BEGIN(IndexDataType, INDEX_MAX_ENUM, indexType)
|
||||||
{
|
{
|
||||||
{ "uint16", INDEX_UINT16 },
|
{ "uint16", INDEX_UINT16 },
|
||||||
|
|||||||
@@ -393,5 +393,7 @@ DECLARE_STRINGMAP(DataBaseType);
|
|||||||
DECLARE_STRINGMAP(CullMode);
|
DECLARE_STRINGMAP(CullMode);
|
||||||
DECLARE_STRINGMAP(Winding);
|
DECLARE_STRINGMAP(Winding);
|
||||||
|
|
||||||
|
const char *getConstant(BuiltinVertexAttribute attrib);
|
||||||
|
|
||||||
} // graphics
|
} // graphics
|
||||||
} // love
|
} // love
|
||||||
|
|||||||
Reference in New Issue
Block a user