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;