implement instanced drawing

This commit is contained in:
2017-03-27 22:29:47 +01:00
parent b9277f94e8
commit e8cabebe66
8 changed files with 206 additions and 36 deletions

View File

@@ -259,6 +259,8 @@ void App::initLayout()
stroke->create();
stroke->loaded();
canvas->m_brush = stroke->m_canvas->m_brush;
brushes->on_brush_changed = [this](Node* target, int index) {
auto tid = brushes->get_texture_id(index);
stroke->m_canvas->m_brush.m_tex_id = tid;
@@ -343,6 +345,15 @@ void App::initLayout()
};
}
if (auto* button = layout[main_id]->find<NodeButton>("btn-switch"))
{
button->on_click = [this,button](Node*) {
//exit(0);
canvas->m_canvas->m_use_instanced = !canvas->m_canvas->m_use_instanced;
//button->color_normal = canvas->m_canvas->m_use_instanced ? glm::vec4(1, 0, 0, 1) : glm::vec4(0, 1, 0, 1);
button->m_text->set_text(canvas->m_canvas->m_use_instanced ? "INST" : "NORM");
};
}
if (auto* button = layout[main_id]->find<NodeButton>("btn-close"))
{
button->on_click = [this](Node*) {