Я хочу иметь enum, который содержит glm :: vec3 "constants".
В настоящее время у меня есть enum под названием "Axis", который содержит X, Y и Z. И каждый раз, когда я их использую, у меня естьчтобы отобразить их с помощью регистра переключателя в glm :: vec3 с соответствующими значениями.
Это мое перечисление Axis:
enum Axis
{
X,
Y,
Z
};
Вот как я сейчас конвертирую его в glm :: vec3:
glm::vec3 angleVector;
switch (axis)
{
case X:
angleVector = glm::vec3(1.0f, 0.0f, 0.0f);
break;
case Y:
angleVector = glm::vec3(0.0f, 1.0f, 0.0f);
break;
case Z:
angleVector = glm::vec3(0.0f, 0.0f, 1.0f);
break;
}
И вот как я хочу использовать это вместо:
enum Axis
{
X = glm::vec3(1.0f, 0.0f, 0.0f),
Y = glm::vec3(0.0f, 1.0f, 0.0f),
Z = glm::vec3(0.0f, 0.0f, 1.0f)
};
Я много чего пробовал, чтобы получить glm :: vec3 (1.0f, 0.0f, 0.0f) как константа, которую мое перечисление принимает, но ничего не работает.
(
вот так:
static const glm::vec3 vec3x = glm::vec3(1.0f, 0.0f, 0.0f);
, а затем:
enum Axis
{
X = vec3x
};
)
Надеюсь, вы мне там поможете.Спасибо
Если это может быть репост, извините, я искал, но ничего не нашел.