Day8: Assimp+Basic Lights+Asserts+vert normals&colors

This commit is contained in:
bloeys
2021-11-27 22:18:51 +04:00
parent 616daaf97d
commit 0e2e9007b6
12 changed files with 146 additions and 113 deletions

View File

@ -1,14 +1,23 @@
#version 410
in vec3 outColor;
in vec3 vertColor;
in vec3 vertNormal;
in vec3 fragPos;
out vec4 fragColor;
uniform vec3 ambientLightColor = vec3(1, 0, 0);
uniform float ambientStrength = 1;
uniform vec3 ambientLightColor = vec3(1, 1, 1);
uniform vec3 lightPos1;
uniform vec3 lightColor1;
void main()
{
vec3 objColor = vec3(1, 1, 1);
fragColor = vec4(objColor * ambientLightColor * ambientStrength, 1.0);
// vec3 norm = normalize(Normal);
vec3 lightDir = normalize(lightPos1 - fragPos);
float diffStrength = max(0.0, dot(normalize(vertNormal), lightDir));
vec3 finalAmbientColor = ambientLightColor * ambientStrength;
fragColor = vec4(vertColor * (finalAmbientColor + diffStrength*lightColor1), 1.0);
}

View File

@ -1,9 +1,12 @@
#version 410
in vec3 vertPos;
in vec3 vertColor;
in vec3 vertPosIn;
in vec3 vertColorIn;
in vec3 vertNormalIn;
out vec3 outColor;
out vec3 vertColor;
out vec3 vertNormal;
out vec3 fragPos;
//MVP = Model View Projection
uniform mat4 modelMat;
@ -12,6 +15,9 @@ uniform mat4 projMat;
void main()
{
outColor = vertColor;
gl_Position = projMat * viewMat * modelMat * (vec4(vertPos, 1.0)); // vec4(vertPos.x, vertPos.y, vertPos.z, 1.0)
vertColor = vertColorIn;
vertNormal = vertNormalIn;
fragPos = vec3(modelMat * vec4(vertPosIn, 1.0));
gl_Position = projMat * viewMat * modelMat * vec4(vertPosIn, 1.0);
}