From 3275ca13a723e63c25f566d98fa6c39932c6dd57 Mon Sep 17 00:00:00 2001
From: Alexander Gauggel <agauggel@uni-koblenz.de>
Date: Sun, 30 May 2021 12:00:22 +0200
Subject: [PATCH] [#52] Modify shader to take multiple vertex inputs

---
 .../first_mesh/resources/shaders/frag.spv     | Bin 608 -> 572 bytes
 .../first_mesh/resources/shaders/shader.frag  |   8 +++---
 .../first_mesh/resources/shaders/shader.vert  |  24 ++++++------------
 .../first_mesh/resources/shaders/vert.spv     | Bin 1844 -> 1520 bytes
 4 files changed, 13 insertions(+), 19 deletions(-)

diff --git a/projects/first_mesh/resources/shaders/frag.spv b/projects/first_mesh/resources/shaders/frag.spv
index cb13e606fc0041e24ff6a63c0ec7dcca466732aa..e552acc2cc06e3adb7bcdbdea4256618a453fdca 100644
GIT binary patch
delta 258
zcmYk0Jqp4=6ohB9@h`f@&O(rd9Kb3d2)0&=O$5sn7J^YRCkZ)-7w`Zc!;1*cgcL4(
zyf?G+9`6&rLT7`d2N*<fm{cyE^$`LMMSi}r#efV+TpgcVHTS$Mceh88Uw{syaqDFV
zU_-5eInk5W%)eG%+SI987+arAviHnI@(2&Ys@0m6H>Gy0T@n!G$E^C3ue`K&%d6kU
Sdo3CfEm^}hhe>}KS&|>G%@x1^

delta 294
zcmX|+y$ZrW5QO)V(_qZ`TcndfN)anT5Hw(6tEGiS8bwe8sVr?RLmtEz@L_xq1!ux(
zj*s1$o%_jCzqE0k*b`CWi;;d|CZQ)<q~e?&FKDF!f@1d=1!(qpdRS(sEJwdWjKcxo
zN6k#7%dHwKUEWokgz$a%b>M;sx{0a){h8I=OK%9xYzv6o7Uf$-R|XAWXd|^M(6%1R
k-|JY92mNwg>p7@v@vuaCfcu%}oR`h<JpK@8A3S9WzQ(>4cK`qY

diff --git a/projects/first_mesh/resources/shaders/shader.frag b/projects/first_mesh/resources/shaders/shader.frag
index d26446a7..5757b588 100644
--- a/projects/first_mesh/resources/shaders/shader.frag
+++ b/projects/first_mesh/resources/shaders/shader.frag
@@ -1,9 +1,11 @@
 #version 450
 #extension GL_ARB_separate_shader_objects : enable
 
-layout(location = 0) in vec3 fragColor;
-layout(location = 0) out vec4 outColor;
+layout(location = 0) in vec3 passNormal;
+layout(location = 1) in vec2 passUV;
+
+layout(location = 0) out vec3 outColor;
 
 void main()	{
-	outColor = vec4(fragColor, 1.0);
+	outColor = passNormal;
 }
\ No newline at end of file
diff --git a/projects/first_mesh/resources/shaders/shader.vert b/projects/first_mesh/resources/shaders/shader.vert
index e6c0e3d6..76855152 100644
--- a/projects/first_mesh/resources/shaders/shader.vert
+++ b/projects/first_mesh/resources/shaders/shader.vert
@@ -1,27 +1,19 @@
 #version 450
 #extension GL_ARB_separate_shader_objects : enable
 
-layout(location = 0) in vec3 position;
+layout(location = 0) in vec3 inPosition;
+layout(location = 1) in vec3 inNormal;
+layout(location = 2) in vec2 inUV;
 
-layout(location = 0) out vec3 fragColor;
+layout(location = 0) out vec3 passNormal;
+layout(location = 1) out vec2 passUV;
 
 layout( push_constant ) uniform constants{
     mat4 mvp;
 };
 
 void main()	{
-    vec3 positions[3] = {
-        vec3(-0.5, 0.5, -1),
-        vec3( 0.5, 0.5, -1),
-        vec3(0, -0.5, -1)
-    };
-    
-    vec3 colors[3] = {
-        vec3(1, 0, 0),
-        vec3(0, 1, 0),
-        vec3(0, 0, 1)
-    };
-
-	gl_Position = mvp * vec4(position, 1.0);
-	fragColor = colors[gl_VertexIndex % 3];
+	gl_Position = mvp * vec4(inPosition, 1.0);
+	passNormal  = inNormal;
+    passUV      = inUV;
 }
\ No newline at end of file
diff --git a/projects/first_mesh/resources/shaders/vert.spv b/projects/first_mesh/resources/shaders/vert.spv
index 74722f38ff0584d51d4a966c748b69a4d3f1d3cb..374c023e14b351eb43cbcda5951cbb8b3d6f96a1 100644
GIT binary patch
literal 1520
zcmYk4*>2NN5Qa~)bP2SjlrBIC4q+>SiVHwU2vAw%UPQD|(Ob(T798X_mhD!+6|cZ6
z@l@O(@qb=|Pc)gCfBu;>Gd|5mf5DhJ(=p5Dfho?KX$UdqoSDzHJ3JolrP+Az(c_0O
zR!lP|!dVrI(~?Yl8(}X?E=z7oZb^0}14&cAhV*YGw#<@ohu;2&S6&*#e&T0=mwxfb
zLE=q6eGNug3a10dJv?-WZ@p0*dujGP47|`rfj72^SoSP{w^-xZXcV4~>x8x#_5RwL
zi>^P1-cgX81W6WrlPk2qv58Gno7rh3bRp+6Z;sn2JGMV`GdV?!xfFXH+W3u4Gd~&y
zvl!bVb{dAWSX;YbPn@=XYto}>L?)vvx0PeWCugx3O|y=p1E2lcXx3tmvG3SV(|6Nk
z;)ex~{oANQz*_nDfcNpF@cA}2!ZYSTjN*&({fkp!#hc)@{O2(@JZ7wT*kJ73RRkN}
zL2agX?iX{*G=2VbsKG8cdYI;dgc@Mfa8-lZyAlpQbJu-l#-~r>yuZ3XD1GX!t17yu
zJLnsGQ`Wq+BiT|uec&_ChW;0&9SLVp`b)C8Z%2Md8a`N87V}p%h#`)6=cTJ%Ju7|Q
z1Q_?M<h-IT_u#KeINS2s4Rz_Ot1NZ|M(vBz+z&==eBKWj@k^x*pBcBL>6yEUZ%fZf
zz{$sF?_l%-_o~F0pD*F}WRXih`2Eta^6~jjaH@KIr{a#5xg(pJ?4SI*(s04y<L{Oj
z@q4n#t>XB6SFk5~L)2j}9P0cL!kgRIKeKO0*a!Q3E+%`}lz`*Y_Z0~<zgG^u?Ub0*
z47*lh+*|Q@Yvj_ykv76ku1m;=Pn_NTQe9$>guCI;Ur+jmgttI{FEjzZBdL13Et~xj
XW3Twc*vEYdyCBBS@c(KvPbL2V#KCyG

literal 1844
zcmYk7-A@xi6vao{0)l{ue5i<9tDu1R1&AULL{m(ffRgySsqKnumTl8ri2B64PyR(D
z{#Cx1cz(MxP1juRoO92;GxyGbg}%ywF_+Ac88O=?|He(97-NP_f99*TquNT6Hdj{H
zo}d^tg-nQM%v{daMg2UfhcUpDEy>noFJuM%>y!VZgrfA-n!o$;jh_VVdZ(TSe)6^6
z3_5=6^S7XpCTNDxR1XfSwRe7_-S(68M-=!`7zchc>_`=!1?UEQbYa|xPMf`gk`%q?
zDw&eGqI0xcNtlMMSX+rHno0RaD{6H_l+^Q_@NwiH2AxkqCk?&}ip_b}#B2$%1DT##
zWPBK>N8wMMj+{J3?~3h3Vf$^Er1iKFbYo1C*l84XV<pYY6VJz)@5wiGTxBvI<rXuJ
z_{mvYih`L3=tIx!U5}3AF1~c?$9wdd>H4#~(cXEJ@8c$&?kk`E`G#}X<>(O(?{xGA
zM<0%34ae-Oick;Te$Tl}8P0pt(p31Nj~evLr-x~-%BTTHjjC!a$-6Ux>8%&@=GcEx
zHlZx?%BsP+SWjuyFYn2wmCrt4;*-LI@}7)u$zonP@mb*^d2--9VfF&Uqo>x0Oy7mW
zqdDGjcr3%`7t2z+KFL8x%<<!vbG*yHCZ5mfCbWj5hRf$X*JaF*I%r(}l-9<a@3{PF
zAvkJaj-RpE#T<X5M@tNz{cg&rMIIXFdrO{~@E+Ko`OeCCN6hoKJaM==t+-2<Lkwfi
zcjUPP;+qzGmgC;aT7#*}KH$4Dz8T?)Jasw8oGS6A;HZ6Hp8JHOHhA80#24(^=@*6B
zhr2@$=3T;}e<sga*$=#GvD1Tjw`hp3%adD{Q4h>JhI75V)Y|DcwWb!fuHPBnHGT1+
z`74IsF>3KX`Mc-#2J<%$ye%~`-U(}X?r>Mx3-S+S%z-&>sa8e)p$r~Ojb$0Ve^3th
z_{ef{U2es4^y74oEyvjpRf$>g9}M~EiSxF8t1hvpGWJHp`Izx@nJ43XoF9yivoXsJ
j8FTz4J@}R7m?brs<7*jx6LURnS)Q8Q6ZoHQV?*{IKqriI

-- 
GitLab