Files
rive-cpp/renderer
bodymovin d920ee0efd fix(scripting): search first parent transform component to build scri… (#11443) 99ca3a30cc
fix(scripting): search first parent transform component to build script node

feature: modulate opacity (#11427) 128d9d61e0
* feature: modulate opacity

* fix: clang-format

* fix: rust renderer has a no-op modulateOpacity

* fix: no-op modulateOpacity for canvas android

* feature: modulate opacity on android canvas

* fix: rcp ref

* fix: missing override

* fix: gms

* fix: make flutter_renderer match cg one

* fix: josh pr feedback

* fix: remove CG transparency layer

* fix: save modulated gradient up-front

* fix: store only one gradient ref

* fix: remove specific constructor

* fix: use GradDataArray!

* fix: expose currentModulatedOpacity

* fix: cg_factory modulated opacity value

* fix: modulate negative opacity test

* fix: verify double modulate negative also clamps

Co-authored-by: Luigi Rosso <luigi-rosso@users.noreply.github.com>
Co-authored-by: hernan <hernan@rive.app>
2026-01-13 01:13:05 +00:00
..
2024-08-27 22:26:30 +00:00
2025-03-07 04:32:24 +00:00

Rive Renderer

The Rive Renderer is a vector and raster graphics renderer custom-built for Rive content, for animation, and for runtime.

This directory contains the renderer code and an example for how to interface with it directly. It contains the best in class concrete implementation of Rive's rendering abstraction layer, which we call the Rive Renderer.

Clone the rive-runtime repo

git clone https://github.com/rive-app/rive-runtime.git
cd rive-runtime/renderer

Add build_rive.sh to $PATH

export PATH="$PATH:$(realpath ../build)"

Build & run

build_rive.sh release
out/release/path_fiddle [/path/to/my.riv]

Build & serve for WebGL2

build_rive.sh ninja wasm release
cd out/wasm_release
python3 -m http.server 5555

Helpful keys

  • h/H: add/subtract copies to the left and right (only when a .riv is provided)
  • j/J: add/subtract copies below (only when a .riv is provided)
  • k/K: add/subtract copies above (only when a .riv is provided)
  • p: pause runtime (for benchmarking the renderer in isolation)
  • a: toggle "atomic" mode