From ad91f99c652b549c92e04f4363a43319ab2fdd37 Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Sun, 22 Jun 2025 19:25:29 +0900 Subject: [PATCH] doc: added partial rendering description --- README.md | 9 +++++++++ res/example_partial.png | Bin 0 -> 46731 bytes 2 files changed, 9 insertions(+) create mode 100644 res/example_partial.png diff --git a/README.md b/README.md index 2bbd5bef..22aea363 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,15 @@ The task scheduler has been meticulously crafted to conceal complexity, streamli

+
+ThorVG supports smart partial rendering, enabling more efficient rendering workflows by updating only the portions of a vector scene that have changed. By internally tracking modified regions, it minimizes unnecessary redraws and optimizes overall performance. This feature delivers significant performance benefits, especially in animations and interactive graphics where only part of the scene changes between frames. By avoiding full-scene rendering, it can reduce computational workload—making it particularly well-suited for mobile and embedded systems where energy efficiency is essential. It also help to ensure smoother visual updates, especially for dynamic UIs and real-time animations, where rendering responsiveness is critical.
+
+

+ +

+
+The figure above illustrates how ThorVG detects geometry changes and calculates the minimal redraw region (highlighted by the red box) that needs to be updated. Only the modified area between the previous and current frames is selectively redrawn, significantly enhancing performance.
+
Today, ThorVG provides its own implementation of multiple raster engines, allowing you to choose the one that best suits your app and system preferences.

diff --git a/res/example_partial.png b/res/example_partial.png new file mode 100644 index 0000000000000000000000000000000000000000..ec5144bdfab22a6ac14ac8cd7df5609eec75b737 GIT binary patch literal 46731 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 z