Spot works

This commit is contained in:
Confideo-IOM
2026-08-06 21:11:33 +01:00
parent 6d7d7571b5
commit f9b696f9e8
61 changed files with 701 additions and 418 deletions
@@ -85,7 +85,7 @@ void HydraShadowPipeline::_RenderSpotShadowMaps()
glClearNamedFramebufferfv(shad_comp.frame_buffer_id, GL_DEPTH, 0, &depth_value);
glClearNamedFramebufferfv(shad_comp.frame_buffer_id, GL_COLOR, 0, clear_colour);
m_render_stages[SPOT_RENDER_STAGE]->Render(render_system->Entities, INVALID_HYDRA_ID);
glBindFramebuffer(GL_FRAMEBUFFER, 0);
glBindFramebuffer(GL_FRAMEBUFFER, 0);
}
}
@@ -98,7 +98,7 @@ void HydraShadowPipeline::_CreateDirectionalRenderStage()
HydraID pos_buffer_id = buffer_manager->FindBuffer("PositionsBuffer");
HydraID mat_buffer_id = buffer_manager->FindBuffer("MaterialBuffer");
HydraID tex_buffer_id = buffer_manager->FindBuffer("TextureBuffer");
HydraID shadow_buffer_id = buffer_manager->FindBuffer("ShadowBuffer");
HydraID shadow_buffer_id = buffer_manager->FindBuffer("DirectionalShadowBuffer");
HydraID per_frame_buffer_id = buffer_manager->FindBuffer("ShadowPerFrameUBO");
HydraShaderBinding shader_binding = {};
@@ -118,7 +118,7 @@ void HydraShadowPipeline::_CreateDirectionalRenderStage()
shader_binding.buffer_id.push_back(tex_buffer_id);
shader_binding.buffer_type.push_back(HYDRA_BUFFER_TYPE::HYDRA_SSBO_BUFFER);
shader_binding.block_name.push_back("shadow_map_sets");
shader_binding.block_name.push_back("directional_shadow_map_sets");
shader_binding.binding_point.push_back(5);
shader_binding.buffer_id.push_back(shadow_buffer_id);
shader_binding.buffer_type.push_back(HYDRA_BUFFER_TYPE::HYDRA_SSBO_BUFFER);
@@ -152,7 +152,7 @@ void HydraShadowPipeline::_CreateSpotRenderStage()
HydraID pos_buffer_id = buffer_manager->FindBuffer("PositionsBuffer");
HydraID mat_buffer_id = buffer_manager->FindBuffer("MaterialBuffer");
HydraID tex_buffer_id = buffer_manager->FindBuffer("TextureBuffer");
HydraID shadow_buffer_id = buffer_manager->FindBuffer("ShadowBuffer");
HydraID shadow_buffer_id = buffer_manager->FindBuffer("SpotShadowBuffer");
HydraID per_frame_buffer_id = buffer_manager->FindBuffer("ShadowPerFrameUBO");
HydraShaderBinding shader_binding = {};
@@ -172,8 +172,8 @@ void HydraShadowPipeline::_CreateSpotRenderStage()
shader_binding.buffer_id.push_back(tex_buffer_id);
shader_binding.buffer_type.push_back(HYDRA_BUFFER_TYPE::HYDRA_SSBO_BUFFER);
shader_binding.block_name.push_back("shadow_map_sets");
shader_binding.binding_point.push_back(5);
shader_binding.block_name.push_back("spot_shadow_map_sets");
shader_binding.binding_point.push_back(6);
shader_binding.buffer_id.push_back(shadow_buffer_id);
shader_binding.buffer_type.push_back(HYDRA_BUFFER_TYPE::HYDRA_SSBO_BUFFER);