Integrations & Systems โ
Learn how Tidy Up! coordinates input, graphics, audio, and save persistence.
๐ฎ Unity New Input System โ
The toolkit is natively integrated with com.unity.inputsystem:
- Input actions are mapped in the player controller scripts.
- Standard bindings:
- Move: WASD / Left Stick
- Look: Mouse Delta / Right Stick
- Sprint: Left Shift / Left Stick Click
- Jump: Space / Gamepad South
- Interact / Grab / Place: E / Gamepad West
- Adjust Carry Distance: Mouse Scroll Wheel / D-Pad Up-Down
- Throw / Drop: Right Mouse Button / Q / Gamepad East
- Upgrade Shop: Tab / Gamepad Select
- Pause / Settings: Escape / Gamepad Start
๐จ Universal Render Pipeline (URP) โ
All materials and shaders are built for URP:
- MaterialPropertyBlocks: Hover outline and highlight pulses use non-allocating
MaterialPropertyBlockemission overrides (_EmissionColor), avoiding runtime material instantiation leaks. - Theme Colors: Shelf highlight quads and waypoint beacons automatically sample the
CategoryDefinition.ThemeColorproperty for visual cohesion.
๐ Audio & Procedural Sound Synthesizer โ
The audio pipeline consists of:
AudioManager: Central singleton with master, music, and SFX channels, pitch randomization, and spatial audio playback.- Procedural Audio Synthesizer: Editor utility accessible via
Tools > Nipun Interactive > Tidy Up! - Sorting & Shelving Simulator Toolkit > Utilities > Regenerate Demo Audio Clips. Generates pop, snap, pickup, thud, coin, and victory clips directly in Unity without external audio files.
๐พ Atomic Save System (SaveManager) โ
The SaveManager provides crash-resilient local persistence:
- Atomic Replacement: Writes data to a temporary file (
.tmp) before swapping to avoid corrupted half-written files. - Rolling Backups: Automatically creates a timestamped
.bakbackup before overwriting existing save files. - Tracked Progress:
- Unlocked levels and star ratings (1 to 3 stars per level).
- Best completion times per level.
- Player coin wallet balance.
- Purchased upgrade levels across all 4 upgrade paths.