Add option to not draw background -- for transparent videos
diff --git a/include/rive/artboard.hpp b/include/rive/artboard.hpp index c3afe0c..7b7533c 100644 --- a/include/rive/artboard.hpp +++ b/include/rive/artboard.hpp
@@ -66,7 +66,7 @@ void onDirty(ComponentDirt dirt) override; bool advance(double elapsedSeconds); - void draw(Renderer* renderer); + void draw(Renderer* renderer, bool drawBackground = true); CommandPath* clipPath() const { return m_ClipPath; } CommandPath* backgroundPath() const { return m_BackgroundPath; }
diff --git a/src/artboard.cpp b/src/artboard.cpp index 395354b..0bbca01 100644 --- a/src/artboard.cpp +++ b/src/artboard.cpp
@@ -452,7 +452,7 @@ return updateComponents(); } -void Artboard::draw(Renderer* renderer) +void Artboard::draw(Renderer* renderer, bool drawBackground) { renderer->save(); if (clip()) @@ -467,9 +467,13 @@ artboardTransform[5] = height() * originY(); renderer->transform(artboardTransform); } - for (auto shapePaint : m_ShapePaints) + + if (drawBackground) { - shapePaint->draw(renderer, m_BackgroundPath); + for (auto shapePaint : m_ShapePaints) + { + shapePaint->draw(renderer, m_BackgroundPath); + } } for (auto drawable = m_FirstDrawable; drawable != nullptr;