diff --git a/projects/first_mesh/resources/Szene/Szene.bin b/projects/first_mesh/assets/Szene/Szene.bin similarity index 100% rename from projects/first_mesh/resources/Szene/Szene.bin rename to projects/first_mesh/assets/Szene/Szene.bin diff --git a/projects/first_mesh/resources/Szene/Szene.gltf b/projects/first_mesh/assets/Szene/Szene.gltf similarity index 100% rename from projects/first_mesh/resources/Szene/Szene.gltf rename to projects/first_mesh/assets/Szene/Szene.gltf diff --git a/projects/first_mesh/resources/Szene/boards2_vcyc.jpg b/projects/first_mesh/assets/Szene/boards2_vcyc.jpg similarity index 100% rename from projects/first_mesh/resources/Szene/boards2_vcyc.jpg rename to projects/first_mesh/assets/Szene/boards2_vcyc.jpg diff --git a/projects/first_mesh/resources/Szene/boards2_vcyc_jpg.jpg b/projects/first_mesh/assets/Szene/boards2_vcyc_jpg.jpg similarity index 100% rename from projects/first_mesh/resources/Szene/boards2_vcyc_jpg.jpg rename to projects/first_mesh/assets/Szene/boards2_vcyc_jpg.jpg diff --git a/projects/first_mesh/resources/cube/boards2_vcyc_jpg.jpg b/projects/first_mesh/assets/cube/boards2_vcyc_jpg.jpg similarity index 100% rename from projects/first_mesh/resources/cube/boards2_vcyc_jpg.jpg rename to projects/first_mesh/assets/cube/boards2_vcyc_jpg.jpg diff --git a/projects/first_mesh/resources/cube/cube.bin b/projects/first_mesh/assets/cube/cube.bin similarity index 100% rename from projects/first_mesh/resources/cube/cube.bin rename to projects/first_mesh/assets/cube/cube.bin diff --git a/projects/first_mesh/resources/cube/cube.blend b/projects/first_mesh/assets/cube/cube.blend similarity index 100% rename from projects/first_mesh/resources/cube/cube.blend rename to projects/first_mesh/assets/cube/cube.blend diff --git a/projects/first_mesh/resources/cube/cube.blend1 b/projects/first_mesh/assets/cube/cube.blend1 similarity index 100% rename from projects/first_mesh/resources/cube/cube.blend1 rename to projects/first_mesh/assets/cube/cube.blend1 diff --git a/projects/first_mesh/resources/cube/cube.glb b/projects/first_mesh/assets/cube/cube.glb similarity index 100% rename from projects/first_mesh/resources/cube/cube.glb rename to projects/first_mesh/assets/cube/cube.glb diff --git a/projects/first_mesh/resources/cube/cube.gltf b/projects/first_mesh/assets/cube/cube.gltf similarity index 100% rename from projects/first_mesh/resources/cube/cube.gltf rename to projects/first_mesh/assets/cube/cube.gltf diff --git a/projects/first_mesh/resources/shaders/shader.frag b/projects/first_mesh/assets/shaders/shader.frag similarity index 100% rename from projects/first_mesh/resources/shaders/shader.frag rename to projects/first_mesh/assets/shaders/shader.frag diff --git a/projects/first_mesh/resources/shaders/shader.vert b/projects/first_mesh/assets/shaders/shader.vert similarity index 100% rename from projects/first_mesh/resources/shaders/shader.vert rename to projects/first_mesh/assets/shaders/shader.vert diff --git a/projects/first_mesh/resources/triangle/Triangle.bin b/projects/first_mesh/assets/triangle/Triangle.bin similarity index 100% rename from projects/first_mesh/resources/triangle/Triangle.bin rename to projects/first_mesh/assets/triangle/Triangle.bin diff --git a/projects/first_mesh/resources/triangle/Triangle.blend b/projects/first_mesh/assets/triangle/Triangle.blend similarity index 100% rename from projects/first_mesh/resources/triangle/Triangle.blend rename to projects/first_mesh/assets/triangle/Triangle.blend diff --git a/projects/first_mesh/resources/triangle/Triangle.glb b/projects/first_mesh/assets/triangle/Triangle.glb similarity index 100% rename from projects/first_mesh/resources/triangle/Triangle.glb rename to projects/first_mesh/assets/triangle/Triangle.glb diff --git a/projects/first_mesh/resources/triangle/Triangle.gltf b/projects/first_mesh/assets/triangle/Triangle.gltf similarity index 100% rename from projects/first_mesh/resources/triangle/Triangle.gltf rename to projects/first_mesh/assets/triangle/Triangle.gltf diff --git a/projects/first_mesh/src/main.cpp b/projects/first_mesh/src/main.cpp index 53a17a2597bc6a5b9b4edc2a4665664a0d6ef366..e381cab6315bdb86a6c28ba0fa4b0a6388c50a38 100644 --- a/projects/first_mesh/src/main.cpp +++ b/projects/first_mesh/src/main.cpp @@ -22,7 +22,7 @@ int main(int argc, const char** argv) { vkcv::asset::Scene mesh; - const char* path = argc > 1 ? argv[1] : "resources/cube/cube.gltf"; + const char* path = argc > 1 ? argv[1] : "assets/cube/cube.gltf"; int result = vkcv::asset::loadScene(path, mesh); if (result == 1) { @@ -73,12 +73,12 @@ int main(int argc, const char** argv) { vkcv::ShaderProgram firstMeshProgram; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/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"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/shader.frag"), [&firstMeshProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { firstMeshProgram.addShader(shaderStage, path); }); @@ -153,8 +153,15 @@ int main(int argc, const char** argv) { setWrites.samplerWrites = { vkcv::SamplerDescriptorWrite(1, sampler) }; core.writeDescriptorSet(descriptorSet, setWrites); - - vkcv::ImageHandle depthBuffer = core.createImage(vk::Format::eD32Sfloat, windowWidth, windowHeight, 1, false).getHandle(); + + auto swapchainExtent = core.getSwapchain(windowHandle).getExtent(); + + vkcv::ImageHandle depthBuffer = core.createImage( + vk::Format::eD32Sfloat, + swapchainExtent.width, + swapchainExtent.height, + 1, false + ).getHandle(); const vkcv::ImageHandle swapchainInput = vkcv::ImageHandle::createSwapchainImageHandle(); @@ -181,11 +188,11 @@ int main(int argc, const char** argv) { continue; } - if ((swapchainWidth != windowWidth) || ((swapchainHeight != windowHeight))) { + if ((swapchainWidth != swapchainExtent.width) || ((swapchainHeight != swapchainExtent.height))) { depthBuffer = core.createImage(vk::Format::eD32Sfloat, swapchainWidth, swapchainHeight).getHandle(); - windowWidth = swapchainWidth; - windowHeight = swapchainHeight; + swapchainExtent.width = swapchainWidth; + swapchainExtent.height = swapchainHeight; } auto end = std::chrono::system_clock::now(); diff --git a/projects/first_scene/resources/Cutlery/Cutlery_chrome_BaseColor.png b/projects/first_scene/assets/Cutlery/Cutlery_chrome_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Cutlery_chrome_BaseColor.png rename to projects/first_scene/assets/Cutlery/Cutlery_chrome_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/Cutlery_chrome_Normal.png b/projects/first_scene/assets/Cutlery/Cutlery_chrome_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Cutlery_chrome_Normal.png rename to projects/first_scene/assets/Cutlery/Cutlery_chrome_Normal.png diff --git a/projects/first_scene/resources/Cutlery/Cutlery_details_BaseColor.png b/projects/first_scene/assets/Cutlery/Cutlery_details_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Cutlery_details_BaseColor.png rename to projects/first_scene/assets/Cutlery/Cutlery_details_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/Cutlery_details_Normal.png b/projects/first_scene/assets/Cutlery/Cutlery_details_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Cutlery_details_Normal.png rename to projects/first_scene/assets/Cutlery/Cutlery_details_Normal.png diff --git a/projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Caps_BaseColor.png b/projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Caps_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Caps_BaseColor.png rename to projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Caps_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Caps_Normal.png b/projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Caps_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Caps_Normal.png rename to projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Caps_Normal.png diff --git a/projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Glass_Wine_BaseColor.png b/projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Glass_Wine_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Glass_Wine_BaseColor.png rename to projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Glass_Wine_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Glass_Wine_Normal.png b/projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Glass_Wine_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Paris_LiquorBottle_01_Glass_Wine_Normal.png rename to projects/first_scene/assets/Cutlery/Paris_LiquorBottle_01_Glass_Wine_Normal.png diff --git a/projects/first_scene/resources/Cutlery/Plates_Ceramic_BaseColor.png b/projects/first_scene/assets/Cutlery/Plates_Ceramic_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Plates_Ceramic_BaseColor.png rename to projects/first_scene/assets/Cutlery/Plates_Ceramic_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/Plates_Ceramic_Normal.png b/projects/first_scene/assets/Cutlery/Plates_Ceramic_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Plates_Ceramic_Normal.png rename to projects/first_scene/assets/Cutlery/Plates_Ceramic_Normal.png diff --git a/projects/first_scene/resources/Cutlery/Plates_Details_BaseColor-Plates_Details_BaseColor.png b/projects/first_scene/assets/Cutlery/Plates_Details_BaseColor-Plates_Details_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Plates_Details_BaseColor-Plates_Details_BaseColor.png rename to projects/first_scene/assets/Cutlery/Plates_Details_BaseColor-Plates_Details_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/Plates_Details_Normal.png b/projects/first_scene/assets/Cutlery/Plates_Details_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/Plates_Details_Normal.png rename to projects/first_scene/assets/Cutlery/Plates_Details_Normal.png diff --git a/projects/first_scene/resources/Cutlery/ToffeeJar_Label_BaseColor.png b/projects/first_scene/assets/Cutlery/ToffeeJar_Label_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/ToffeeJar_Label_BaseColor.png rename to projects/first_scene/assets/Cutlery/ToffeeJar_Label_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/ToffeeJar_Label_Normal.png b/projects/first_scene/assets/Cutlery/ToffeeJar_Label_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/ToffeeJar_Label_Normal.png rename to projects/first_scene/assets/Cutlery/ToffeeJar_Label_Normal.png diff --git a/projects/first_scene/resources/Cutlery/TransparentGlass_BaseColor.png b/projects/first_scene/assets/Cutlery/TransparentGlass_BaseColor.png similarity index 100% rename from projects/first_scene/resources/Cutlery/TransparentGlass_BaseColor.png rename to projects/first_scene/assets/Cutlery/TransparentGlass_BaseColor.png diff --git a/projects/first_scene/resources/Cutlery/TransparentGlass_Normal.png b/projects/first_scene/assets/Cutlery/TransparentGlass_Normal.png similarity index 100% rename from projects/first_scene/resources/Cutlery/TransparentGlass_Normal.png rename to projects/first_scene/assets/Cutlery/TransparentGlass_Normal.png diff --git a/projects/first_scene/resources/Cutlery/cutlerySzene.bin b/projects/first_scene/assets/Cutlery/cutlerySzene.bin similarity index 100% rename from projects/first_scene/resources/Cutlery/cutlerySzene.bin rename to projects/first_scene/assets/Cutlery/cutlerySzene.bin diff --git a/projects/first_scene/resources/Cutlery/cutlerySzene.glb b/projects/first_scene/assets/Cutlery/cutlerySzene.glb similarity index 100% rename from projects/first_scene/resources/Cutlery/cutlerySzene.glb rename to projects/first_scene/assets/Cutlery/cutlerySzene.glb diff --git a/projects/first_scene/resources/Cutlery/cutlerySzene.gltf b/projects/first_scene/assets/Cutlery/cutlerySzene.gltf similarity index 100% rename from projects/first_scene/resources/Cutlery/cutlerySzene.gltf rename to projects/first_scene/assets/Cutlery/cutlerySzene.gltf diff --git a/projects/first_scene/resources/Sponza/Sponza.bin b/projects/first_scene/assets/Sponza/Sponza.bin similarity index 100% rename from projects/first_scene/resources/Sponza/Sponza.bin rename to projects/first_scene/assets/Sponza/Sponza.bin diff --git a/projects/first_scene/resources/Sponza/Sponza.gltf b/projects/first_scene/assets/Sponza/Sponza.gltf similarity index 100% rename from projects/first_scene/resources/Sponza/Sponza.gltf rename to projects/first_scene/assets/Sponza/Sponza.gltf diff --git a/projects/first_scene/resources/Sponza/SponzaFloor.bin b/projects/first_scene/assets/Sponza/SponzaFloor.bin similarity index 100% rename from projects/first_scene/resources/Sponza/SponzaFloor.bin rename to projects/first_scene/assets/Sponza/SponzaFloor.bin diff --git a/projects/first_scene/resources/Sponza/SponzaFloor.gltf b/projects/first_scene/assets/Sponza/SponzaFloor.gltf similarity index 100% rename from projects/first_scene/resources/Sponza/SponzaFloor.gltf rename to projects/first_scene/assets/Sponza/SponzaFloor.gltf diff --git a/projects/first_scene/resources/Sponza/background.png b/projects/first_scene/assets/Sponza/background.png similarity index 100% rename from projects/first_scene/resources/Sponza/background.png rename to projects/first_scene/assets/Sponza/background.png diff --git a/projects/first_scene/resources/Sponza/chain_texture.png b/projects/first_scene/assets/Sponza/chain_texture.png similarity index 100% rename from projects/first_scene/resources/Sponza/chain_texture.png rename to projects/first_scene/assets/Sponza/chain_texture.png diff --git a/projects/first_scene/resources/Sponza/lion.png b/projects/first_scene/assets/Sponza/lion.png similarity index 100% rename from projects/first_scene/resources/Sponza/lion.png rename to projects/first_scene/assets/Sponza/lion.png diff --git a/projects/first_scene/resources/Sponza/spnza_bricks_a_diff.png b/projects/first_scene/assets/Sponza/spnza_bricks_a_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/spnza_bricks_a_diff.png rename to projects/first_scene/assets/Sponza/spnza_bricks_a_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_arch_diff.png b/projects/first_scene/assets/Sponza/sponza_arch_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_arch_diff.png rename to projects/first_scene/assets/Sponza/sponza_arch_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_ceiling_a_diff.png b/projects/first_scene/assets/Sponza/sponza_ceiling_a_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_ceiling_a_diff.png rename to projects/first_scene/assets/Sponza/sponza_ceiling_a_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_column_a_diff.png b/projects/first_scene/assets/Sponza/sponza_column_a_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_column_a_diff.png rename to projects/first_scene/assets/Sponza/sponza_column_a_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_column_b_diff.png b/projects/first_scene/assets/Sponza/sponza_column_b_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_column_b_diff.png rename to projects/first_scene/assets/Sponza/sponza_column_b_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_column_c_diff.png b/projects/first_scene/assets/Sponza/sponza_column_c_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_column_c_diff.png rename to projects/first_scene/assets/Sponza/sponza_column_c_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_curtain_blue_diff.png b/projects/first_scene/assets/Sponza/sponza_curtain_blue_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_curtain_blue_diff.png rename to projects/first_scene/assets/Sponza/sponza_curtain_blue_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_curtain_diff.png b/projects/first_scene/assets/Sponza/sponza_curtain_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_curtain_diff.png rename to projects/first_scene/assets/Sponza/sponza_curtain_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_curtain_green_diff.png b/projects/first_scene/assets/Sponza/sponza_curtain_green_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_curtain_green_diff.png rename to projects/first_scene/assets/Sponza/sponza_curtain_green_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_details_diff.png b/projects/first_scene/assets/Sponza/sponza_details_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_details_diff.png rename to projects/first_scene/assets/Sponza/sponza_details_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_fabric_blue_diff.png b/projects/first_scene/assets/Sponza/sponza_fabric_blue_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_fabric_blue_diff.png rename to projects/first_scene/assets/Sponza/sponza_fabric_blue_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_fabric_diff.png b/projects/first_scene/assets/Sponza/sponza_fabric_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_fabric_diff.png rename to projects/first_scene/assets/Sponza/sponza_fabric_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_fabric_green_diff.png b/projects/first_scene/assets/Sponza/sponza_fabric_green_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_fabric_green_diff.png rename to projects/first_scene/assets/Sponza/sponza_fabric_green_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_flagpole_diff.png b/projects/first_scene/assets/Sponza/sponza_flagpole_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_flagpole_diff.png rename to projects/first_scene/assets/Sponza/sponza_flagpole_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_floor_a_diff.png b/projects/first_scene/assets/Sponza/sponza_floor_a_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_floor_a_diff.png rename to projects/first_scene/assets/Sponza/sponza_floor_a_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_roof_diff.png b/projects/first_scene/assets/Sponza/sponza_roof_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_roof_diff.png rename to projects/first_scene/assets/Sponza/sponza_roof_diff.png diff --git a/projects/first_scene/resources/Sponza/sponza_thorn_diff.png b/projects/first_scene/assets/Sponza/sponza_thorn_diff.png similarity index 100% rename from projects/first_scene/resources/Sponza/sponza_thorn_diff.png rename to projects/first_scene/assets/Sponza/sponza_thorn_diff.png diff --git a/projects/first_scene/resources/Sponza/vase_dif.png b/projects/first_scene/assets/Sponza/vase_dif.png similarity index 100% rename from projects/first_scene/resources/Sponza/vase_dif.png rename to projects/first_scene/assets/Sponza/vase_dif.png diff --git a/projects/first_scene/resources/Sponza/vase_hanging.png b/projects/first_scene/assets/Sponza/vase_hanging.png similarity index 100% rename from projects/first_scene/resources/Sponza/vase_hanging.png rename to projects/first_scene/assets/Sponza/vase_hanging.png diff --git a/projects/first_scene/resources/Sponza/vase_plant.png b/projects/first_scene/assets/Sponza/vase_plant.png similarity index 100% rename from projects/first_scene/resources/Sponza/vase_plant.png rename to projects/first_scene/assets/Sponza/vase_plant.png diff --git a/projects/first_scene/resources/Sponza/vase_round.png b/projects/first_scene/assets/Sponza/vase_round.png similarity index 100% rename from projects/first_scene/resources/Sponza/vase_round.png rename to projects/first_scene/assets/Sponza/vase_round.png diff --git a/projects/first_scene/resources/Szene/Szene.bin b/projects/first_scene/assets/Szene/Szene.bin similarity index 100% rename from projects/first_scene/resources/Szene/Szene.bin rename to projects/first_scene/assets/Szene/Szene.bin diff --git a/projects/first_scene/resources/Szene/Szene.gltf b/projects/first_scene/assets/Szene/Szene.gltf similarity index 100% rename from projects/first_scene/resources/Szene/Szene.gltf rename to projects/first_scene/assets/Szene/Szene.gltf diff --git a/projects/first_scene/resources/Szene/boards2_vcyc.jpg b/projects/first_scene/assets/Szene/boards2_vcyc.jpg similarity index 100% rename from projects/first_scene/resources/Szene/boards2_vcyc.jpg rename to projects/first_scene/assets/Szene/boards2_vcyc.jpg diff --git a/projects/first_scene/resources/Szene/boards2_vcyc_jpg.jpg b/projects/first_scene/assets/Szene/boards2_vcyc_jpg.jpg similarity index 100% rename from projects/first_scene/resources/Szene/boards2_vcyc_jpg.jpg rename to projects/first_scene/assets/Szene/boards2_vcyc_jpg.jpg diff --git a/projects/first_scene/resources/shaders/shader.frag b/projects/first_scene/assets/shaders/shader.frag similarity index 100% rename from projects/first_scene/resources/shaders/shader.frag rename to projects/first_scene/assets/shaders/shader.frag diff --git a/projects/first_scene/resources/shaders/shader.vert b/projects/first_scene/assets/shaders/shader.vert similarity index 100% rename from projects/first_scene/resources/shaders/shader.vert rename to projects/first_scene/assets/shaders/shader.vert diff --git a/projects/first_scene/src/main.cpp b/projects/first_scene/src/main.cpp index 95755fca1b59bb4b41e8d741e097bb09239fd9d0..17ac917a57a2ece0dda4c8b20750792a0491340d 100644 --- a/projects/first_scene/src/main.cpp +++ b/projects/first_scene/src/main.cpp @@ -32,7 +32,7 @@ int main(int argc, const char** argv) { cameraManager.getCamera(camIndex1).setNearFar(0.1f, 30.0f); vkcv::scene::Scene scene = vkcv::scene::Scene::load(core, std::filesystem::path( - argc > 1 ? argv[1] : "resources/Sponza/Sponza.gltf" + argc > 1 ? argv[1] : "assets/Sponza/Sponza.gltf" )); const vkcv::AttachmentDescription present_color_attachment( @@ -58,12 +58,12 @@ int main(int argc, const char** argv) { vkcv::ShaderProgram sceneShaderProgram; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/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"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/shader.frag"), [&sceneShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { sceneShaderProgram.addShader(shaderStage, path); }); @@ -92,8 +92,14 @@ int main(int argc, const char** argv) { std::cout << "Error. Could not create graphics pipeline. Exiting." << std::endl; return EXIT_FAILURE; } + + auto swapchainExtent = core.getSwapchain().getExtent(); - vkcv::ImageHandle depthBuffer = core.createImage(vk::Format::eD32Sfloat, windowWidth, windowHeight).getHandle(); + vkcv::ImageHandle depthBuffer = core.createImage( + vk::Format::eD32Sfloat, + swapchainExtent.width, + swapchainExtent.height + ).getHandle(); const vkcv::ImageHandle swapchainInput = vkcv::ImageHandle::createSwapchainImageHandle(); @@ -109,11 +115,11 @@ int main(int argc, const char** argv) { continue; } - if ((swapchainWidth != windowWidth) || ((swapchainHeight != windowHeight))) { + if ((swapchainWidth != swapchainExtent.width) || ((swapchainHeight != swapchainExtent.height))) { depthBuffer = core.createImage(vk::Format::eD32Sfloat, swapchainWidth, swapchainHeight).getHandle(); - windowWidth = swapchainWidth; - windowHeight = swapchainHeight; + swapchainExtent.width = swapchainWidth; + swapchainExtent.height = swapchainHeight; } auto end = std::chrono::system_clock::now(); diff --git a/projects/first_triangle/src/main.cpp b/projects/first_triangle/src/main.cpp index 5b69539fe95ab22059d4c7fb81a380e7c2836e72..78ec4afe42aa96aec781e6b873676453d083487c 100644 --- a/projects/first_triangle/src/main.cpp +++ b/projects/first_triangle/src/main.cpp @@ -56,11 +56,13 @@ int main(int argc, const char** argv) { [&triangleShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { triangleShaderProgram.addShader(shaderStage, path); }); + + const auto swapchainExtent = core.getSwapchain(windowHandle).getExtent(); const vkcv::PipelineConfig trianglePipelineDefinition { triangleShaderProgram, - (uint32_t)windowWidth, - (uint32_t)windowHeight, + swapchainExtent.width, + swapchainExtent.height, trianglePass, {}, {}, diff --git a/projects/indirect_dispatch/resources/models/cube.bin b/projects/indirect_dispatch/assets/models/cube.bin similarity index 100% rename from projects/indirect_dispatch/resources/models/cube.bin rename to projects/indirect_dispatch/assets/models/cube.bin diff --git a/projects/indirect_dispatch/resources/models/cube.gltf b/projects/indirect_dispatch/assets/models/cube.gltf similarity index 100% rename from projects/indirect_dispatch/resources/models/cube.gltf rename to projects/indirect_dispatch/assets/models/cube.gltf diff --git a/projects/indirect_dispatch/resources/models/grid.png b/projects/indirect_dispatch/assets/models/grid.png similarity index 100% rename from projects/indirect_dispatch/resources/models/grid.png rename to projects/indirect_dispatch/assets/models/grid.png diff --git a/projects/indirect_dispatch/resources/models/ground.bin b/projects/indirect_dispatch/assets/models/ground.bin similarity index 100% rename from projects/indirect_dispatch/resources/models/ground.bin rename to projects/indirect_dispatch/assets/models/ground.bin diff --git a/projects/indirect_dispatch/resources/models/ground.gltf b/projects/indirect_dispatch/assets/models/ground.gltf similarity index 100% rename from projects/indirect_dispatch/resources/models/ground.gltf rename to projects/indirect_dispatch/assets/models/ground.gltf diff --git a/projects/indirect_dispatch/resources/shaders/gammaCorrection.comp b/projects/indirect_dispatch/assets/shaders/gammaCorrection.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/gammaCorrection.comp rename to projects/indirect_dispatch/assets/shaders/gammaCorrection.comp diff --git a/projects/indirect_dispatch/resources/shaders/mesh.frag b/projects/indirect_dispatch/assets/shaders/mesh.frag similarity index 100% rename from projects/indirect_dispatch/resources/shaders/mesh.frag rename to projects/indirect_dispatch/assets/shaders/mesh.frag diff --git a/projects/indirect_dispatch/resources/shaders/mesh.vert b/projects/indirect_dispatch/assets/shaders/mesh.vert similarity index 100% rename from projects/indirect_dispatch/resources/shaders/mesh.vert rename to projects/indirect_dispatch/assets/shaders/mesh.vert diff --git a/projects/indirect_dispatch/resources/shaders/motionBlur.comp b/projects/indirect_dispatch/assets/shaders/motionBlur.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlur.comp rename to projects/indirect_dispatch/assets/shaders/motionBlur.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionBlur.inc b/projects/indirect_dispatch/assets/shaders/motionBlur.inc similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlur.inc rename to projects/indirect_dispatch/assets/shaders/motionBlur.inc diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurColorCopy.comp b/projects/indirect_dispatch/assets/shaders/motionBlurColorCopy.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurColorCopy.comp rename to projects/indirect_dispatch/assets/shaders/motionBlurColorCopy.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurConfig.inc b/projects/indirect_dispatch/assets/shaders/motionBlurConfig.inc similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurConfig.inc rename to projects/indirect_dispatch/assets/shaders/motionBlurConfig.inc diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurFastPath.comp b/projects/indirect_dispatch/assets/shaders/motionBlurFastPath.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurFastPath.comp rename to projects/indirect_dispatch/assets/shaders/motionBlurFastPath.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurTileClassification.comp b/projects/indirect_dispatch/assets/shaders/motionBlurTileClassification.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurTileClassification.comp rename to projects/indirect_dispatch/assets/shaders/motionBlurTileClassification.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurTileClassificationVis.comp b/projects/indirect_dispatch/assets/shaders/motionBlurTileClassificationVis.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurTileClassificationVis.comp rename to projects/indirect_dispatch/assets/shaders/motionBlurTileClassificationVis.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurWorkTile.inc b/projects/indirect_dispatch/assets/shaders/motionBlurWorkTile.inc similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurWorkTile.inc rename to projects/indirect_dispatch/assets/shaders/motionBlurWorkTile.inc diff --git a/projects/indirect_dispatch/resources/shaders/motionBlurWorkTileReset.comp b/projects/indirect_dispatch/assets/shaders/motionBlurWorkTileReset.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionBlurWorkTileReset.comp rename to projects/indirect_dispatch/assets/shaders/motionBlurWorkTileReset.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionVector.inc b/projects/indirect_dispatch/assets/shaders/motionVector.inc similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionVector.inc rename to projects/indirect_dispatch/assets/shaders/motionVector.inc diff --git a/projects/indirect_dispatch/resources/shaders/motionVectorMinMax.comp b/projects/indirect_dispatch/assets/shaders/motionVectorMinMax.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionVectorMinMax.comp rename to projects/indirect_dispatch/assets/shaders/motionVectorMinMax.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionVectorMinMaxNeighbourhood.comp b/projects/indirect_dispatch/assets/shaders/motionVectorMinMaxNeighbourhood.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionVectorMinMaxNeighbourhood.comp rename to projects/indirect_dispatch/assets/shaders/motionVectorMinMaxNeighbourhood.comp diff --git a/projects/indirect_dispatch/resources/shaders/motionVectorVisualisation.comp b/projects/indirect_dispatch/assets/shaders/motionVectorVisualisation.comp similarity index 100% rename from projects/indirect_dispatch/resources/shaders/motionVectorVisualisation.comp rename to projects/indirect_dispatch/assets/shaders/motionVectorVisualisation.comp diff --git a/projects/indirect_dispatch/resources/shaders/prepass.frag b/projects/indirect_dispatch/assets/shaders/prepass.frag similarity index 100% rename from projects/indirect_dispatch/resources/shaders/prepass.frag rename to projects/indirect_dispatch/assets/shaders/prepass.frag diff --git a/projects/indirect_dispatch/resources/shaders/prepass.vert b/projects/indirect_dispatch/assets/shaders/prepass.vert similarity index 100% rename from projects/indirect_dispatch/resources/shaders/prepass.vert rename to projects/indirect_dispatch/assets/shaders/prepass.vert diff --git a/projects/indirect_dispatch/resources/shaders/sky.frag b/projects/indirect_dispatch/assets/shaders/sky.frag similarity index 100% rename from projects/indirect_dispatch/resources/shaders/sky.frag rename to projects/indirect_dispatch/assets/shaders/sky.frag diff --git a/projects/indirect_dispatch/resources/shaders/sky.vert b/projects/indirect_dispatch/assets/shaders/sky.vert similarity index 100% rename from projects/indirect_dispatch/resources/shaders/sky.vert rename to projects/indirect_dispatch/assets/shaders/sky.vert diff --git a/projects/indirect_dispatch/resources/shaders/skyPrepass.frag b/projects/indirect_dispatch/assets/shaders/skyPrepass.frag similarity index 100% rename from projects/indirect_dispatch/resources/shaders/skyPrepass.frag rename to projects/indirect_dispatch/assets/shaders/skyPrepass.frag diff --git a/projects/indirect_dispatch/resources/shaders/skyPrepass.vert b/projects/indirect_dispatch/assets/shaders/skyPrepass.vert similarity index 100% rename from projects/indirect_dispatch/resources/shaders/skyPrepass.vert rename to projects/indirect_dispatch/assets/shaders/skyPrepass.vert diff --git a/projects/indirect_dispatch/src/App.cpp b/projects/indirect_dispatch/src/App.cpp index 83b8aa524d55ffe021a2f9dc3fd6ff02b1c04ee9..8b2db80a002a520571c91aa157bde685203bd96a 100644 --- a/projects/indirect_dispatch/src/App.cpp +++ b/projects/indirect_dispatch/src/App.cpp @@ -30,16 +30,16 @@ bool App::initialize() { if (!loadSkyPrePass(m_core, &m_skyPrePass)) return false; - if (!loadComputePass(m_core, "resources/shaders/gammaCorrection.comp", &m_gammaCorrectionPass)) + if (!loadComputePass(m_core, "assets/shaders/gammaCorrection.comp", &m_gammaCorrectionPass)) return false; - if (!loadMesh(m_core, "resources/models/cube.gltf", &m_cubeMesh)) + if (!loadMesh(m_core, "assets/models/cube.gltf", &m_cubeMesh)) return false; - if (!loadMesh(m_core, "resources/models/ground.gltf", &m_groundMesh)) + if (!loadMesh(m_core, "assets/models/ground.gltf", &m_groundMesh)) return false; - if(!loadImage(m_core, "resources/models/grid.png", &m_gridTexture)) + if(!loadImage(m_core, "assets/models/grid.png", &m_gridTexture)) return false; if (!m_motionBlur.initialize(&m_core, m_windowWidth, m_windowHeight)) diff --git a/projects/indirect_dispatch/src/AppSetup.cpp b/projects/indirect_dispatch/src/AppSetup.cpp index 659ceffd55570db64cf26ed1597d8256c3b8efa0..729072cfabd2c7ac109b121ac4bc5e0304b9662e 100644 --- a/projects/indirect_dispatch/src/AppSetup.cpp +++ b/projects/indirect_dispatch/src/AppSetup.cpp @@ -166,8 +166,8 @@ bool loadMeshPass(vkcv::Core& core, GraphicPassHandles* outHandles) { return loadGraphicPass( core, - "resources/shaders/mesh.vert", - "resources/shaders/mesh.frag", + "assets/shaders/mesh.vert", + "assets/shaders/mesh.frag", vkcv::PassConfig({ colorAttachment, depthAttachment }), vkcv::DepthTest::Equal, outHandles); @@ -189,8 +189,8 @@ bool loadSkyPass(vkcv::Core& core, GraphicPassHandles* outHandles) { return loadGraphicPass( core, - "resources/shaders/sky.vert", - "resources/shaders/sky.frag", + "assets/shaders/sky.vert", + "assets/shaders/sky.frag", vkcv::PassConfig({ colorAttachment, depthAttachment }), vkcv::DepthTest::Equal, outHandles); @@ -211,8 +211,8 @@ bool loadPrePass(vkcv::Core& core, GraphicPassHandles* outHandles) { return loadGraphicPass( core, - "resources/shaders/prepass.vert", - "resources/shaders/prepass.frag", + "assets/shaders/prepass.vert", + "assets/shaders/prepass.frag", vkcv::PassConfig({ motionAttachment, depthAttachment }), vkcv::DepthTest::LessEqual, outHandles); @@ -233,8 +233,8 @@ bool loadSkyPrePass(vkcv::Core& core, GraphicPassHandles* outHandles) { return loadGraphicPass( core, - "resources/shaders/skyPrepass.vert", - "resources/shaders/skyPrepass.frag", + "assets/shaders/skyPrepass.vert", + "assets/shaders/skyPrepass.frag", vkcv::PassConfig({ motionAttachment, depthAttachment }), vkcv::DepthTest::LessEqual, outHandles); diff --git a/projects/indirect_dispatch/src/MotionBlur.cpp b/projects/indirect_dispatch/src/MotionBlur.cpp index 49f650a97e2fea5821959ae53f468e6fe7de6ffe..fea5b1d6f726851ad1d88e71301bffb0f6d71f4a 100644 --- a/projects/indirect_dispatch/src/MotionBlur.cpp +++ b/projects/indirect_dispatch/src/MotionBlur.cpp @@ -24,31 +24,31 @@ bool MotionBlur::initialize(vkcv::Core* corePtr, const uint32_t targetWidth, con m_core = corePtr; - if (!loadComputePass(*m_core, "resources/shaders/motionBlur.comp", &m_motionBlurPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionBlur.comp", &m_motionBlurPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionVectorMinMax.comp", &m_motionVectorMinMaxPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionVectorMinMax.comp", &m_motionVectorMinMaxPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionVectorMinMaxNeighbourhood.comp", &m_motionVectorMinMaxNeighbourhoodPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionVectorMinMaxNeighbourhood.comp", &m_motionVectorMinMaxNeighbourhoodPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionVectorVisualisation.comp", &m_motionVectorVisualisationPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionVectorVisualisation.comp", &m_motionVectorVisualisationPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionBlurColorCopy.comp", &m_colorCopyPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionBlurColorCopy.comp", &m_colorCopyPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionBlurTileClassification.comp", &m_tileClassificationPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionBlurTileClassification.comp", &m_tileClassificationPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionBlurWorkTileReset.comp", &m_tileResetPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionBlurWorkTileReset.comp", &m_tileResetPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionBlurTileClassificationVis.comp", &m_tileVisualisationPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionBlurTileClassificationVis.comp", &m_tileVisualisationPass)) return false; - if (!loadComputePass(*m_core, "resources/shaders/motionBlurFastPath.comp", &m_motionBlurFastPathPass)) + if (!loadComputePass(*m_core, "assets/shaders/motionBlurFastPath.comp", &m_motionBlurFastPathPass)) return false; // work tile buffers and descriptors diff --git a/projects/mesh_shader/resources/Bunny/Bunny.glb b/projects/mesh_shader/assets/Bunny/Bunny.glb similarity index 100% rename from projects/mesh_shader/resources/Bunny/Bunny.glb rename to projects/mesh_shader/assets/Bunny/Bunny.glb diff --git a/projects/mesh_shader/resources/monke.glb b/projects/mesh_shader/assets/monke.glb similarity index 100% rename from projects/mesh_shader/resources/monke.glb rename to projects/mesh_shader/assets/monke.glb diff --git a/projects/mesh_shader/resources/shaders/common.inc b/projects/mesh_shader/assets/shaders/common.inc similarity index 100% rename from projects/mesh_shader/resources/shaders/common.inc rename to projects/mesh_shader/assets/shaders/common.inc diff --git a/projects/mesh_shader/resources/shaders/meshlet.inc b/projects/mesh_shader/assets/shaders/meshlet.inc similarity index 100% rename from projects/mesh_shader/resources/shaders/meshlet.inc rename to projects/mesh_shader/assets/shaders/meshlet.inc diff --git a/projects/mesh_shader/resources/shaders/shader.frag b/projects/mesh_shader/assets/shaders/shader.frag similarity index 100% rename from projects/mesh_shader/resources/shaders/shader.frag rename to projects/mesh_shader/assets/shaders/shader.frag diff --git a/projects/mesh_shader/resources/shaders/shader.mesh b/projects/mesh_shader/assets/shaders/shader.mesh similarity index 100% rename from projects/mesh_shader/resources/shaders/shader.mesh rename to projects/mesh_shader/assets/shaders/shader.mesh diff --git a/projects/mesh_shader/resources/shaders/shader.task b/projects/mesh_shader/assets/shaders/shader.task similarity index 100% rename from projects/mesh_shader/resources/shaders/shader.task rename to projects/mesh_shader/assets/shaders/shader.task diff --git a/projects/mesh_shader/resources/shaders/shader.vert b/projects/mesh_shader/assets/shaders/shader.vert similarity index 100% rename from projects/mesh_shader/resources/shaders/shader.vert rename to projects/mesh_shader/assets/shaders/shader.vert diff --git a/projects/mesh_shader/src/main.cpp b/projects/mesh_shader/src/main.cpp index 3066213bf7d9ba9998417762590c3ff58f06ecf6..bbfe16ac549383d13fe5f400802d3dfed267db50 100644 --- a/projects/mesh_shader/src/main.cpp +++ b/projects/mesh_shader/src/main.cpp @@ -101,7 +101,7 @@ int main(int argc, const char** argv) { vkcv::gui::GUI gui (core, windowHandle); vkcv::asset::Scene mesh; - const char* path = argc > 1 ? argv[1] : "resources/Bunny/Bunny.glb"; + const char* path = argc > 1 ? argv[1] : "assets/Bunny/Bunny.glb"; vkcv::asset::loadScene(path, mesh); assert(!mesh.vertexGroups.empty()); @@ -183,12 +183,12 @@ int main(int argc, const char** argv) { vkcv::ShaderProgram bunnyShaderProgram{}; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/shaders/shader.vert"), [&bunnyShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { bunnyShaderProgram.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/shader.frag"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/shader.frag"), [&bunnyShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { bunnyShaderProgram.addShader(shaderStage, path); }); @@ -203,10 +203,12 @@ int main(int argc, const char** argv) { vkcv::DescriptorSetLayoutHandle vertexShaderDescriptorSetLayout = core.createDescriptorSetLayout(bunnyShaderProgram.getReflectedDescriptors().at(0)); vkcv::DescriptorSetHandle vertexShaderDescriptorSet = core.createDescriptorSet(vertexShaderDescriptorSetLayout); + auto swapchainExtent = core.getSwapchain().getExtent(); + const vkcv::PipelineConfig bunnyPipelineDefinition { bunnyShaderProgram, - (uint32_t)windowWidth, - (uint32_t)windowHeight, + swapchainExtent.width, + swapchainExtent.height, renderPass, { bunnyLayout }, { core.getDescriptorSetLayout(vertexShaderDescriptorSetLayout).vulkanHandle }, @@ -234,17 +236,17 @@ int main(int argc, const char** argv) { // mesh shader vkcv::ShaderProgram meshShaderProgram; - compiler.compile(vkcv::ShaderStage::TASK, std::filesystem::path("resources/shaders/shader.task"), + compiler.compile(vkcv::ShaderStage::TASK, std::filesystem::path("assets/shaders/shader.task"), [&meshShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { meshShaderProgram.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::MESH, std::filesystem::path("resources/shaders/shader.mesh"), + compiler.compile(vkcv::ShaderStage::MESH, std::filesystem::path("assets/shaders/shader.mesh"), [&meshShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { meshShaderProgram.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/shader.frag"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/shader.frag"), [&meshShaderProgram](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { meshShaderProgram.addShader(shaderStage, path); }); @@ -255,8 +257,8 @@ int main(int argc, const char** argv) { const vkcv::PipelineConfig meshShaderPipelineDefinition{ meshShaderProgram, - (uint32_t)windowWidth, - (uint32_t)windowHeight, + swapchainExtent.width, + swapchainExtent.height, renderPass, {meshShaderLayout}, {core.getDescriptorSetLayout(meshShaderDescriptorSetLayout).vulkanHandle}, @@ -287,7 +289,12 @@ int main(int argc, const char** argv) { core.writeDescriptorSet( meshShaderDescriptorSet, meshShaderWrites); - vkcv::ImageHandle depthBuffer = core.createImage(vk::Format::eD32Sfloat, windowWidth, windowHeight, 1, false).getHandle(); + vkcv::ImageHandle depthBuffer = core.createImage( + vk::Format::eD32Sfloat, + swapchainExtent.width, + swapchainExtent.height, + 1, false + ).getHandle(); auto start = std::chrono::system_clock::now(); diff --git a/projects/particle_simulation/src/main.cpp b/projects/particle_simulation/src/main.cpp index 6cfd04d0badf723f5fbaa83fa014763d8593c802..4171c73a4a9e101502a46885a6eff9c97130f3a8 100644 --- a/projects/particle_simulation/src/main.cpp +++ b/projects/particle_simulation/src/main.cpp @@ -209,12 +209,23 @@ int main(int argc, const char **argv) { cameraManager.getCamera(camIndex1).setPosition(glm::vec3(0.0f, 0.0f, -2.0f)); cameraManager.getCamera(camIndex1).setCenter(glm::vec3(0.0f, 0.0f, 0.0f)); - vkcv::ImageHandle colorBuffer = core.createImage(colorFormat, windowWidth, windowHeight, 1, false, true, true).getHandle(); - BloomAndFlares bloomAndFlares(&core, colorFormat, windowWidth, windowHeight); + auto swapchainExtent = core.getSwapchain().getExtent(); + + vkcv::ImageHandle colorBuffer = core.createImage( + colorFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, true, true + ).getHandle(); + BloomAndFlares bloomAndFlares(&core, colorFormat, swapchainExtent.width, swapchainExtent.height); window.e_resize.add([&](int width, int height) { - windowWidth = width; - windowHeight = height; - colorBuffer = core.createImage(colorFormat, windowWidth, windowHeight, 1, false, true, true).getHandle(); + swapchainExtent = core.getSwapchain().getExtent(); + colorBuffer = core.createImage( + colorFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, true, true + ).getHandle(); bloomAndFlares.updateImageDimensions(width, height); }); @@ -298,8 +309,8 @@ int main(int argc, const char **argv) { core.writeDescriptorSet(tonemappingDescriptor, tonemappingDescriptorWrites); uint32_t tonemappingDispatchCount[3]; - tonemappingDispatchCount[0] = std::ceil(windowWidth / 8.f); - tonemappingDispatchCount[1] = std::ceil(windowHeight / 8.f); + tonemappingDispatchCount[0] = std::ceil(swapchainExtent.width / 8.f); + tonemappingDispatchCount[1] = std::ceil(swapchainExtent.height / 8.f); tonemappingDispatchCount[2] = 1; core.recordComputeDispatchToCmdStream( diff --git a/projects/voxelization/resources/RadialLUT.png b/projects/voxelization/assets/RadialLUT.png similarity index 100% rename from projects/voxelization/resources/RadialLUT.png rename to projects/voxelization/assets/RadialLUT.png diff --git a/projects/voxelization/resources/Sponza/Sponza.bin b/projects/voxelization/assets/Sponza/Sponza.bin similarity index 100% rename from projects/voxelization/resources/Sponza/Sponza.bin rename to projects/voxelization/assets/Sponza/Sponza.bin diff --git a/projects/voxelization/resources/Sponza/Sponza.gltf b/projects/voxelization/assets/Sponza/Sponza.gltf similarity index 100% rename from projects/voxelization/resources/Sponza/Sponza.gltf rename to projects/voxelization/assets/Sponza/Sponza.gltf diff --git a/projects/voxelization/resources/Sponza/Textures/Arch_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Arch_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Arch_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Arch_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Arch_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Arch_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Arch_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Arch_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Arch_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Arch_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Arch_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Arch_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Background_Albedo.png b/projects/voxelization/assets/Sponza/Textures/Background_Albedo.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Background_Albedo.png rename to projects/voxelization/assets/Sponza/Textures/Background_Albedo.png diff --git a/projects/voxelization/resources/Sponza/Textures/Background_Normal.png b/projects/voxelization/assets/Sponza/Textures/Background_Normal.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Background_Normal.png rename to projects/voxelization/assets/Sponza/Textures/Background_Normal.png diff --git a/projects/voxelization/resources/Sponza/Textures/Background_Roughness.png b/projects/voxelization/assets/Sponza/Textures/Background_Roughness.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Background_Roughness.png rename to projects/voxelization/assets/Sponza/Textures/Background_Roughness.png diff --git a/projects/voxelization/resources/Sponza/Textures/Bricks_A_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Bricks_A_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Bricks_A_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Bricks_A_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Bricks_A_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Bricks_A_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Bricks_A_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Bricks_A_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Bricks_A_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Bricks_A_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Bricks_A_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Bricks_A_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Ceiling_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Ceiling_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Ceiling_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Ceiling_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Ceiling_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Ceiling_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Ceiling_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Ceiling_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Ceiling_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Ceiling_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Ceiling_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Ceiling_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Chain_Diff.png b/projects/voxelization/assets/Sponza/Textures/Chain_Diff.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Chain_Diff.png rename to projects/voxelization/assets/Sponza/Textures/Chain_Diff.png diff --git a/projects/voxelization/resources/Sponza/Textures/Chain_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Chain_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Chain_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Chain_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Cloth1_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Cloth1_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Cloth1_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Cloth1_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Cloth1_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Cloth1_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Cloth1_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Cloth1_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Cloth2_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Cloth2_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Cloth2_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Cloth2_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Cloth2_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Cloth2_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Cloth2_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Cloth2_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothBlue1_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/ClothBlue1_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothBlue1_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothBlue1_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothBlue2_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/ClothBlue2_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothBlue2_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothBlue2_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothBlue2_Diff_jpg.jpg b/projects/voxelization/assets/Sponza/Textures/ClothBlue2_Diff_jpg.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothBlue2_Diff_jpg.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothBlue2_Diff_jpg.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothGreen1_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/ClothGreen1_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothGreen1_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothGreen1_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothGreen2_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/ClothGreen2_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothGreen2_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothGreen2_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothRed1_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/ClothRed1_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothRed1_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothRed1_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/ClothRed2_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/ClothRed2_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/ClothRed2_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/ClothRed2_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_B_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Column_B_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_B_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_B_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_B_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Column_B_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_B_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_B_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_B_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Column_B_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_B_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_B_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_C_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Column_C_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_C_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_C_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_C_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Column_C_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_C_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_C_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_C_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Column_C_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_C_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_C_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Column_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Column_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Column_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Column_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Column_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Column_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Detail_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Detail_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Detail_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Detail_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Detail_norm.jpg b/projects/voxelization/assets/Sponza/Textures/Detail_norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Detail_norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Detail_norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Detail_spec.jpg b/projects/voxelization/assets/Sponza/Textures/Detail_spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Detail_spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Detail_spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Fill_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Fill_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Fill_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Fill_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Flagpole_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Flagpole_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Flagpole_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Flagpole_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Flagpole_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Flagpole_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Flagpole_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Flagpole_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Flagpole_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Flagpole_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Flagpole_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Flagpole_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Floor_A_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Floor_A_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Floor_A_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Floor_A_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Floor_A_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Floor_A_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Floor_A_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Floor_A_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Floor_A_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Floor_A_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Floor_A_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Floor_A_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Flower_Diff.png b/projects/voxelization/assets/Sponza/Textures/Flower_Diff.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Flower_Diff.png rename to projects/voxelization/assets/Sponza/Textures/Flower_Diff.png diff --git a/projects/voxelization/resources/Sponza/Textures/Flower_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Flower_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Flower_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Flower_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Flower_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Flower_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Flower_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Flower_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Lion_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Lion_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Lion_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Lion_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Lion_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Lion_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Lion_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Lion_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Lion_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Lion_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Lion_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Lion_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Roof_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Roof_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Roof_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Roof_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Roof_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Roof_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Roof_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Roof_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Roof_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Roof_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Roof_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Roof_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Shield_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Shield_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Shield_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Shield_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Shield_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Shield_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Shield_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Shield_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Shield_diff.jpg b/projects/voxelization/assets/Sponza/Textures/Shield_diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Shield_diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Shield_diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Thorn_Diff.png b/projects/voxelization/assets/Sponza/Textures/Thorn_Diff.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Thorn_Diff.png rename to projects/voxelization/assets/Sponza/Textures/Thorn_Diff.png diff --git a/projects/voxelization/resources/Sponza/Textures/Thorn_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Thorn_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Thorn_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Thorn_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Thorn_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Thorn_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Thorn_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Thorn_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/VaseRound_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/VaseRound_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/VaseRound_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/VaseRound_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/VaseRound_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/VaseRound_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/VaseRound_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/VaseRound_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/VaseRound_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/VaseRound_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/VaseRound_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/VaseRound_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Vase_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Vase_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Vase_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Vase_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Vase_Hanging_Diff.jpg b/projects/voxelization/assets/Sponza/Textures/Vase_Hanging_Diff.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Vase_Hanging_Diff.jpg rename to projects/voxelization/assets/Sponza/Textures/Vase_Hanging_Diff.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Vase_Hanging_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Vase_Hanging_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Vase_Hanging_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Vase_Hanging_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Vase_Hanging_Spec.jpg b/projects/voxelization/assets/Sponza/Textures/Vase_Hanging_Spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Vase_Hanging_Spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Vase_Hanging_Spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Vase_Norm.jpg b/projects/voxelization/assets/Sponza/Textures/Vase_Norm.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Vase_Norm.jpg rename to projects/voxelization/assets/Sponza/Textures/Vase_Norm.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/Vase_spec.jpg b/projects/voxelization/assets/Sponza/Textures/Vase_spec.jpg similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/Vase_spec.jpg rename to projects/voxelization/assets/Sponza/Textures/Vase_spec.jpg diff --git a/projects/voxelization/resources/Sponza/Textures/white.png b/projects/voxelization/assets/Sponza/Textures/white.png similarity index 100% rename from projects/voxelization/resources/Sponza/Textures/white.png rename to projects/voxelization/assets/Sponza/Textures/white.png diff --git a/projects/voxelization/resources/cube/boards2_vcyc_jpg.jpg b/projects/voxelization/assets/cube/boards2_vcyc_jpg.jpg similarity index 100% rename from projects/voxelization/resources/cube/boards2_vcyc_jpg.jpg rename to projects/voxelization/assets/cube/boards2_vcyc_jpg.jpg diff --git a/projects/voxelization/resources/cube/cube.bin b/projects/voxelization/assets/cube/cube.bin similarity index 100% rename from projects/voxelization/resources/cube/cube.bin rename to projects/voxelization/assets/cube/cube.bin diff --git a/projects/voxelization/resources/cube/cube.blend b/projects/voxelization/assets/cube/cube.blend similarity index 100% rename from projects/voxelization/resources/cube/cube.blend rename to projects/voxelization/assets/cube/cube.blend diff --git a/projects/voxelization/resources/cube/cube.blend1 b/projects/voxelization/assets/cube/cube.blend1 similarity index 100% rename from projects/voxelization/resources/cube/cube.blend1 rename to projects/voxelization/assets/cube/cube.blend1 diff --git a/projects/voxelization/resources/cube/cube.glb b/projects/voxelization/assets/cube/cube.glb similarity index 100% rename from projects/voxelization/resources/cube/cube.glb rename to projects/voxelization/assets/cube/cube.glb diff --git a/projects/voxelization/resources/cube/cube.gltf b/projects/voxelization/assets/cube/cube.gltf similarity index 100% rename from projects/voxelization/resources/cube/cube.gltf rename to projects/voxelization/assets/cube/cube.gltf diff --git a/projects/voxelization/resources/lensDirt.jpg b/projects/voxelization/assets/lensDirt.jpg similarity index 100% rename from projects/voxelization/resources/lensDirt.jpg rename to projects/voxelization/assets/lensDirt.jpg diff --git a/projects/voxelization/resources/shaders/bloomDownsample.comp b/projects/voxelization/assets/shaders/bloomDownsample.comp similarity index 100% rename from projects/voxelization/resources/shaders/bloomDownsample.comp rename to projects/voxelization/assets/shaders/bloomDownsample.comp diff --git a/projects/voxelization/resources/shaders/bloomFlaresComposite.comp b/projects/voxelization/assets/shaders/bloomFlaresComposite.comp similarity index 100% rename from projects/voxelization/resources/shaders/bloomFlaresComposite.comp rename to projects/voxelization/assets/shaders/bloomFlaresComposite.comp diff --git a/projects/voxelization/resources/shaders/bloomUpsample.comp b/projects/voxelization/assets/shaders/bloomUpsample.comp similarity index 100% rename from projects/voxelization/resources/shaders/bloomUpsample.comp rename to projects/voxelization/assets/shaders/bloomUpsample.comp diff --git a/projects/voxelization/resources/shaders/brdf.inc b/projects/voxelization/assets/shaders/brdf.inc similarity index 100% rename from projects/voxelization/resources/shaders/brdf.inc rename to projects/voxelization/assets/shaders/brdf.inc diff --git a/projects/voxelization/resources/shaders/depthPrepass.frag b/projects/voxelization/assets/shaders/depthPrepass.frag similarity index 100% rename from projects/voxelization/resources/shaders/depthPrepass.frag rename to projects/voxelization/assets/shaders/depthPrepass.frag diff --git a/projects/voxelization/resources/shaders/depthPrepass.vert b/projects/voxelization/assets/shaders/depthPrepass.vert similarity index 100% rename from projects/voxelization/resources/shaders/depthPrepass.vert rename to projects/voxelization/assets/shaders/depthPrepass.vert diff --git a/projects/voxelization/resources/shaders/depthToMoments.comp b/projects/voxelization/assets/shaders/depthToMoments.comp similarity index 100% rename from projects/voxelization/resources/shaders/depthToMoments.comp rename to projects/voxelization/assets/shaders/depthToMoments.comp diff --git a/projects/voxelization/resources/shaders/lensFlares.comp b/projects/voxelization/assets/shaders/lensFlares.comp similarity index 100% rename from projects/voxelization/resources/shaders/lensFlares.comp rename to projects/voxelization/assets/shaders/lensFlares.comp diff --git a/projects/voxelization/resources/shaders/lightInfo.inc b/projects/voxelization/assets/shaders/lightInfo.inc similarity index 100% rename from projects/voxelization/resources/shaders/lightInfo.inc rename to projects/voxelization/assets/shaders/lightInfo.inc diff --git a/projects/voxelization/resources/shaders/luma.inc b/projects/voxelization/assets/shaders/luma.inc similarity index 100% rename from projects/voxelization/resources/shaders/luma.inc rename to projects/voxelization/assets/shaders/luma.inc diff --git a/projects/voxelization/resources/shaders/msaa4XResolve.comp b/projects/voxelization/assets/shaders/msaa4XResolve.comp similarity index 100% rename from projects/voxelization/resources/shaders/msaa4XResolve.comp rename to projects/voxelization/assets/shaders/msaa4XResolve.comp diff --git a/projects/voxelization/resources/shaders/perMeshResources.inc b/projects/voxelization/assets/shaders/perMeshResources.inc similarity index 100% rename from projects/voxelization/resources/shaders/perMeshResources.inc rename to projects/voxelization/assets/shaders/perMeshResources.inc diff --git a/projects/voxelization/resources/shaders/postEffects.comp b/projects/voxelization/assets/shaders/postEffects.comp similarity index 100% rename from projects/voxelization/resources/shaders/postEffects.comp rename to projects/voxelization/assets/shaders/postEffects.comp diff --git a/projects/voxelization/resources/shaders/shader.frag b/projects/voxelization/assets/shaders/shader.frag similarity index 100% rename from projects/voxelization/resources/shaders/shader.frag rename to projects/voxelization/assets/shaders/shader.frag diff --git a/projects/voxelization/resources/shaders/shader.vert b/projects/voxelization/assets/shaders/shader.vert similarity index 100% rename from projects/voxelization/resources/shaders/shader.vert rename to projects/voxelization/assets/shaders/shader.vert diff --git a/projects/voxelization/resources/shaders/shadow.frag b/projects/voxelization/assets/shaders/shadow.frag similarity index 100% rename from projects/voxelization/resources/shaders/shadow.frag rename to projects/voxelization/assets/shaders/shadow.frag diff --git a/projects/voxelization/resources/shaders/shadow.vert b/projects/voxelization/assets/shaders/shadow.vert similarity index 100% rename from projects/voxelization/resources/shaders/shadow.vert rename to projects/voxelization/assets/shaders/shadow.vert diff --git a/projects/voxelization/resources/shaders/shadowBlur.inc b/projects/voxelization/assets/shaders/shadowBlur.inc similarity index 100% rename from projects/voxelization/resources/shaders/shadowBlur.inc rename to projects/voxelization/assets/shaders/shadowBlur.inc diff --git a/projects/voxelization/resources/shaders/shadowBlurX.comp b/projects/voxelization/assets/shaders/shadowBlurX.comp similarity index 100% rename from projects/voxelization/resources/shaders/shadowBlurX.comp rename to projects/voxelization/assets/shaders/shadowBlurX.comp diff --git a/projects/voxelization/resources/shaders/shadowBlurY.comp b/projects/voxelization/assets/shaders/shadowBlurY.comp similarity index 100% rename from projects/voxelization/resources/shaders/shadowBlurY.comp rename to projects/voxelization/assets/shaders/shadowBlurY.comp diff --git a/projects/voxelization/resources/shaders/shadowMapping.inc b/projects/voxelization/assets/shaders/shadowMapping.inc similarity index 100% rename from projects/voxelization/resources/shaders/shadowMapping.inc rename to projects/voxelization/assets/shaders/shadowMapping.inc diff --git a/projects/voxelization/resources/shaders/sky.frag b/projects/voxelization/assets/shaders/sky.frag similarity index 100% rename from projects/voxelization/resources/shaders/sky.frag rename to projects/voxelization/assets/shaders/sky.frag diff --git a/projects/voxelization/resources/shaders/sky.vert b/projects/voxelization/assets/shaders/sky.vert similarity index 100% rename from projects/voxelization/resources/shaders/sky.vert rename to projects/voxelization/assets/shaders/sky.vert diff --git a/projects/voxelization/resources/shaders/tonemapping.comp b/projects/voxelization/assets/shaders/tonemapping.comp similarity index 100% rename from projects/voxelization/resources/shaders/tonemapping.comp rename to projects/voxelization/assets/shaders/tonemapping.comp diff --git a/projects/voxelization/resources/shaders/voxel.inc b/projects/voxelization/assets/shaders/voxel.inc similarity index 100% rename from projects/voxelization/resources/shaders/voxel.inc rename to projects/voxelization/assets/shaders/voxel.inc diff --git a/projects/voxelization/resources/shaders/voxelBufferToImage.comp b/projects/voxelization/assets/shaders/voxelBufferToImage.comp similarity index 100% rename from projects/voxelization/resources/shaders/voxelBufferToImage.comp rename to projects/voxelization/assets/shaders/voxelBufferToImage.comp diff --git a/projects/voxelization/resources/shaders/voxelReset.comp b/projects/voxelization/assets/shaders/voxelReset.comp similarity index 100% rename from projects/voxelization/resources/shaders/voxelReset.comp rename to projects/voxelization/assets/shaders/voxelReset.comp diff --git a/projects/voxelization/resources/shaders/voxelSecondaryBounce.comp b/projects/voxelization/assets/shaders/voxelSecondaryBounce.comp similarity index 100% rename from projects/voxelization/resources/shaders/voxelSecondaryBounce.comp rename to projects/voxelization/assets/shaders/voxelSecondaryBounce.comp diff --git a/projects/voxelization/resources/shaders/voxelVisualisation.frag b/projects/voxelization/assets/shaders/voxelVisualisation.frag similarity index 100% rename from projects/voxelization/resources/shaders/voxelVisualisation.frag rename to projects/voxelization/assets/shaders/voxelVisualisation.frag diff --git a/projects/voxelization/resources/shaders/voxelVisualisation.geom b/projects/voxelization/assets/shaders/voxelVisualisation.geom similarity index 100% rename from projects/voxelization/resources/shaders/voxelVisualisation.geom rename to projects/voxelization/assets/shaders/voxelVisualisation.geom diff --git a/projects/voxelization/resources/shaders/voxelVisualisation.vert b/projects/voxelization/assets/shaders/voxelVisualisation.vert similarity index 100% rename from projects/voxelization/resources/shaders/voxelVisualisation.vert rename to projects/voxelization/assets/shaders/voxelVisualisation.vert diff --git a/projects/voxelization/resources/shaders/voxelization.frag b/projects/voxelization/assets/shaders/voxelization.frag similarity index 100% rename from projects/voxelization/resources/shaders/voxelization.frag rename to projects/voxelization/assets/shaders/voxelization.frag diff --git a/projects/voxelization/resources/shaders/voxelization.geom b/projects/voxelization/assets/shaders/voxelization.geom similarity index 100% rename from projects/voxelization/resources/shaders/voxelization.geom rename to projects/voxelization/assets/shaders/voxelization.geom diff --git a/projects/voxelization/resources/shaders/voxelization.vert b/projects/voxelization/assets/shaders/voxelization.vert similarity index 100% rename from projects/voxelization/resources/shaders/voxelization.vert rename to projects/voxelization/assets/shaders/voxelization.vert diff --git a/projects/voxelization/resources/triangle/Triangle.bin b/projects/voxelization/assets/triangle/Triangle.bin similarity index 100% rename from projects/voxelization/resources/triangle/Triangle.bin rename to projects/voxelization/assets/triangle/Triangle.bin diff --git a/projects/voxelization/resources/triangle/Triangle.blend b/projects/voxelization/assets/triangle/Triangle.blend similarity index 100% rename from projects/voxelization/resources/triangle/Triangle.blend rename to projects/voxelization/assets/triangle/Triangle.blend diff --git a/projects/voxelization/resources/triangle/Triangle.glb b/projects/voxelization/assets/triangle/Triangle.glb similarity index 100% rename from projects/voxelization/resources/triangle/Triangle.glb rename to projects/voxelization/assets/triangle/Triangle.glb diff --git a/projects/voxelization/resources/triangle/Triangle.gltf b/projects/voxelization/assets/triangle/Triangle.gltf similarity index 100% rename from projects/voxelization/resources/triangle/Triangle.gltf rename to projects/voxelization/assets/triangle/Triangle.gltf diff --git a/projects/voxelization/src/BloomAndFlares.cpp b/projects/voxelization/src/BloomAndFlares.cpp index 1837ffe0f16500e18e2c013c5c74ac0e10ef6221..6a7eae3b90e83722a7a1c45ed95e96d4291b28ec 100644 --- a/projects/voxelization/src/BloomAndFlares.cpp +++ b/projects/voxelization/src/BloomAndFlares.cpp @@ -3,7 +3,7 @@ #include <vkcv/asset/asset_loader.hpp> vkcv::Image loadLenseDirtTexture(vkcv::Core* corePtr) { - const auto texture = vkcv::asset::loadTexture("resources/lensDirt.jpg"); + const auto texture = vkcv::asset::loadTexture("assets/lensDirt.jpg"); vkcv::Image image = corePtr->createImage(vk::Format::eR8G8B8A8Unorm, texture.width, texture.height); image.fill((void*)texture.data.data(), texture.data.size()); return image; @@ -37,7 +37,7 @@ BloomAndFlares::BloomAndFlares( // DOWNSAMPLE vkcv::ShaderProgram dsProg; compiler.compile(vkcv::ShaderStage::COMPUTE, - "resources/shaders/bloomDownsample.comp", + "assets/shaders/bloomDownsample.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { dsProg.addShader(shaderStage, path); @@ -55,7 +55,7 @@ BloomAndFlares::BloomAndFlares( // UPSAMPLE vkcv::ShaderProgram usProg; compiler.compile(vkcv::ShaderStage::COMPUTE, - "resources/shaders/bloomUpsample.comp", + "assets/shaders/bloomUpsample.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { usProg.addShader(shaderStage, path); @@ -80,7 +80,7 @@ BloomAndFlares::BloomAndFlares( // LENS FEATURES vkcv::ShaderProgram lensProg; compiler.compile(vkcv::ShaderStage::COMPUTE, - "resources/shaders/lensFlares.comp", + "assets/shaders/lensFlares.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { lensProg.addShader(shaderStage, path); @@ -93,7 +93,7 @@ BloomAndFlares::BloomAndFlares( // COMPOSITE vkcv::ShaderProgram compProg; compiler.compile(vkcv::ShaderStage::COMPUTE, - "resources/shaders/bloomFlaresComposite.comp", + "assets/shaders/bloomFlaresComposite.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { compProg.addShader(shaderStage, path); @@ -105,7 +105,7 @@ BloomAndFlares::BloomAndFlares( compProg, { p_Core->getDescriptorSetLayout(m_CompositeDescSetLayout).vulkanHandle }); // radial LUT - const auto texture = vkcv::asset::loadTexture("resources/RadialLUT.png"); + const auto texture = vkcv::asset::loadTexture("assets/RadialLUT.png"); m_radialLut.fill((void*)texture.data.data(), texture.data.size()); } diff --git a/projects/voxelization/src/ShadowMapping.cpp b/projects/voxelization/src/ShadowMapping.cpp index 69feca36b40dcad37c6abc55904e2251de57d435..3f764618da0d3736dcd4cae212e95faeb834d68a 100644 --- a/projects/voxelization/src/ShadowMapping.cpp +++ b/projects/voxelization/src/ShadowMapping.cpp @@ -9,11 +9,11 @@ const vkcv::Multisampling msaa = vkcv::Multisampling::MSAA8 vkcv::ShaderProgram loadShadowShader() { vkcv::ShaderProgram shader; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::VERTEX, "resources/shaders/shadow.vert", + compiler.compile(vkcv::ShaderStage::VERTEX, "assets/shaders/shadow.vert", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, "resources/shaders/shadow.frag", + compiler.compile(vkcv::ShaderStage::FRAGMENT, "assets/shaders/shadow.frag", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -23,7 +23,7 @@ vkcv::ShaderProgram loadShadowShader() { vkcv::ShaderProgram loadDepthToMomentsShader() { vkcv::ShaderProgram shader; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/depthToMoments.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/depthToMoments.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -33,7 +33,7 @@ vkcv::ShaderProgram loadDepthToMomentsShader() { vkcv::ShaderProgram loadShadowBlurXShader() { vkcv::ShaderProgram shader; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/shadowBlurX.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/shadowBlurX.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -43,7 +43,7 @@ vkcv::ShaderProgram loadShadowBlurXShader() { vkcv::ShaderProgram loadShadowBlurYShader() { vkcv::ShaderProgram shader; vkcv::shader::GLSLCompiler compiler; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/shadowBlurY.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/shadowBlurY.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); diff --git a/projects/voxelization/src/Voxelization.cpp b/projects/voxelization/src/Voxelization.cpp index 4021b8da4b43f6af63383e3bb9a1f6682bbfc981..783eb8b2edf4ad9310295a1f716ec3394c2b4c2e 100644 --- a/projects/voxelization/src/Voxelization.cpp +++ b/projects/voxelization/src/Voxelization.cpp @@ -6,15 +6,15 @@ vkcv::ShaderProgram loadVoxelizationShader() { vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram shader; - compiler.compile(vkcv::ShaderStage::VERTEX, "resources/shaders/voxelization.vert", + compiler.compile(vkcv::ShaderStage::VERTEX, "assets/shaders/voxelization.vert", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::GEOMETRY, "resources/shaders/voxelization.geom", + compiler.compile(vkcv::ShaderStage::GEOMETRY, "assets/shaders/voxelization.geom", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, "resources/shaders/voxelization.frag", + compiler.compile(vkcv::ShaderStage::FRAGMENT, "assets/shaders/voxelization.frag", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -24,15 +24,15 @@ vkcv::ShaderProgram loadVoxelizationShader() { vkcv::ShaderProgram loadVoxelVisualisationShader() { vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram shader; - compiler.compile(vkcv::ShaderStage::VERTEX, "resources/shaders/voxelVisualisation.vert", + compiler.compile(vkcv::ShaderStage::VERTEX, "assets/shaders/voxelVisualisation.vert", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::GEOMETRY, "resources/shaders/voxelVisualisation.geom", + compiler.compile(vkcv::ShaderStage::GEOMETRY, "assets/shaders/voxelVisualisation.geom", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, "resources/shaders/voxelVisualisation.frag", + compiler.compile(vkcv::ShaderStage::FRAGMENT, "assets/shaders/voxelVisualisation.frag", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -42,7 +42,7 @@ vkcv::ShaderProgram loadVoxelVisualisationShader() { vkcv::ShaderProgram loadVoxelResetShader() { vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram shader; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/voxelReset.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/voxelReset.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -52,7 +52,7 @@ vkcv::ShaderProgram loadVoxelResetShader() { vkcv::ShaderProgram loadVoxelBufferToImageShader() { vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram shader; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/voxelBufferToImage.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/voxelBufferToImage.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); @@ -62,7 +62,7 @@ vkcv::ShaderProgram loadVoxelBufferToImageShader() { vkcv::ShaderProgram loadSecondaryBounceShader() { vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram shader; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/voxelSecondaryBounce.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/voxelSecondaryBounce.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { shader.addShader(shaderStage, path); }); diff --git a/projects/voxelization/src/main.cpp b/projects/voxelization/src/main.cpp index d70fefca926530e1153de9f363557c6b501f49db..3b3e60a1be484f999f6ee38cf6347d16c43cd6c5 100644 --- a/projects/voxelization/src/main.cpp +++ b/projects/voxelization/src/main.cpp @@ -15,8 +15,6 @@ int main(int argc, const char** argv) { const char* applicationName = "Voxelization"; - uint32_t windowWidth = 1280; - uint32_t windowHeight = 720; const vkcv::Multisampling msaa = vkcv::Multisampling::MSAA4X; const bool usingMsaa = msaa != vkcv::Multisampling::None; @@ -35,8 +33,8 @@ int main(int argc, const char** argv) { vkcv::Window& window = core.getWindow(windowHandle); bool isFullscreen = false; - uint32_t windowedWidthBackup = windowWidth; - uint32_t windowedHeightBackup = windowHeight; + uint32_t windowedWidthBackup = window.getWidth(); + uint32_t windowedHeightBackup = window.getHeight(); int windowedPosXBackup; int windowedPosYBackup; glfwGetWindowPos(window.getWindow(), &windowedPosXBackup, &windowedPosYBackup); @@ -54,8 +52,8 @@ int main(int argc, const char** argv) { GLFW_DONT_CARE); } else { - windowedWidthBackup = windowWidth; - windowedHeightBackup = windowHeight; + windowedWidthBackup = window.getWidth(); + windowedHeightBackup = window.getHeight(); glfwGetWindowPos(window.getWindow(), &windowedPosXBackup, &windowedPosYBackup); @@ -88,7 +86,7 @@ int main(int argc, const char** argv) { vkcv::asset::Scene mesh; - const char* path = argc > 1 ? argv[1] : "resources/Sponza/Sponza.gltf"; + const char* path = argc > 1 ? argv[1] : "assets/Sponza/Sponza.gltf"; vkcv::asset::Scene scene; int result = vkcv::asset::loadScene(path, scene); @@ -169,11 +167,11 @@ int main(int argc, const char** argv) { vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram forwardProgram; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/shaders/shader.vert"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { forwardProgram.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/shader.frag"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/shader.frag"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { forwardProgram.addShader(shaderStage, path); }); @@ -191,11 +189,11 @@ int main(int argc, const char** argv) { // depth prepass config vkcv::ShaderProgram depthPrepassShader; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/depthPrepass.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/shaders/depthPrepass.vert"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { depthPrepassShader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/depthPrepass.frag"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/depthPrepass.frag"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { depthPrepassShader.addShader(shaderStage, path); }); @@ -297,10 +295,12 @@ int main(int argc, const char** argv) { vkcv::DescriptorSetLayoutHandle prepassDescriptorSetLayout = core.createDescriptorSetLayout({}); vkcv::DescriptorSetHandle prepassDescriptorSet = core.createDescriptorSet(prepassDescriptorSetLayout); + auto swapchainExtent = core.getSwapchain().getExtent(); + vkcv::PipelineConfig prepassPipelineConfig{ depthPrepassShader, - windowWidth, - windowHeight, + swapchainExtent.width, + swapchainExtent.height, prepassPass, vertexLayout, { @@ -317,8 +317,8 @@ int main(int argc, const char** argv) { // forward pipeline vkcv::PipelineConfig forwardPipelineConfig { forwardProgram, - windowWidth, - windowHeight, + swapchainExtent.width, + swapchainExtent.height, forwardPass, vertexLayout, { @@ -361,19 +361,19 @@ int main(int argc, const char** argv) { vkcv::PassHandle skyPass = core.createPass(skyPassConfig); vkcv::ShaderProgram skyShader; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/sky.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/shaders/sky.vert"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { skyShader.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/sky.frag"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/sky.frag"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { skyShader.addShader(shaderStage, path); }); vkcv::PipelineConfig skyPipeConfig; skyPipeConfig.m_ShaderProgram = skyShader; - skyPipeConfig.m_Width = windowWidth; - skyPipeConfig.m_Height = windowHeight; + skyPipeConfig.m_Width = swapchainExtent.width; + skyPipeConfig.m_Height = swapchainExtent.height; skyPipeConfig.m_PassHandle = skyPass; skyPipeConfig.m_VertexLayout = vkcv::VertexLayout(); skyPipeConfig.m_DescriptorLayouts = {}; @@ -384,21 +384,47 @@ int main(int argc, const char** argv) { vkcv::PipelineHandle skyPipe = core.createGraphicsPipeline(skyPipeConfig); // render targets - vkcv::ImageHandle depthBuffer = core.createImage(depthBufferFormat, windowWidth, windowHeight, 1, false, false, false, msaa).getHandle(); + vkcv::ImageHandle depthBuffer = core.createImage( + depthBufferFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, false, false, msaa + ).getHandle(); const bool colorBufferRequiresStorage = !usingMsaa; - vkcv::ImageHandle colorBuffer = core.createImage(colorBufferFormat, windowWidth, windowHeight, 1, false, colorBufferRequiresStorage, true, msaa).getHandle(); + vkcv::ImageHandle colorBuffer = core.createImage( + colorBufferFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, colorBufferRequiresStorage, true, msaa + ).getHandle(); vkcv::ImageHandle resolvedColorBuffer; if (usingMsaa) { - resolvedColorBuffer = core.createImage(colorBufferFormat, windowWidth, windowHeight, 1, false, true, true).getHandle(); + resolvedColorBuffer = core.createImage( + colorBufferFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, true, true + ).getHandle(); } else { resolvedColorBuffer = colorBuffer; } - vkcv::ImageHandle swapBuffer = core.createImage(colorBufferFormat, windowWidth, windowHeight, 1, false, true).getHandle(); - vkcv::ImageHandle swapBuffer2 = core.createImage(colorBufferFormat, windowWidth, windowHeight, 1, false, true).getHandle(); + vkcv::ImageHandle swapBuffer = core.createImage( + colorBufferFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, true + ).getHandle(); + + vkcv::ImageHandle swapBuffer2 = core.createImage( + colorBufferFormat, + swapchainExtent.width, + swapchainExtent.height, + 1, false, true + ).getHandle(); const vkcv::ImageHandle swapchainInput = vkcv::ImageHandle::createSwapchainImageHandle(); @@ -418,7 +444,7 @@ int main(int argc, const char** argv) { // tonemapping compute shader vkcv::ShaderProgram tonemappingProgram; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/tonemapping.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/tonemapping.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { tonemappingProgram.addShader(shaderStage, path); }); @@ -431,7 +457,7 @@ int main(int argc, const char** argv) { // tonemapping compute shader vkcv::ShaderProgram postEffectsProgram; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/postEffects.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/postEffects.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { postEffectsProgram.addShader(shaderStage, path); }); @@ -444,7 +470,7 @@ int main(int argc, const char** argv) { // resolve compute shader vkcv::ShaderProgram resolveProgram; - compiler.compile(vkcv::ShaderStage::COMPUTE, "resources/shaders/msaa4XResolve.comp", + compiler.compile(vkcv::ShaderStage::COMPUTE, "assets/shaders/msaa4XResolve.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { resolveProgram.addShader(shaderStage, path); }); @@ -513,11 +539,11 @@ int main(int argc, const char** argv) { voxelSampler, msaa); - BloomAndFlares bloomFlares(&core, colorBufferFormat, windowWidth, windowHeight); + BloomAndFlares bloomFlares(&core, colorBufferFormat, swapchainExtent.width, swapchainExtent.height); window.e_key.add([&](int key, int scancode, int action, int mods) { if (key == GLFW_KEY_R && action == GLFW_PRESS) { - bloomFlares = BloomAndFlares(&core, colorBufferFormat, windowWidth, windowHeight); + bloomFlares = BloomAndFlares(&core, colorBufferFormat, swapchainExtent.width, swapchainExtent.height); } }); @@ -547,7 +573,7 @@ int main(int argc, const char** argv) { core.writeDescriptorSet(forwardShadingDescriptorSet, forwardDescriptorWrites); vkcv::upscaling::FSRUpscaling upscaling (core); - uint32_t fsrWidth = windowWidth, fsrHeight = windowHeight; + uint32_t fsrWidth = swapchainExtent.width, fsrHeight = swapchainExtent.height; vkcv::upscaling::FSRQualityMode fsrMode = vkcv::upscaling::FSRQualityMode::NONE; int fsrModeIndex = static_cast<int>(fsrMode); @@ -922,11 +948,11 @@ int main(int argc, const char** argv) { if (ImGui::Button("Reload forward pass")) { vkcv::ShaderProgram newForwardProgram; - compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("resources/shaders/shader.vert"), + compiler.compile(vkcv::ShaderStage::VERTEX, std::filesystem::path("assets/shaders/shader.vert"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { newForwardProgram.addShader(shaderStage, path); }); - compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("resources/shaders/shader.frag"), + compiler.compile(vkcv::ShaderStage::FRAGMENT, std::filesystem::path("assets/shaders/shader.frag"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { newForwardProgram.addShader(shaderStage, path); }); @@ -940,7 +966,7 @@ int main(int argc, const char** argv) { if (ImGui::Button("Reload tonemapping")) { vkcv::ShaderProgram newProgram; - compiler.compile(vkcv::ShaderStage::COMPUTE, std::filesystem::path("resources/shaders/tonemapping.comp"), + compiler.compile(vkcv::ShaderStage::COMPUTE, std::filesystem::path("assets/shaders/tonemapping.comp"), [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { newProgram.addShader(shaderStage, path); }); diff --git a/src/vkcv/Context.cpp b/src/vkcv/Context.cpp index 0d4aa43446ffbe69c367651fefbce0c78bfe7710..906c6fe73c206048e5b06d03f3bf6a02ffdaf13b 100644 --- a/src/vkcv/Context.cpp +++ b/src/vkcv/Context.cpp @@ -264,6 +264,10 @@ namespace vkcv FeatureManager featureManager (physicalDevice); +#ifdef __APPLE__ + featureManager.useExtension("VK_KHR_portability_subset", true); +#endif + if (featureManager.useExtension(VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME, false)) { featureManager.useFeatures<vk::PhysicalDeviceShaderFloat16Int8Features>( [](vk::PhysicalDeviceShaderFloat16Int8Features& features) {