From f1811df6f6e9c284225f973692e97b052ae77760 Mon Sep 17 00:00:00 2001 From: Lynix Date: Fri, 10 Apr 2020 17:36:52 +0200 Subject: [PATCH] Add lighting in VulkanTest --- examples/bin/resources/shaders/triangle.frag | 10 +++++++--- .../bin/resources/shaders/triangle.frag.spv | Bin 728 -> 1296 bytes examples/bin/resources/shaders/triangle.vert | 6 +++--- .../bin/resources/shaders/triangle.vert.spv | Bin 1636 -> 1640 bytes 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/examples/bin/resources/shaders/triangle.frag b/examples/bin/resources/shaders/triangle.frag index 58a4eff89..f2ddf7dec 100644 --- a/examples/bin/resources/shaders/triangle.frag +++ b/examples/bin/resources/shaders/triangle.frag @@ -5,12 +5,16 @@ layout(binding = 1) uniform sampler2D texSampler; -layout (location = 0) in vec3 inColor; -layout (location = 1) in vec2 outTexCoords; +layout (location = 0) in vec3 inNormal; +layout (location = 1) in vec2 inUV; layout (location = 0) out vec4 outFragColor; void main() { - outFragColor = texture(texSampler, outTexCoords); + vec3 lightDir = vec3(0.0, -0.707, 0.707); + float lightFactor = dot(inNormal, lightDir); + + float gamma = 2.2; + outFragColor = lightFactor * vec4(pow(texture(texSampler, inUV).xyz, vec3(1.0/gamma)), 1.0); } diff --git a/examples/bin/resources/shaders/triangle.frag.spv b/examples/bin/resources/shaders/triangle.frag.spv index c163dc05af340d2d8646f3c6862a0e40c6286fe1..31ec5000f7bdb18687d5c03d343ffa25591f85d6 100644 GIT binary patch literal 1296 zcmY+CNpBND5QQtTCnUs#gg`DT5`HXQAwT6eyXr+GuCW{&-Y%0!)V}Amqp?5 z&>ci+*#Gb`YG=d$HA*GDIPADyeB|ONY~0@*xb`Ot)M@>vUm;H_kb3U-k@>%qG-*pF_ zNGx;k-lX^T9h#;v{n2s2^cu&+)NsgyYcloxaaGx}^z0bS zzf%>SmWRXEg~^?iaXg+?{O7pw!{f>bZ*53T-60DxW@(N?Qp*D zlH%XLD$kg6SuwNlzfpf)o|)mP2eT`<75$s5^62R|emq{4@}d&x=y$0Q!O;)w_s;!Q zVfwL8^fmd3JRa%6>>kd~e?zg^m#v5Tr>SFh4m1806UcKHJLmiJyI@y*d*hgI4E$8p zXxZ@-)xw>Tu{)0!6{Go{e~o5m6{CTtp5Ac8^kvV~^1cf)@?dsxMaCY$Rrxg;?|iS` z?Eabz4g4Fugn6#Z;4uz6;r;%On~J&jYcby~#q0`xM^n(_whZ1|MJ)Us8U2`(d(iC` xebyC|=Xh>Iv9Iym-GXDL9d+d$bs6>O$urNl;*Iwdljlx$#&-sHtVtfp{sG3ATeAQF literal 728 zcmY+ATT22_6opUfm}PnCqC^l{?;>FlL_rDp;!_4a4ksNZOJ`(e1b<(@s+XYkjY@W8 zyJxMv_BETi*fwTMzk;co<*S;EurWoGPkpaH=(plz)aqQdQIt$J6{0CCFDH*p?KmK? zBdf}4vWm3C)I?udRW{~Ji8-lyefQz{(T%;Cjcnq%@w**)ksH2!c*7+AuTf|m`0m68 z{@nVW+qrDd?C{e#suEJAIYO<9`wiZ#Ng3`xdGg@E=*l^7QegSG%J3#;d diff --git a/examples/bin/resources/shaders/triangle.vert b/examples/bin/resources/shaders/triangle.vert index 8884074ee..b967590b8 100644 --- a/examples/bin/resources/shaders/triangle.vert +++ b/examples/bin/resources/shaders/triangle.vert @@ -4,7 +4,7 @@ #extension GL_ARB_shading_language_420pack : enable layout (location = 0) in vec3 inPos; -layout (location = 1) in vec3 inColor; +layout (location = 1) in vec3 inNormals; layout (location = 2) in vec2 inTexCoord; layout (binding = 0) uniform UBO @@ -14,7 +14,7 @@ layout (binding = 0) uniform UBO mat4 viewMatrix; } ubo; -layout (location = 0) out vec3 outColor; +layout (location = 0) out vec3 outNormal; layout (location = 1) out vec2 outTexCoords; out gl_PerVertex @@ -25,7 +25,7 @@ out gl_PerVertex void main() { - outColor = inColor; + outNormal = inNormals; outTexCoords = inTexCoord; gl_Position = ubo.projectionMatrix * ubo.viewMatrix * ubo.modelMatrix * vec4(inPos, 1.0); } diff --git a/examples/bin/resources/shaders/triangle.vert.spv b/examples/bin/resources/shaders/triangle.vert.spv index d7f5cd1ff8e97ffa881649cefba3b6ba81a09d00..a9b99027fe2cd62c93903fe9b86116b313870e56 100644 GIT binary patch delta 39 ncmaFD^MYr>Z5hA(qTIwB1_lOJAmj$pnRyVQVg`ndp9@(5^T!Lf delta 35 kcmaFC^Mq%@Z3*Z6octmNAYf%+Vc-VRnR#HLjo%Ad0l)JKZvX%Q