Made some tweaks

Signed-off-by: Robear Selwans <robear.selwans@outlook.com>
This commit is contained in:
2021-07-21 15:07:33 +02:00
parent b50fbbe7b3
commit d38152022e
6 changed files with 3205 additions and 149 deletions
+3 -6
View File
@@ -81,15 +81,12 @@ void main()
vec3 ambient = vec3(0.2) * albedo; vec3 ambient = vec3(0.2) * albedo;
vec3 color = ambient + Lo; vec3 color = ambient + Lo;
color += spec * specFactor; color += spec * specFactor;
// color = mix(color, spec, specFactor);
//color = color / (color + vec3(1.0)); // color = color / (color + vec3(1.0));
// float reflectance = max(max(F.x, F.y), F.z);
// float reflectance = max(max(F0.x, F0.y), F0.z);
outColor = vec4(color, 1.0); outColor = vec4(color, 1.0);
// outColor = vec4(vec3(reflectance), 1.0); // outColor = vec4(spec * specFactor, 1.0);
} }
-3
View File
@@ -63,7 +63,4 @@ void main()
outColor = vec4(rgbA, 1.0); outColor = vec4(rgbA, 1.0);
else else
outColor = vec4(rgbB, 1.0); outColor = vec4(rgbB, 1.0);
if(uv.x < 0.5)
outColor = vec4(rgbM, 1.0);
} }
+19 -25
View File
@@ -4,17 +4,7 @@
#include "shaders://_builtins/constants.glsl" #include "shaders://_builtins/constants.glsl"
#include "shaders://_builtins/srgb_ops.glsl" #include "shaders://_builtins/srgb_ops.glsl"
#include "shaders://_builtins/PBR.glsl" #include "shaders://_builtins/PBR.glsl"
#include "shaders://_builtins/types.glsl"
struct Material {
vec4 baseColor;
uint albedoTexture;
uint normalTexture;
float metallicFactor;
float roughnessFactor;
uint metallicRoughnessTexture;
};
struct Light { struct Light {
vec3 color; vec3 color;
@@ -86,30 +76,34 @@ void main() {
if(material.metallicRoughnessTexture == 0) { if(material.metallicRoughnessTexture == 0) {
outSpecular.b = material.metallicFactor; outSpecular.b = material.metallicFactor;
outSpecular.g = material.roughnessFactor; outSpecular.g = material.roughnessFactor;
outSpecular.r = 1; outSpecular.r = 1.0;
} else { } else {
outSpecular = LinearToSRGB(texture(texSampler[material.metallicRoughnessTexture], uv)).xyz; outSpecular = LinearToSRGB(texture(texSampler[material.metallicRoughnessTexture], uv)).xyz;
float metallicFactor = outSpecular.z;
float roughnessFactor = outSpecular.y;
// vec3 F0 = mix(vec3(0.04), outColor, (metallicFactor - roughnessFactor));
// float reflectance = max(max(F0.x, F0.y), F0.z);
// float reflectance = (metallicFactor + roughnessFactor) * 0.5;
float reflectance = 1.0 - roughnessFactor;
gNormal.w = outSpecular.x;
gAlbedo.w = roughnessFactor;
gPosition.w = metallicFactor;
gSpecular.w = reflectance;
} }
float metallicFactor = outSpecular.z;
float roughnessFactor = outSpecular.y;
float ao = outSpecular.x;
gNormal.w = ao;
gAlbedo.w = roughnessFactor;
gPosition.w = metallicFactor;
float reflectance = 1.0 - roughnessFactor;
gSpecular.w = reflectance;
vec3 I = normalize(outpos.xyz - cameraPos); vec3 I = normalize(outpos.xyz - cameraPos);
vec3 R = reflect(I, normalize(outNormal)); vec3 R = reflect(I, normalize(outNormal));
//R = R * -1; //R = R * -1;
outSpecular = texture(skybox, R).rgb; outSpecular = texture(skybox, R).rgb;
if(material.emissiveTexture != 0) {
gSpecular.w = 1.0;
outSpecular += texture(texSampler[material.emissiveTexture], uv).rgb * material.emissiveFactor.xyz;
}
gPosition = outpos;
gPosition.xyz = outpos.xyz;
gNormal.xyz = outNormal; gNormal.xyz = outNormal;
gAlbedo.xyz = outColor; gAlbedo.xyz = outColor;
gSpecular.xyz = outSpecular; gSpecular.xyz = outSpecular;
+1 -1
View File
@@ -49,5 +49,5 @@
"path": "scenes://Car.evsc" "path": "scenes://Car.evsc"
} }
], ],
"activeScene": "Car" "activeScene": "DamagedHelmetScene"
} }
+3173 -93
View File
File diff suppressed because one or more lines are too long
+9 -21
View File
@@ -34,21 +34,9 @@
{ {
"components": [ "components": [
{ {
"position": [ "position": [ 0, 0, 0 ],
0, "rotation": [ -180, 0, 0 ],
0, "scale": [ 1, 1, 1 ],
0
],
"rotation": [
-180,
180,
0
],
"scale": [
1,
1,
1
],
"type": "TransformComponent" "type": "TransformComponent"
}, },
{ {
@@ -99,9 +87,9 @@
}, },
{ {
"color": [1.0, 1.0, 1.0, 1.0], "color": [1.0, 1.0, 1.0, 1.0],
"intensity": 200, "intensity": 20,
"type": "LightComponent" "type": "LightComponent"
}, }
] ]
}, },
{ {
@@ -119,9 +107,9 @@
}, },
{ {
"color": [1.0, 1.0, 1.0, 1.0], "color": [1.0, 1.0, 1.0, 1.0],
"intensity": 200, "intensity": 20,
"type": "LightComponent" "type": "LightComponent"
}, }
] ]
}, },
{ {
@@ -139,9 +127,9 @@
}, },
{ {
"color": [1.0, 1.0, 1.0, 1.0], "color": [1.0, 1.0, 1.0, 1.0],
"intensity": 200, "intensity": 20,
"type": "LightComponent" "type": "LightComponent"
}, }
] ]
}, },
{ {