fix glsl float interpolation, fix layers on ui reload, add vr thread for Quest
This commit is contained in:
@@ -1202,12 +1202,14 @@ void App::initLayout()
|
||||
NodeIcon::static_init();
|
||||
NodeStrokePreview::static_init();
|
||||
|
||||
static std::vector<std::shared_ptr<Layer>> saved_layers;
|
||||
layout.on_reloading = [&] {
|
||||
saved_layers = std::move(Canvas::I->m_layers);
|
||||
ui_save();
|
||||
NodeStrokePreview::empty_queue();
|
||||
};
|
||||
|
||||
layout.on_loaded = [&] {
|
||||
layout.on_loaded = [&] (bool reloaded) {
|
||||
LOG("initializing layout updating after load");
|
||||
layout[main_id]->update(width, height, zoom);
|
||||
|
||||
@@ -1215,8 +1217,16 @@ void App::initLayout()
|
||||
|
||||
init_sidebar();
|
||||
|
||||
layers->add_layer("Default", false, true);
|
||||
Canvas::I->m_unsaved = false;
|
||||
if (reloaded)
|
||||
{
|
||||
for (const auto& l : saved_layers)
|
||||
layers->add_layer(l->m_name.c_str(), false, true, l);
|
||||
}
|
||||
else
|
||||
{
|
||||
layers->add_layer("Default", false, true);
|
||||
Canvas::I->m_unsaved = false;
|
||||
}
|
||||
|
||||
init_toolbar_draw();
|
||||
init_toolbar_main();
|
||||
@@ -1239,12 +1249,16 @@ void App::initLayout()
|
||||
|
||||
if (auto x = layout[main_id]->find<NodeBorder>("ext-flt"))
|
||||
{
|
||||
if (ShaderManager::ext_texture_float || ShaderManager::ext_half_float_pixel)
|
||||
if (ShaderManager::ext_float32 || ShaderManager::ext_float16)
|
||||
{
|
||||
if (auto t = x->find<NodeText>("ext-flt-text"))
|
||||
{
|
||||
int bits = ShaderManager::ext_texture_float ? 32 : 16;
|
||||
t->set_text_format("F%d", bits);
|
||||
if (ShaderManager::ext_float32_linear)
|
||||
t->set_text("F32L");
|
||||
else if (ShaderManager::ext_float32)
|
||||
t->set_text("F32");
|
||||
else if (ShaderManager::ext_float16)
|
||||
t->set_text("F16");
|
||||
}
|
||||
x->m_color = glm::vec4(0, 1, 0, 1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user