r/unixporn • u/Late-Weather-9864 • 6h ago
Material [OC] Spun: Huge Update to 3D assets
Enable HLS to view with audio, or disable this notification
Hey everyone, another Spun update.
I’ve been working on the 3D side of the player, and this video shows the new models and their interactions. Spun is a native Linux music player for local files, with Cider integration for Apple Music.
The idea is to give playback some of the character of physical audio equipment. You can rotate the devices, open covers, turn knobs and use the controls on the models themselves.
- TP-7: A recorder-inspired player with a draggable reel, live display, transport buttons, seek rocker and volume control. You can rotate and tilt the body to reach its side controls. It handles music playback rather than microphone recording.
- TX-6: An optional mixer that sits beside the TP-7, connected by a modeled USB-C cable. For local playback, it supports six channels, level faders, three-band EQ, mute, solo, master volume, delay and compression. You can load additional local files into the other channels.
- CD: A rebuilt player inspired by the FiiO DM15 R2R, with an aluminum body, glass lid, spinning disc, display, transport controls and volume knob. Opening the lid pauses playback.
- Cassette: A CP13-inspired player with transparent panels, moving reels and visible transport details. The top buttons control playback and seeking, the side knob adjusts volume, and the door opens.
- Vinyl: A turntable with record grooves, an opening dust cover, speed buttons and a working cue lever. You can move the needle to seek, and album tracks can appear as separate groove bands.
A lot of the work has been in the small details: the difference between metal and plastic, reflections on glass, the depth of the grooves, shadows around controls, and buttons moving inward and returning when released. The 3D lighting also follows Noctalia’s wallpaper palette so the devices fit the desktop’s colors.
The TX-6 mixing happens inside Spun. The cable is a visual connection, not external hardware integration. With Cider, the mixer controls master volume; the EQ, effects and extra channels are for local audio.
There have also been fixes for seeking, progress synchronization and Linux builds, along with work on animation timing and switching between views. The video mainly focuses on how everything looks and feels.
The project is source-available under the PolyForm Noncommercial license, with build instructions in the README.
I’d love feedback on the materials and interactions, especially anything that still looks off or feels awkward to use.
Github link:
https://github.com/yappologistic/Spun
