From 11c4ea484ce5901d795a5d8802533319e0ef36d9 Mon Sep 17 00:00:00 2001 From: Tobias Frisch <tfrisch@uni-koblenz.de> Date: Fri, 9 Jul 2021 19:25:13 +0200 Subject: [PATCH] [#56] Removed batch and SPIRV files, replaced basic shader loading with runtime compilation Signed-off-by: Tobias Frisch <tfrisch@uni-koblenz.de> --- projects/first_mesh/CMakeLists.txt | 4 +-- .../first_mesh/resources/shaders/compile.bat | 3 --- .../first_mesh/resources/shaders/frag.spv | Bin 920 -> 0 bytes .../first_mesh/resources/shaders/vert.spv | Bin 1520 -> 0 bytes projects/first_mesh/src/main.cpp | 16 ++++++++--- projects/first_scene/CMakeLists.txt | 4 +-- .../first_scene/resources/shaders/compile.bat | 3 --- .../first_scene/resources/shaders/frag.spv | Bin 920 -> 0 bytes .../first_scene/resources/shaders/vert.spv | Bin 1520 -> 0 bytes projects/first_scene/src/main.cpp | 19 ++++++++----- projects/first_triangle/shaders/comp.spv | Bin 1520 -> 0 bytes projects/first_triangle/shaders/compile.bat | 4 --- projects/first_triangle/shaders/frag.spv | Bin 608 -> 0 bytes projects/first_triangle/shaders/shader.comp | 25 ------------------ projects/first_triangle/shaders/vert.spv | Bin 1772 -> 0 bytes projects/first_triangle/src/main.cpp | 6 ++--- 16 files changed, 32 insertions(+), 52 deletions(-) delete mode 100644 projects/first_mesh/resources/shaders/compile.bat delete mode 100644 projects/first_mesh/resources/shaders/frag.spv delete mode 100644 projects/first_mesh/resources/shaders/vert.spv delete mode 100644 projects/first_scene/resources/shaders/compile.bat delete mode 100644 projects/first_scene/resources/shaders/frag.spv delete mode 100644 projects/first_scene/resources/shaders/vert.spv delete mode 100644 projects/first_triangle/shaders/comp.spv delete mode 100644 projects/first_triangle/shaders/compile.bat delete mode 100644 projects/first_triangle/shaders/frag.spv delete mode 100644 projects/first_triangle/shaders/shader.comp delete mode 100644 projects/first_triangle/shaders/vert.spv diff --git a/projects/first_mesh/CMakeLists.txt b/projects/first_mesh/CMakeLists.txt index eb0f028d..6455e75d 100644 --- a/projects/first_mesh/CMakeLists.txt +++ b/projects/first_mesh/CMakeLists.txt @@ -22,7 +22,7 @@ if(MSVC) endif() # including headers of dependencies and the VkCV framework -target_include_directories(first_mesh SYSTEM BEFORE PRIVATE ${vkcv_include} ${vkcv_includes} ${vkcv_asset_loader_include} ${vkcv_camera_include}) +target_include_directories(first_mesh SYSTEM BEFORE PRIVATE ${vkcv_include} ${vkcv_includes} ${vkcv_asset_loader_include} ${vkcv_camera_include} ${vkcv_shader_compiler_include}) # linking with libraries from all dependencies and the VkCV framework -target_link_libraries(first_mesh vkcv ${vkcv_libraries} vkcv_asset_loader ${vkcv_asset_loader_libraries} vkcv_camera) +target_link_libraries(first_mesh vkcv ${vkcv_libraries} vkcv_asset_loader ${vkcv_asset_loader_libraries} vkcv_camera vkcv_shader_compiler) diff --git a/projects/first_mesh/resources/shaders/compile.bat b/projects/first_mesh/resources/shaders/compile.bat deleted file mode 100644 index b4521235..00000000 --- a/projects/first_mesh/resources/shaders/compile.bat +++ /dev/null @@ -1,3 +0,0 @@ -%VULKAN_SDK%\Bin32\glslc.exe shader.vert -o vert.spv -%VULKAN_SDK%\Bin32\glslc.exe shader.frag -o frag.spv -pause \ No newline at end of file diff --git a/projects/first_mesh/resources/shaders/frag.spv b/projects/first_mesh/resources/shaders/frag.spv deleted file mode 100644 index 087e4e22fb2fcec27d99b3ff2aa1a705fe755796..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 920 zcmYk4UrQTN5XDF1rZHAitHzqN#Xs+%4{a%kf{N@*XrO7+$7P#b$jT<W>~2c?_54)6 z2tB_|LifTj_spC-b7ppHn-?$4Hmqs8_Rf}P-!>I7+p&7-{r<4u%Zo|x<EIZW_N-PC z;k2w_Tk_Z}jOHY^Wo_A8*(-6$sflhiRW^In!!5D=esJ^cHppEXW?|uid>T$%79_tO z+_=c$G~xJzf#1Im#%UVl#oyQkaWr?qB+A5!emi)L3NM<E<He*(@WiO<^UNzXCX3=O ziIYr{6!Gk({LJOk@9s~r$ebc|={GBuco@#o*ojR&=1apo|1ny=WmfRlB%6h?nJ*4| zcrW9CsefLg|M;we=~c~x$+KtP)028@OwV=w18tVwo|Rj+^4`|HuGp#USnv4;V7}g| zaAS2Re!0SECVwLJO?mkAtDZHc#?C4Mml|N^<aDHBPaa;YjPUO)d0^(_bk*^-JT=gH zC{JJJ;q8$;J&Dr;%r1z*e<Kf{Zw$XHPi{RIm|YS3tglC1xEyAEQpA(LQWOolGG+jy ycVC9qkyz+Fkij7i2VKW9H2o9@Jts1F#0T0mS~@b~7zaIQxt0p{PX1ZZFS38`7*62; diff --git a/projects/first_mesh/resources/shaders/vert.spv b/projects/first_mesh/resources/shaders/vert.spv deleted file mode 100644 index 374c023e14b351eb43cbcda5951cbb8b3d6f96a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 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 diff --git a/projects/first_mesh/src/main.cpp b/projects/first_mesh/src/main.cpp index 44a370be..731d3e56 100644 --- a/projects/first_mesh/src/main.cpp +++ b/projects/first_mesh/src/main.cpp @@ -4,6 +4,7 @@ #include <vkcv/camera/CameraManager.hpp> #include <chrono> #include <vkcv/asset/asset_loader.hpp> +#include <vkcv/shader/GLSLCompiler.hpp> int main(int argc, const char** argv) { const char* applicationName = "First Mesh"; @@ -77,10 +78,19 @@ int main(int argc, const char** argv) { return EXIT_FAILURE; } - vkcv::ShaderProgram firstMeshProgram{}; - firstMeshProgram.addShader(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/vert.spv")); - firstMeshProgram.addShader(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/frag.spv")); + vkcv::ShaderProgram firstMeshProgram; + vkcv::shader::GLSLCompiler compiler; + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + [&firstMeshProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + firstMeshProgram.addShader(shaderStage, path); + }); + + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/shader.frag"), + [&firstMeshProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + firstMeshProgram.addShader(shaderStage, path); + }); + auto& attributes = mesh.vertexGroups[0].vertexBuffer.attributes; diff --git a/projects/first_scene/CMakeLists.txt b/projects/first_scene/CMakeLists.txt index 467663dc..ba2f7b1a 100644 --- a/projects/first_scene/CMakeLists.txt +++ b/projects/first_scene/CMakeLists.txt @@ -22,7 +22,7 @@ if(MSVC) endif() # including headers of dependencies and the VkCV framework -target_include_directories(first_scene SYSTEM BEFORE PRIVATE ${vkcv_include} ${vkcv_includes} ${vkcv_asset_loader_include} ${vkcv_camera_include} ${vkcv_scene_include}) +target_include_directories(first_scene SYSTEM BEFORE PRIVATE ${vkcv_include} ${vkcv_includes} ${vkcv_asset_loader_include} ${vkcv_camera_include} ${vkcv_scene_include} ${vkcv_shader_compiler_include}) # linking with libraries from all dependencies and the VkCV framework -target_link_libraries(first_scene vkcv ${vkcv_libraries} vkcv_asset_loader ${vkcv_asset_loader_libraries} vkcv_camera vkcv_scene) +target_link_libraries(first_scene vkcv ${vkcv_libraries} vkcv_asset_loader ${vkcv_asset_loader_libraries} vkcv_camera vkcv_scene vkcv_shader_compiler) diff --git a/projects/first_scene/resources/shaders/compile.bat b/projects/first_scene/resources/shaders/compile.bat deleted file mode 100644 index b4521235..00000000 --- a/projects/first_scene/resources/shaders/compile.bat +++ /dev/null @@ -1,3 +0,0 @@ -%VULKAN_SDK%\Bin32\glslc.exe shader.vert -o vert.spv -%VULKAN_SDK%\Bin32\glslc.exe shader.frag -o frag.spv -pause \ No newline at end of file diff --git a/projects/first_scene/resources/shaders/frag.spv b/projects/first_scene/resources/shaders/frag.spv deleted file mode 100644 index 087e4e22fb2fcec27d99b3ff2aa1a705fe755796..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 920 zcmYk4UrQTN5XDF1rZHAitHzqN#Xs+%4{a%kf{N@*XrO7+$7P#b$jT<W>~2c?_54)6 z2tB_|LifTj_spC-b7ppHn-?$4Hmqs8_Rf}P-!>I7+p&7-{r<4u%Zo|x<EIZW_N-PC z;k2w_Tk_Z}jOHY^Wo_A8*(-6$sflhiRW^In!!5D=esJ^cHppEXW?|uid>T$%79_tO z+_=c$G~xJzf#1Im#%UVl#oyQkaWr?qB+A5!emi)L3NM<E<He*(@WiO<^UNzXCX3=O ziIYr{6!Gk({LJOk@9s~r$ebc|={GBuco@#o*ojR&=1apo|1ny=WmfRlB%6h?nJ*4| zcrW9CsefLg|M;we=~c~x$+KtP)028@OwV=w18tVwo|Rj+^4`|HuGp#USnv4;V7}g| zaAS2Re!0SECVwLJO?mkAtDZHc#?C4Mml|N^<aDHBPaa;YjPUO)d0^(_bk*^-JT=gH zC{JJJ;q8$;J&Dr;%r1z*e<Kf{Zw$XHPi{RIm|YS3tglC1xEyAEQpA(LQWOolGG+jy ycVC9qkyz+Fkij7i2VKW9H2o9@Jts1F#0T0mS~@b~7zaIQxt0p{PX1ZZFS38`7*62; diff --git a/projects/first_scene/resources/shaders/vert.spv b/projects/first_scene/resources/shaders/vert.spv deleted file mode 100644 index 374c023e14b351eb43cbcda5951cbb8b3d6f96a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 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 diff --git a/projects/first_scene/src/main.cpp b/projects/first_scene/src/main.cpp index 486b2134..527eba8c 100644 --- a/projects/first_scene/src/main.cpp +++ b/projects/first_scene/src/main.cpp @@ -4,11 +4,9 @@ #include <vkcv/camera/CameraManager.hpp> #include <chrono> #include <vkcv/asset/asset_loader.hpp> -#include <vkcv/Logger.hpp> +#include <vkcv/shader/GLSLCompiler.hpp> #include <vkcv/scene/Scene.hpp> - - int main(int argc, const char** argv) { const char* applicationName = "First Scene"; @@ -64,9 +62,18 @@ int main(int argc, const char** argv) { return EXIT_FAILURE; } - vkcv::ShaderProgram sceneShaderProgram{}; - sceneShaderProgram.addShader(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/vert.spv")); - sceneShaderProgram.addShader(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/frag.spv")); + vkcv::ShaderProgram sceneShaderProgram; + vkcv::shader::GLSLCompiler compiler; + + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + [&sceneShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + sceneShaderProgram.addShader(shaderStage, path); + }); + + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/shader.frag"), + [&sceneShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + sceneShaderProgram.addShader(shaderStage, path); + }); const std::vector<vkcv::VertexAttachment> vertexAttachments = sceneShaderProgram.getVertexAttachments(); std::vector<vkcv::VertexBinding> bindings; diff --git a/projects/first_triangle/shaders/comp.spv b/projects/first_triangle/shaders/comp.spv deleted file mode 100644 index b414e36b2bea66dab00746298e536d029091e0fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1520 zcmZvcdr#9)7{(799SCxhn-`oND1yMe0WmR}fSN+G1QI_$GrNLKYPZmi#IN9o;cvbf z#Kgqs*Y(6^@htD&^FHS}@3n2UvNmSSh?y``X5S3foT&&gX42Gh?X|wPnrYT)?(V&U zF>R_j5zdS_j`XPHM>|S5xFeYr4mKy@94=DTuOfXdV^mSSmhYXMc&#sf(ChhW_A?Is zI7&jl6J3Ns7F~w$#!I{?3F3aIOmM^~$9Kdhhx6F?;_kP0e4Jc%gLW2mljG0A9sTZ0 zXJMKh_Rr433zJs?#sYsWO=V!@4fdvlQ3KdpX-73ZlxE?3TRP|_Y1U4%RQsA4%Q4P- z{q*~%;tZR+O*UGdsvz%4$x2}_O4lUR$NAEby<D=7<jvNwCY)t4Y5?0PVblP2D)E#D zcbP14sApBevUX!&=02&BW#e!k44?4#q^aY9WL_wELmd3GUlfPBTnTGgwjRVBgX78` zmnLuU_k~S=z_yC}6WX)j6OS|e+Vg4c;VdZXjP#N+SdexlE4o8}vEgCU-?B}Atz9qr z%N=-}5tkaNiT;r%HvO}8KGNQmkQ;enGhY_>SEb<+$DTjc-txhpON{w-XwNrgai?DN z9S**Br0Ef}AQx<&FEGwu7JD0uUJah%e?8k3M(k~MlHM~*IN->>`ao=+Nfz_E6~cRd zpnv9YS3*pB|3OUROi946#9<b*1xD|0<mH|;>$muv@$CS^H~T-zianT(^H}@gICWv* zmh<F499I~4PqFAlL*hyflqvJzxn_pU34b4z9~eCA_nG#?vDbxxTR*&S_+g%$;RlR) sT0bweANI2)3>*$K<HO4w$%lTDGv6q18;kD~u{I^#Cl(kydiPH97rzi=%K!iX diff --git a/projects/first_triangle/shaders/compile.bat b/projects/first_triangle/shaders/compile.bat deleted file mode 100644 index 17743a7c..00000000 --- a/projects/first_triangle/shaders/compile.bat +++ /dev/null @@ -1,4 +0,0 @@ -%VULKAN_SDK%\Bin32\glslc.exe shader.vert -o vert.spv -%VULKAN_SDK%\Bin32\glslc.exe shader.frag -o frag.spv -%VULKAN_SDK%\Bin32\glslc.exe shader.comp -o comp.spv -pause \ No newline at end of file diff --git a/projects/first_triangle/shaders/frag.spv b/projects/first_triangle/shaders/frag.spv deleted file mode 100644 index cb13e606fc0041e24ff6a63c0ec7dcca466732aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 608 zcmYk2-Acni5QWF4X=`f#Ea;t7ycCKTDuPr|k=z98&jTzmSv3-qkfefleKw!U8^Lqd zM6xiMowMKWoQc&s=!$HJBLkVr-<n7Zib!8NCcECFH!sR?etdF7VknjY$&92cZDhu~ zA0<54L~J3(;HaYkb{1Y0`NE|(2-j0r57(;DnV<WmR>i9y>RhEyZ#pOoG7cGcxpci- z6=azz%FkG<I7+k%qa0N9p~>|cT$BXyDr^Eah^9ANY~wFol{aae=CB0CHh!OT|D_gP z+~OR21h80hrn;VD8qTwCCKI#Y!M+1+hS&wqxmmOS4Bs9y{~Y!6s%8&r<Q-)4tjYJ0 z@w<#po;5vCJ48)(h!9y{o?-_2VJ|Me@eRdBUO?sB0|f8iL*?C3r6K)m<4R+XnwwM_ b-@k)<`rk(IK6#$g#|64_9-jTc<r(4^BDy=E diff --git a/projects/first_triangle/shaders/shader.comp b/projects/first_triangle/shaders/shader.comp deleted file mode 100644 index fad6cd08..00000000 --- a/projects/first_triangle/shaders/shader.comp +++ /dev/null @@ -1,25 +0,0 @@ -#version 440 - -layout(std430, binding = 0) buffer testBuffer -{ - float test1[10]; - float test2[10]; - float test3[10]; -}; - -layout( push_constant ) uniform constants{ - float pushConstant; -}; - -layout(local_size_x = 5) in; - -void main(){ - - if(gl_GlobalInvocationID.x >= 10){ - return; - } - - test1[gl_GlobalInvocationID.x] = gl_GlobalInvocationID.x; - test2[gl_GlobalInvocationID.x] = 69; // nice! - test3[gl_GlobalInvocationID.x] = pushConstant; -} \ No newline at end of file diff --git a/projects/first_triangle/shaders/vert.spv b/projects/first_triangle/shaders/vert.spv deleted file mode 100644 index 03af5758ffff1b5b6505fe98b02044849026832d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1772 zcmYk6ZBNut5QQ)7F0TS2@}eSiT?J(k-vCimf@l_#O+ZQf+N`@3Yf5+17NUOQFZhc{ z{8fH2@jPuW={3XLbLPx+=HBa;`fG#6^qCPeW?q?WO`3i&#*CVQ)Hj+(&9yk`tgUZ6 zMlo(msSwSC8A|tM{XJ><A;6K<Wm~e6{`JfMk+^JzO{3}VetPT1Uau9k63>mlwK`tp zcE5c0+DVLN1Wn`MpwWEqwtGD{PJRZS8~CB;cKk>x|I9--RM7chJ2>qW1r;fZJylG_ zTu~prZtN$1H`J%Zl+Cn!yBl;P5f#n5AbcFShhFsAixTgLpxBIOPb@DXb}-d*4k_=4 z$&vp{-I0^Um|d~G!0)~D<D?a~y~`M<NbEESE@Ks)mm{7<&v)h9YFC*Yk8;Z?NBrch zCq>CD0kr6!b63r*`43@-38=$ee2rSid(5i+zBp!Ojb`qWV;(rX)iDPgJzI`F9Ov9n zgnH=q3q4j+oXw%FsqsgP8qCJh12k7<)PSQ#LpAF1)L+RlGuWP|q(WC!4t=nn(QZKA zk<BWfx?tkd!n{;R#;WIdSbO60!XxtJz&XNv8w`)0T4OS;3ya4yykqf1iq9`rrM7dC zgN~TxCv(p7HvgJ<meoyZ4@V7~Pe0dXoEde{*!&sojXB@3`LjZB)W9r1mtz~V{EdQ^ z7(Cy*DWev7XgJ?n@|+3x&-Xdsc^U79^Smuj9Bx57?#|{A!#L+fdG3Jtc8;B#<KC*; zgQ?4Rz;|S<IpLZ-b?IY4m3TvN)V?RreZo;2yp(gqm-D^VuL$!UzJVUhJA_03P@a3m zz#H=P&iBF3b4;9kFz*)4rrtd7ls;K-f5q^B1TF84-zb|4=JyHwMrvZ*J9~KUWLMeC z^7m!T#ksszE#`S3g9lgTS7ppX4s)!@s0ojT?>v&hf0Ty1;|Cv(Ww|HX!}S%or#Z)b zhpNPRJd=@+o;dI6x9SpGm(d>@`r#ZmWsZy)m=TQ5_WwfrV*f9NIR|*#|F-t<<a6%e Jf9iBg_8)N7hMWKZ diff --git a/projects/first_triangle/src/main.cpp b/projects/first_triangle/src/main.cpp index a69f9bc7..253efad4 100644 --- a/projects/first_triangle/src/main.cpp +++ b/projects/first_triangle/src/main.cpp @@ -2,10 +2,8 @@ #include <vkcv/Core.hpp> #include <GLFW/glfw3.h> #include <vkcv/camera/CameraManager.hpp> -#include <chrono> - #include <vkcv/shader/GLSLCompiler.hpp> -#include <vkcv/gui/GUI.hpp> +#include <chrono> int main(int argc, const char** argv) { const char* applicationName = "First Triangle"; @@ -49,7 +47,7 @@ int main(int argc, const char** argv) { return EXIT_FAILURE; } - vkcv::ShaderProgram triangleShaderProgram{}; + vkcv::ShaderProgram triangleShaderProgram; vkcv::shader::GLSLCompiler compiler; compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("shaders/shader.vert"), -- GitLab