diff --git a/include/pipeline/asset_manifest.hpp b/include/pipeline/asset_manifest.hpp index 4f658646..bb5267d8 100644 --- a/include/pipeline/asset_manifest.hpp +++ b/include/pipeline/asset_manifest.hpp @@ -29,7 +29,7 @@ public: * @param manifestPath Full path to manifest.json * @return true if loaded successfully */ - bool load(const std::string& manifestPath); + [[nodiscard]] bool load(const std::string& manifestPath); /** * Lookup an entry by normalized WoW path (lowercase, backslash) diff --git a/include/pipeline/dbc_loader.hpp b/include/pipeline/dbc_loader.hpp index 1651e5d2..1e4d9d5c 100644 --- a/include/pipeline/dbc_loader.hpp +++ b/include/pipeline/dbc_loader.hpp @@ -26,7 +26,7 @@ public: * @param dbcData Raw DBC file data * @return true if loaded successfully */ - bool load(const std::vector& dbcData); + [[nodiscard]] bool load(const std::vector& dbcData); /** * Check if DBC is loaded diff --git a/include/rendering/shader.hpp b/include/rendering/shader.hpp index 29f0dc38..27b79729 100644 --- a/include/rendering/shader.hpp +++ b/include/rendering/shader.hpp @@ -13,8 +13,8 @@ public: Shader() = default; ~Shader(); - bool loadFromFile(const std::string& vertexPath, const std::string& fragmentPath); - bool loadFromSource(const std::string& vertexSource, const std::string& fragmentSource); + [[nodiscard]] bool loadFromFile(const std::string& vertexPath, const std::string& fragmentPath); + [[nodiscard]] bool loadFromSource(const std::string& vertexSource, const std::string& fragmentSource); void use() const; void unuse() const; diff --git a/include/rendering/vk_shader.hpp b/include/rendering/vk_shader.hpp index cd8fc839..8ed2c241 100644 --- a/include/rendering/vk_shader.hpp +++ b/include/rendering/vk_shader.hpp @@ -18,7 +18,7 @@ public: VkShaderModule& operator=(VkShaderModule&& other) noexcept; // Load a SPIR-V file from disk - bool loadFromFile(VkDevice device, const std::string& path); + [[nodiscard]] bool loadFromFile(VkDevice device, const std::string& path); // Load from raw SPIR-V bytes bool loadFromMemory(VkDevice device, const uint32_t* code, size_t sizeBytes); diff --git a/src/rendering/m2_renderer.cpp b/src/rendering/m2_renderer.cpp index d33f0ed7..31f66a1c 100644 --- a/src/rendering/m2_renderer.cpp +++ b/src/rendering/m2_renderer.cpp @@ -463,12 +463,12 @@ bool M2Renderer::initialize(VkContext* ctx, VkDescriptorSetLayout perFrameLayout rendering::VkShaderModule particleVert, particleFrag; rendering::VkShaderModule smokeVert, smokeFrag; - m2Vert.loadFromFile(device, "assets/shaders/m2.vert.spv"); - m2Frag.loadFromFile(device, "assets/shaders/m2.frag.spv"); - particleVert.loadFromFile(device, "assets/shaders/m2_particle.vert.spv"); - particleFrag.loadFromFile(device, "assets/shaders/m2_particle.frag.spv"); - smokeVert.loadFromFile(device, "assets/shaders/m2_smoke.vert.spv"); - smokeFrag.loadFromFile(device, "assets/shaders/m2_smoke.frag.spv"); + (void)m2Vert.loadFromFile(device, "assets/shaders/m2.vert.spv"); + (void)m2Frag.loadFromFile(device, "assets/shaders/m2.frag.spv"); + (void)particleVert.loadFromFile(device, "assets/shaders/m2_particle.vert.spv"); + (void)particleFrag.loadFromFile(device, "assets/shaders/m2_particle.frag.spv"); + (void)smokeVert.loadFromFile(device, "assets/shaders/m2_smoke.vert.spv"); + (void)smokeFrag.loadFromFile(device, "assets/shaders/m2_smoke.frag.spv"); if (!m2Vert.isValid() || !m2Frag.isValid()) { LOG_ERROR("M2: Missing required shaders, cannot initialize"); @@ -583,8 +583,8 @@ bool M2Renderer::initialize(VkContext* ctx, VkDescriptorSetLayout perFrameLayout // Vertex format: pos(3) + color(3) + alpha(1) + uv(2) = 9 floats = 36 bytes { rendering::VkShaderModule ribVert, ribFrag; - ribVert.loadFromFile(device, "assets/shaders/m2_ribbon.vert.spv"); - ribFrag.loadFromFile(device, "assets/shaders/m2_ribbon.frag.spv"); + (void)ribVert.loadFromFile(device, "assets/shaders/m2_ribbon.vert.spv"); + (void)ribFrag.loadFromFile(device, "assets/shaders/m2_ribbon.frag.spv"); if (ribVert.isValid() && ribFrag.isValid()) { // Reuse particleTexLayout_ for set 1 (single texture sampler) VkDescriptorSetLayout ribLayouts[] = {perFrameLayout, particleTexLayout_}; @@ -4766,12 +4766,12 @@ void M2Renderer::recreatePipelines() { rendering::VkShaderModule particleVert, particleFrag; rendering::VkShaderModule smokeVert, smokeFrag; - m2Vert.loadFromFile(device, "assets/shaders/m2.vert.spv"); - m2Frag.loadFromFile(device, "assets/shaders/m2.frag.spv"); - particleVert.loadFromFile(device, "assets/shaders/m2_particle.vert.spv"); - particleFrag.loadFromFile(device, "assets/shaders/m2_particle.frag.spv"); - smokeVert.loadFromFile(device, "assets/shaders/m2_smoke.vert.spv"); - smokeFrag.loadFromFile(device, "assets/shaders/m2_smoke.frag.spv"); + (void)m2Vert.loadFromFile(device, "assets/shaders/m2.vert.spv"); + (void)m2Frag.loadFromFile(device, "assets/shaders/m2.frag.spv"); + (void)particleVert.loadFromFile(device, "assets/shaders/m2_particle.vert.spv"); + (void)particleFrag.loadFromFile(device, "assets/shaders/m2_particle.frag.spv"); + (void)smokeVert.loadFromFile(device, "assets/shaders/m2_smoke.vert.spv"); + (void)smokeFrag.loadFromFile(device, "assets/shaders/m2_smoke.frag.spv"); if (!m2Vert.isValid() || !m2Frag.isValid()) { LOG_ERROR("M2Renderer::recreatePipelines: missing required shaders"); @@ -4882,8 +4882,8 @@ void M2Renderer::recreatePipelines() { // --- Ribbon pipelines --- { rendering::VkShaderModule ribVert, ribFrag; - ribVert.loadFromFile(device, "assets/shaders/m2_ribbon.vert.spv"); - ribFrag.loadFromFile(device, "assets/shaders/m2_ribbon.frag.spv"); + (void)ribVert.loadFromFile(device, "assets/shaders/m2_ribbon.vert.spv"); + (void)ribFrag.loadFromFile(device, "assets/shaders/m2_ribbon.frag.spv"); if (ribVert.isValid() && ribFrag.isValid()) { VkVertexInputBindingDescription rBind{}; rBind.binding = 0; diff --git a/src/rendering/swim_effects.cpp b/src/rendering/swim_effects.cpp index 9bc4885a..e439c2dd 100644 --- a/src/rendering/swim_effects.cpp +++ b/src/rendering/swim_effects.cpp @@ -348,9 +348,9 @@ void SwimEffects::recreatePipelines() { // ---- Rebuild ripple pipeline ---- { VkShaderModule vertModule; - vertModule.loadFromFile(device, "assets/shaders/swim_ripple.vert.spv"); + (void)vertModule.loadFromFile(device, "assets/shaders/swim_ripple.vert.spv"); VkShaderModule fragModule; - fragModule.loadFromFile(device, "assets/shaders/swim_ripple.frag.spv"); + (void)fragModule.loadFromFile(device, "assets/shaders/swim_ripple.frag.spv"); VkPipelineShaderStageCreateInfo vertStage = vertModule.stageInfo(VK_SHADER_STAGE_VERTEX_BIT); VkPipelineShaderStageCreateInfo fragStage = fragModule.stageInfo(VK_SHADER_STAGE_FRAGMENT_BIT); @@ -375,9 +375,9 @@ void SwimEffects::recreatePipelines() { // ---- Rebuild bubble pipeline ---- { VkShaderModule vertModule; - vertModule.loadFromFile(device, "assets/shaders/swim_bubble.vert.spv"); + (void)vertModule.loadFromFile(device, "assets/shaders/swim_bubble.vert.spv"); VkShaderModule fragModule; - fragModule.loadFromFile(device, "assets/shaders/swim_bubble.frag.spv"); + (void)fragModule.loadFromFile(device, "assets/shaders/swim_bubble.frag.spv"); VkPipelineShaderStageCreateInfo vertStage = vertModule.stageInfo(VK_SHADER_STAGE_VERTEX_BIT); VkPipelineShaderStageCreateInfo fragStage = fragModule.stageInfo(VK_SHADER_STAGE_FRAGMENT_BIT); @@ -402,9 +402,9 @@ void SwimEffects::recreatePipelines() { // ---- Rebuild insect pipeline ---- { VkShaderModule vertModule; - vertModule.loadFromFile(device, "assets/shaders/swim_ripple.vert.spv"); + (void)vertModule.loadFromFile(device, "assets/shaders/swim_ripple.vert.spv"); VkShaderModule fragModule; - fragModule.loadFromFile(device, "assets/shaders/swim_insect.frag.spv"); + (void)fragModule.loadFromFile(device, "assets/shaders/swim_insect.frag.spv"); VkPipelineShaderStageCreateInfo vertStage = vertModule.stageInfo(VK_SHADER_STAGE_VERTEX_BIT); VkPipelineShaderStageCreateInfo fragStage = fragModule.stageInfo(VK_SHADER_STAGE_FRAGMENT_BIT);