使用同一性矩阵的坐标将不起作用[重复]

问题描述 投票:2回答:1
基本上,我为顶点着色器提供了一个idenify矩阵,由于某种原因,它不起作用。

这是我的C ++代码:

glm::mat4 trans; GLuint transformLoc = glGetUniformLocation(program, "transform"); glUniformMatrix4fv(transformLoc, 1, GL_FALSE, glm::value_ptr(trans));

我在glUseProgram()之后执行此操作。

这是我的顶点着色器代码:

#version 330 core layout (location = 0) in vec3 position; layout (location = 1) in vec3 inColor; layout (location = 2) in vec2 texCoord; out vec3 ourColor; out vec2 ourTextCoord; uniform mat4 transform; void main() { gl_Position = transform * vec4(position, 1.0f); ourTextCoord = texCoord; ourColor = inColor; };

[gl_Position = vec4(position, 1.0f)可以正常工作,但是将它与标识矩阵相乘是不起作用的...

编辑:我所看到的只是一个黑屏。

c++ opengl glm-math
1个回答
3
投票
0.9.9.0起,GLM默认不再身份初始化(或任何东西初始化!)默认构造的向量/矩阵。

您可以在#define GLM_FORCE_CTOR_INIT进行GLM恢复之前恢复#include。>

© www.soinside.com 2019 - 2024. All rights reserved.