Черные треугольники в opengl

Добавил свет в проект и получил это. Что делать вообще без понятия, похожей проблемы ни у кого не нашёл. Библиотека glfw, glad. Вот код vertex.shader

#version 330 core

layout(location = 0) in vec3 aPos;
layout(location = 1) in vec2 aTexCoord;
layout(location = 2) in vec3 aNormal;

out vec3 texNormal;
out vec2 texCoord;
out vec3 FragPos;

uniform mat4 projection;
uniform mat4 view;
uniform mat4 model;

void main()
{
    texCoord = vec2(aTexCoord.x, aTexCoord.y);
    FragPos = vec3(model * vec4(aPos, 1.0));
    texNormal = mat3(transpose(inverse(model))) * aNormal;    
    
    gl_Position = projection * view * vec4(FragPos, 1.0);

}

fragment.shader

#version 330 core

out vec4 FragColor;

in vec3 texNormal;
in vec2 texCoord;
in vec3 FragPos;

uniform vec3 sunPos;
uniform vec3 sunColor;
uniform float ambientStr;
uniform sampler2D texture1;

void main()
{
    vec3 ambient = ambientStr * sunColor;

    vec3 norm = normalize(texNormal);
    vec3 lightDir = normalize(sunPos - FragPos);
    float diff = max(dot(norm, lightDir), 0.0);
    vec3 diffuse = diff * sunColor;
            
    vec3 result = (ambient + diffuse) * vec3(1,1,1);
    FragColor = vec4(result, 1.0);
}

sunColor = 1, 1, 0.7; ambientStr = 0.1;

введите сюда описание изображения


Ответы (0 шт):