RWPP Documentation
Everything you need to know about Rive Wallpaper Player for macOS. Transform your desktop with beautiful animated wallpapers.
Quick Start
1. Install
Open the DMG, drag RWPP to Applications, and launch it.
2. Load Animation
Click the menu bar icon, select "Add Animation...", and choose a .riv file.
3. Enjoy!
Your desktop is now animated. Use the gallery to save favorites.
Need .riv files? Get free animations from the Rive Community
System Requirements
Minimum
| Requirement | Value |
|---|---|
| macOS | 14.0 (Sonoma) or later |
| Processor | Apple Silicon (M1/M2/M3/M4) |
| Memory | 4 GB RAM |
| Graphics | Apple Silicon GPU (Metal) |
| Storage | 50 MB |
Recommended
| Requirement | Value |
|---|---|
| macOS | 15.0 (Sequoia) or later |
| Memory | 8 GB RAM |
| Processor | M1 Pro/Max or newer |
Installation
From DMG (Recommended)
- Download RWPP.dmg from your email link
- Double-click to mount the disk image
- Drag RWPP.app to the Applications folder
- Eject the disk image
- Launch RWPP from Applications
First Launch Security
Since RWPP is not notarized with Apple, macOS will show a security warning on first launch.
To open:
- Go to System Settings → Privacy & Security
- Scroll down to find the blocked app message
- Click "Open Anyway"
Features
Animated Wallpaper
Rive animations render behind your desktop icons using GPU-accelerated Metal rendering for smooth 60fps playback.
Multi-Display
Automatically detects all connected displays. Same animation plays across all screens seamlessly.
Gallery
Save and organize your favorite animations. Files are copied to internal storage - moving or deleting the original won't break your wallpaper.
Persistence
Remembers your last animation, gallery contents, control settings, and preferences. Optionally launches at login.
Dynamic ViewModel Controls
If your Rive file includes a ViewModel with specially-named properties, RWPP displays controls to adjust them in real-time.
Multi-Artboard Support
RWPP automatically selects the correct artboard based on screen orientation (landscape/portrait).
Combined Mode
Span a single animation seamlessly across all monitors with the "combined" artboard.
Animation Controls
Control animation parameters directly from RWPP without editing the Rive file.
Available Control Types
| Control | Description | Value Type |
|---|---|---|
| Color Picker | Select any color with opacity | Color (RGBA) |
| Toggle | On/off switch | Boolean |
| Number | Unbounded numeric input | Float |
| Slider | Bounded range with visual slider | Float (min-max) |
| Picker | Dropdown selection | Integer (index) |
Sync & Reset
- Sync - Copy values from current artboard to all others
- Reset - Restore original default values
Values are automatically persisted and restored on next launch.
Creating Compatible Rive Files
To take full advantage of RWPP features, structure your Rive files as follows:
Example Project: The Hex Background animation available for download on this page demonstrates all RWPP features - it includes landscape, portrait, and combined artboards with ViewModel controls. Download the
.revproject file to see exactly how to structure your own animations.
Artboard Setup
Include artboards for different screen orientations:
| Screen Type | Artboard Name | Example |
|---|---|---|
| Landscape monitors | landscape or 16x9 |
Desktop, MacBook |
| Portrait monitors | portrait or 9x16 |
Rotated display |
| Multi-monitor span | combined |
All screens as one |
Important: All artboards except the default must be converted to components in Rive for RWPP to detect them. The default artboard works regardless.
Artboard Fallback Behavior
RWPP handles missing artboards gracefully:
| Your File Has | Behavior |
|---|---|
| Only 1 artboard (default) | Used for all screens |
| 2 artboards (landscape + portrait) | Auto-selected based on screen orientation |
| 3 artboards (+ combined) | Combined used in combined mode, others by orientation |
| Missing orientation | Falls back to opposite orientation, then default |
| Missing combined | Falls back to landscape in combined mode |
ViewModel Property Naming
To expose controls in RWPP, name your ViewModel properties with this syntax:
rwpp[Type]-[parameters]-[Label_With_Underscores]
| Control Type | Syntax | Example |
|---|---|---|
| Color | rwppColor-Label |
rwppColor-Background_Color |
| Toggle | rwppToggle-Label |
rwppToggle-Show_Particles |
| Number | rwppNumber-Label |
rwppNumber-Random_Seed |
| Slider | rwppSlider-Min_Max-Label |
rwppSlider-0_100-Opacity |
| Float Slider | rwppSlider-Min.0_Max.0-Label |
rwppSlider-0.0_1.0-Scale |
| Picker | rwppPicker-Opt1_Opt2_Opt3-Label |
rwppPicker-None_Glow_Pulse-Effect |
Label Formatting:
- Use underscores for spaces:
Background_Color→ "Background Color" - Hyphens separate syntax parts
ViewModel Instances
Create ViewModel instances for each artboard:
| Artboard | Instance Name |
|---|---|
| Landscape | Instance 0 |
| Portrait | Instance 1 |
| Combined | Instance 2 |
Settings
| Setting | Description |
|---|---|
| Launch at login | Start RWPP automatically when you log in |
| Load last animation | Resume your previous wallpaper when app launches |
| Combined mode | Span animation across all monitors |
| Frame Rate | Limit animation frame rate to reduce CPU usage |
| Clear Gallery | Remove all saved animations from internal storage |
Frame Rate Settings
RWPP v1.3.2 introduces configurable frame rate limiting to optimize performance:
| Setting | Description | CPU Impact | Best For |
|---|---|---|---|
| Unlimited | Matches display refresh rate (~60+ FPS) | Highest | Plugged-in desktop use |
| 60 FPS | Capped at 60 frames per second | High | Standard desktop use |
| 30 FPS | Half the frame rate | ~50% reduction | Battery-powered laptops |
Why 30 FPS is recommended for laptops:
- Wallpapers don't need high frame rates - you're not interacting with them
- At 30 FPS, Luau scripts execute half as often, significantly reducing CPU load
- The visual difference is imperceptible for background wallpapers
- Battery life improves noticeably on MacBooks
Combined Mode Requirements
- Go to System Settings → Desktop & Dock
- Disable "Displays have separate Spaces"
- Log out and log back in
- Your Rive file must include a
combinedartboard
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Esc |
Close panel |
Return |
Confirm dialog |
⌘Q |
Quit application |
FAQ
What are .riv files?
.riv files are animation files created with Rive, a design tool for creating interactive animations. They contain vector graphics and animation data that can be rendered in real-time.
Where can I get .riv files?
- Rive Community: rive.app/community - Free community animations
- Create your own: rive.app - Free editor to create animations
Does RWPP affect performance?
RWPP is optimized for efficiency with configurable performance settings:
Simple animations (no Luau scripts):
- CPU: 2-5% (single core)
- Memory: 80-120 MB
- GPU: 5-15%
- Energy Impact: Very Low
Complex animations (with Luau procedural drawing):
- CPU: 15-50% at 30 FPS, up to 97% at unlimited
- Memory: 140-200 MB
- GPU: 20-40%
- Energy Impact: Low (30 FPS) to High (unlimited)
Performance Tips:
- Use 30 FPS setting for script-heavy animations
- Simpler vector animations use less CPU than procedural ones
- GPU (Metal) handles rendering efficiently on all Apple Silicon Macs
Will RWPP drain my battery?
Battery impact depends on your settings and animation complexity:
| Frame Rate | Animation Type | Battery Impact | Recommendation |
|---|---|---|---|
| 30 FPS | Simple | Minimal (~3-5%) | ✅ Best for battery |
| 30 FPS | Complex (Luau) | Low (~5-10%) | ✅ Recommended |
| 60 FPS | Simple | Low (~5-8%) | Good |
| 60 FPS | Complex (Luau) | Moderate (~10-15%) | Plugged in only |
| Unlimited | Any | Highest | Desktop only |
Battery Optimization Tips:
- Use 30 FPS setting when on battery (Settings → Performance)
- Choose simpler animations without heavy Luau scripting
- Dark backgrounds save power on OLED displays (future MacBooks)
- Pause animation when presenting or in meetings
Can I use different animations on different displays?
Currently, RWPP plays the same animation on all displays. Multi-animation support may be added in a future update.
Is RWPP safe?
Yes. RWPP:
- Doesn't collect any user data
- Only accesses files you explicitly select
- Uses standard macOS security (sandboxed file access)
- No network requests except for update checks
Troubleshooting
App Won't Launch
Symptom: Double-clicking RWPP does nothing or shows security warning.
Solution:
- Go to System Settings → Privacy & Security
- Look for message about RWPP being blocked
- Click "Open Anyway"
Animation Doesn't Play
Symptom: File loads but nothing appears on desktop.
Solutions:
- Verify the .riv file works in Rive editor
- Check that file isn't corrupted (try re-downloading)
- Restart RWPP and try again
No Thumbnails in Gallery
Symptom: Gallery shows placeholder icons instead of thumbnails.
Solution: Grant Screen Recording permission:
- Go to System Settings → Privacy & Security → Screen Recording
- Enable RWPP (may need to add it via the + button)
- Load the animation again to regenerate thumbnail
High CPU Usage
Symptom: CPU usage above 30% constantly.
Solutions:
- This is normal for complex animations
- Try a simpler animation with fewer elements
- Animations with particles use more CPU
Animation Controls Not Showing
Symptom: "Animation Controls" menu item doesn't appear.
Solution: Your Rive file needs ViewModel properties with rwpp prefix. See "Creating Compatible Rive Files" section.
Technical Information
Architecture
| Component | Technology |
|---|---|
| Framework | SwiftUI + AppKit |
| Rendering | RiveRuntime (Metal) |
| File Storage | Internal (Application Support) |
| Persistence | UserDefaults with stable hash keys |
File Locations
| Data | Location |
|---|---|
| Animations | ~/Library/Application Support/RWPP/Animations/ |
| Thumbnails | ~/Library/Application Support/RWPP/Thumbnails/ |
| Preferences | ~/Library/Preferences/com.ivg.rwpp.plist |
Resource Usage
Simple Animations (vectors, no scripts):
| Resource | Typical | Peak |
|---|---|---|
| CPU | 2-5% | 8% |
| Memory | 80-120 MB | 150 MB |
| GPU | 5-15% | 20% |
Complex Animations (Luau procedural drawing):
| Resource | 30 FPS | 60 FPS | Unlimited |
|---|---|---|---|
| CPU | 15-25% | 30-50% | 50-97% |
| Memory | 140-180 MB | 140-180 MB | 140-180 MB |
| GPU | 15-25% | 25-35% | 30-40% |
Performance by Mac Model
RWPP performance scales with Apple Silicon generation. Here are extrapolated benchmarks for a complex Luau animation:
| Mac Model | CPU Cores | 30 FPS CPU | 60 FPS CPU | Recommended Setting |
|---|---|---|---|---|
| M1 MacBook Air | 8 | ~25% | ~50% | 30 FPS |
| M1 Pro/Max | 10-10 | ~18% | ~35% | 60 FPS |
| M2 MacBook Air | 8 | ~22% | ~45% | 30 FPS (battery) |
| M2 Pro/Max | 12-12 | ~15% | ~30% | 60 FPS |
| M3 MacBook Air | 8 | ~20% | ~40% | 30 FPS (battery) |
| M3 Pro/Max | 12-16 | ~12% | ~25% | 60 FPS |
| M4 MacBook Pro | 12-14 | ~10% | ~20% | Unlimited |
| M4 Pro/Max | 14-16 | ~8% | ~16% | Unlimited |
Notes:
- Percentages are of total CPU capacity (not single core)
- Newer chips have more efficient cores and better thermal management
- MacBook Air models throttle under sustained load; Pro models maintain performance
- Desktop Macs (Mac Mini, Mac Studio, Mac Pro) can run unlimited FPS with minimal impact
Screen Resolution Impact
Higher resolution displays require more GPU work but have minimal CPU impact:
| Display | Pixels | GPU Impact | CPU Impact |
|---|---|---|---|
| MacBook Air 13" | 2560×1664 | Baseline | Baseline |
| MacBook Pro 14" | 3024×1964 | +15% | ~Same |
| MacBook Pro 16" | 3456×2234 | +30% | ~Same |
| Studio Display 5K | 5120×2880 | +80% | ~Same |
| Pro Display XDR 6K | 6016×3384 | +120% | ~Same |
| Dual 5K Displays | 10240×2880 | +160% | ~Same |
Tips for High-Resolution Displays:
- GPU handles resolution scaling efficiently on Apple Silicon
- CPU usage is determined by animation complexity, not resolution
- Combined mode on multiple 5K displays works smoothly on M1 Pro or newer
Getting Rive Animations
Rive Community
The Rive Community is the best place to find free, high-quality animations. Browse thousands of community-created animations and download them directly as .riv files.
Creating Your Own
Rive offers a free editor to create your own animations:
- Sign up for a free account at rive.app
- Create a new file and design your animation
- Export as
.rivfile - Load into RWPP
Tips for Wallpaper Animations
- Keep it subtle - Busy animations can be distracting while working
- Use loops - Ensure your animation loops seamlessly
- Consider colors - Dark backgrounds work well and save battery on OLED displays
- Test performance - Complex animations with many layers may impact CPU usage
- Add RWPP controls - Use ViewModel properties with
rwppprefix for user customization
Privacy & Security
RWPP respects your privacy:
- No telemetry - We don't collect any usage data
- No network requests - The app works completely offline
- Local storage only - Your gallery and settings are stored locally on your Mac
- Sandboxed - Uses macOS security for safe file access
Support
Reporting Issues
If you encounter bugs or have feature requests, please reach out via the landing page contact form.
Known Limitations
- Intel Macs are not supported (Apple Silicon required for Rive Renderer)
- Same animation plays on all displays (per-display animations planned)
- No video file support (Rive
.rivfiles only)
Roadmap
Features under consideration for future releases:
- Different animations per display
- Animation scheduling (day/night themes)
- Keyboard shortcuts for quick control
- Animation speed control
- Battery-aware auto-pause
Recently Implemented (v1.3.2)
- ✅ Frame rate limiting (30/60/Unlimited FPS) for battery optimization
- ✅ Performance settings section in Settings panel
- ✅ Mode change crash fix (combined ↔ per-screen)
- ✅ Gallery sandbox path migration
Recently Implemented (v1.3.0)
- ✅ Dynamic ViewModel controls (color, toggle, slider, picker, number)
- ✅ Multi-artboard support with auto-orientation detection
- ✅ Combined mode for multi-monitor spanning
- ✅ Internal animation storage (files persist if originals moved)
- ✅ Control sync between artboards
- ✅ Persistent control values across restarts