Bevy PSX
A Bevy plugin that provides authentic PlayStation 1 (PSX) style rendering capabilities, including low-resolution rendering, vertex snapping, and palette quantization.
Features
- Low-Resolution Rendering: Classic PSX resolutions (320x240, 512x448, etc.)
- Vertex Snapping: Authentic PSX-style geometry jitter
- Palette Quantization: Optional retro color limitations (off by default)
- Pixelated Upscaling: Nearest-neighbor or linear filtering
- Automatic Material Conversion: Works seamlessly with standard Bevy materials
Quick Start
use *;
use *;
Configuration
Render Settings
Vertex Snapping
Snap Amount Guide:
8.0-32.0: Extreme jitter (very wobbly)64.0: Classic PSX feel (recommended)128.0+: Subtle effect
Palette Quantization (Optional)
Examples
Basic Demo
Advanced Lighting
The most comprehensive example with physical camera, multiple light types, and all PSX features.
Performance Test
Stress test with up to 1000 objects.
Common Controls
Rendering:
1-4: Switch resolutionsA: Toggle aspect ratio matchingF: Toggle pixelated filtering
PSX Effects:
V/B: Adjust vertex snappingP: Toggle palette quantizationN/M: Switch palettesT: Toggle vertex snapping
Note: Each example may have slightly different controls - check console output when running.
Common Resolutions
- PSX: 320×240 (4:3)
- PS2: 512×448 (8:7)
- SNES: 256×224 (8:7)
License
MIT License
Compatibility
- Bevy: 0.17.2
- Platforms: All Bevy-supported platforms