Route renderer feature gates through device snapshot
This commit is contained in:
@@ -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());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user