Route renderer feature gates through device snapshot

This commit is contained in:
2026-06-04 19:58:38 +02:00
parent f2cb0f2276
commit 0bd1e92ee1
10 changed files with 30 additions and 9 deletions

View File

@@ -100,10 +100,11 @@ void NodePanelGrid::init_controls()
m_render->on_click = [this](Node*)
{
const auto renderer_features = ShaderManager::render_device_features();
const auto plan = pp::app::plan_grid_lightmap_render(
static_cast<bool>(m_hm_image.data()),
ShaderManager::ext_float32,
ShaderManager::ext_float16,
renderer_features.float32_render_targets,
renderer_features.float16_render_targets,
get_texres(),
get_samples());
if (!plan)
@@ -356,11 +357,12 @@ void NodePanelGrid::bake_uvs()
return;
RTT fb;
if (ShaderManager::ext_float32)
const auto renderer_features = ShaderManager::render_device_features();
if (renderer_features.float32_render_targets)
{
fb.create(m_texture.size().x, m_texture.size().y, -1, pp::renderer::gl::rgba32f_internal_format());
}
else if (ShaderManager::ext_float16)
else if (renderer_features.float16_render_targets)
{
fb.create(m_texture.size().x, m_texture.size().y, -1, pp::renderer::gl::rgba16f_internal_format());
}