错误 - “正在初始化”:无法从“glm::vec2”转换为“glm::vec3”

用户10714491

我正在按照本教程使用 C++ 制作 3D 游戏引擎

我正在使用 GLM,但出现标题中的错误。
我有一个自定义结构的数组。它保存位置、颜色和文本坐标。

“顶点”结构

struct Vertex {
glm::vec3 position;
glm::vec3 color;
glm::vec2 texcoord;
};

“顶点”数组:

Vertex vertices[] = {

//POSITION
glm::vec3(0.0f, 0.5f, 0.f),
glm::vec3(-0.5f, -0.5f, 0.f),
glm::vec3(0.5f, -0.5f, 0.f),

//COLOR
glm::vec3(1.f, 0.f, 0.f),
glm::vec3(0.0f, 1.f, 0.f),
glm::vec3(0.0f, 0.f, 1.f),

//TEXCOORDS
glm::vec2(0.f, 1.f),
glm::vec2(0.f, 0.f),
glm::vec2(1.f, 0.f)
};

当我在 Visual Studio 中单击错误时,它会将我带到 Vertice 数组的末尾。

我用谷歌搜索并搜索了 Stack Overflow,但我找不到这个问题的答案。如果有帮助的话,我将完整的 main.cpp 文件存储在这里

SM

您声明了数组,因此每个数组元素都必须在初始化器中进行支撑。

Vertex vertices[] = {
// First element
{
glm::vec3(0.0f, 0.5f, 0.f),  //POSITION
glm::vec3(1.f, 0.f, 0.f),  //COLOR
glm::vec2(0.f, 1.f),  // TEXTCOORD
},
// Second element
{
glm::vec3(-0.5f, -0.5f, 0.f),
glm::vec3(0.f, 1.f, 0.f),
glm::vec2(0.f, 0.f),
},
// Third element
{
glm::vec3(0.5f, -0.5f, 0.f),
glm::vec3(0.f, 0.f, 1.f),
glm::vec2(1.f, 0.f)
}
};


本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

glm :: vec3和epsilon比较

查找 glm::vec3 数组的大小

如何使用Boost序列化glm :: vec3

使用glm将vec3与mat4乘以

来自vec3的GLM制作旋转矩阵

返回glm :: vec3 x值返回null

如何在float和vec4,vec3,vec2之间转换?

GLM:将 vec3 乘以 3x3 平移矩阵会产生奇怪的结果

将 vec3 传递给 glm::lookAt 似乎可以修改它

从类型为float的std :: vector <glm :: vec3>获取数组指针

如何将boost :: geometry :: rtree与glm :: vec3用作自定义点类型?

在Angelscript中注册基于glm :: vec3的值类型的赋值运算符

我的C ++ glm :: vec3数组由于某种原因似乎重置为null

在带有ReSharper的VS中使用glm :: vec3时出现“不完整类型”警告

错误C2440:“正在初始化”:无法从“ CTable”转换为“ CTable”

如何解决错误 C2440“正在初始化”:无法从“_Ty”转换为“_Objty”

OpenGL ES 2.0:glVertexAttribPointer 与 vec3

Cuda 推力 - 最大 vec3

使用glUniformMatrix2fv传递glm :: vec2类型时出现DEBUG_TYPE_ERROR

着色器位置vec4或vec3

错误C2440:'正在初始化':无法从'初始化列表'转换为'std :: vector <char *,std :: allocator <_Ty >>'

我如何将glm :: vec3(1.f,0.f,0.f)设置为枚举的值?

C ++错误C2440:“正在初始化”:无法从“类名”转换为“相同的类名”

将 Cannon.js Body 添加到 Three.js Mesh 导致 Vec3 错误与组和多个形状

将vec3与模型矩阵相乘的问题(缩放问题)

犰狳如何获取vec3的平均值

尝试在构造函数中的`glm :: cross`上初始化我的类段错误

const转发参考给出错误C2440:“正在初始化”:无法从“ const std :: string”转换为“ const std :: string &&”

mex编译错误C2440:“正在初始化”:无法从“ const mwSize *”转换为“ const int32_t *”