From 806ebcb0d6fe3c31396b9595a7a4197229c1deb8 Mon Sep 17 00:00:00 2001 From: J3oss Date: Sun, 27 Jun 2021 00:00:48 +0200 Subject: [PATCH] added metallic and roughness --- assets/shaders/default.frag | 8 ++++++-- assets/shaders/default.vert | 10 +++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/assets/shaders/default.frag b/assets/shaders/default.frag index 40d4123..c7a6d6f 100755 --- a/assets/shaders/default.frag +++ b/assets/shaders/default.frag @@ -2,8 +2,12 @@ #extension GL_EXT_nonuniform_qualifier : require struct Material { - vec3 baseColor; - uint index; + vec4 baseColor; + uint albedoTexture; + + float metallicFactor; + float roughnessFactor; + uint metallicRoughnessTexture; }; struct Light { diff --git a/assets/shaders/default.vert b/assets/shaders/default.vert index e46f096..41ae5c5 100755 --- a/assets/shaders/default.vert +++ b/assets/shaders/default.vert @@ -2,8 +2,12 @@ #extension GL_EXT_nonuniform_qualifier : require struct Material { - vec3 baseColor; - uint index; + vec4 baseColor; + uint albedoTexture; + + float metallicFactor; + float roughnessFactor; + uint metallicRoughnessTexture; }; struct Vertex { @@ -68,7 +72,7 @@ void main() uint index = IndexBuffers[ PushConstants.indexBufferIndex ].indices[gl_VertexIndex]; Vertex vertex = VertexBuffers[ PushConstants.vertexBufferIndex ].vertices[ index ]; - color = texture(texSampler[material.index],vertex.uv[0]).xyz; + color = texture(texSampler[material.albedoTexture],vertex.uv[0]).xyz; normal = vertex.normal.xyz; gl_Position = Camera.projection * Camera.view * PushConstants.render_matrix * vec4(vertex.position.xyz, 1.0);