linear interpolation on layers draw

This commit is contained in:
2017-11-02 22:23:06 +00:00
parent c8e115774f
commit cfc4312c89
2 changed files with 3 additions and 1 deletions

View File

@@ -15,6 +15,7 @@ void NodeCanvas::init()
m_canvas = std::make_unique<ui::Canvas>();
m_canvas->create(RES, RES);
m_sampler.create(GL_NEAREST);
m_sampler_linear.create(GL_LINEAR);
m_sampler_stencil.create(GL_LINEAR, GL_REPEAT);
m_face_plane.create<1>(2, 2);
m_line.create();
@@ -174,7 +175,7 @@ void NodeCanvas::draw()
}
else
{
m_sampler_stencil.bind(0);
m_sampler_linear.bind(0);
ui::ShaderManager::use(kShader::TextureAlpha);
ui::ShaderManager::u_int(kShaderUniform::Tex, 0);
ui::ShaderManager::u_float(kShaderUniform::Alpha, m_canvas->m_layers[layer_index].m_opacity);

View File

@@ -9,6 +9,7 @@ public:
std::unique_ptr<ui::Canvas> m_canvas;
ui::Brush m_brush;
Sampler m_sampler;
Sampler m_sampler_linear;
Sampler m_sampler_stencil;
ui::Plane m_face_plane;
ui::LineSegment m_line;