Sign in

Oleg Frolov

@volorf.bsky.social
509 followers 93 following 265 posts

XR Design and Engineering. Spatial Computing. Semiotics.

PostsRepliesMedia
Oleg Frolov @volorf.bsky.social · 27/09/2026
Took several hours to assemble. I'm glad I set the motor IDs before I started.
160
Oleg Frolov @volorf.bsky.social · 26/09/2026
hope next time it will assemble its instances on its own
000
Oleg Frolov @volorf.bsky.social · 07/09/2026
Played with rotational movements and explored the relationship between circular and sinusoidal motion. The latter can be treated as a dimensional reduction: projecting 2D circular motion onto 1D. Microcontroller: ESP32 Language: C++ Device: StackChan #esp32 #stackchan #robotics #cpp
1231
Oleg Frolov @volorf.bsky.social · 27/08/2026
Randomly looking around Stackchan (ESP32, M5Stack). #esp32 #robotics #m5stack #stackchan #natureofcode #cpp #arduino
120
Oleg Frolov @volorf.bsky.social · 24/08/2026
Added ERASING and COLORING modes to the WIP VisionOS version of BoxelXR. #handtracking #realitykit #visionpro #swiftui #voxeleditor #defaultcube #boxelxr #spatialcomputing #xr
160
Oleg Frolov @volorf.bsky.social · 18/08/2026
new M5 toys (=^・ω・^=)
020
Oleg Frolov @volorf.bsky.social · 10/08/2026
Made a few base voxel creation interactions for the BoxelXR VisionOS version. #ecs #realitykit #visionos #visionpro #swiftui #voxeleditor #defaultcube #boxelxr
170
Oleg Frolov @volorf.bsky.social · 07/08/2026
🕹️ Connected M5Atom (ESP32 + IMU) to my little VisionOS game 🐍 #visionos #xr #esp32
131
Oleg Frolov @volorf.bsky.social · 03/08/2026
Made a custom controller for VisionOS. Uses IME to drive discrete directional events and BLE to connect to the device. Apple Vision Pro doesn’t have native controllers, but as an heir to a much more mature OS and ecosystem, it has everything you need to build your own!
3534
Oleg Frolov @volorf.bsky.social · 30/07/2026
Made a variant of my previous experiment. It uses 4 directions to drive BRIGHTNESS and HUE states. Tap the screen to switch between these two modes. #ble #m5atom #arduino #esp32 #prototyping #uxdesign #smarthome #interactiondesign #embeddedprogramming
250
Oleg Frolov @volorf.bsky.social · 27/07/2026
Ported the previous experiment with EPS32 and BLE bulb to M5Atom. The mode selector is IMU-driven: UP increases brightness, DOWN decreases it.
120
Oleg Frolov @volorf.bsky.social · 25/07/2026
Many of you are familiar with this situation: you found the best-looking lamp, but sadly it doesn’t have a brightness control. Fortunately, there is no problem that can not be fixed with tape and a bit of hacking.
050
Oleg Frolov @volorf.bsky.social · 20/07/2026
Made another experiment using IMU data to drive UI interactions: A bulb brightness controller. #ble #m5stick #arduino #esp32 #prototyping #uxdesign #smarthome
110
Oleg Frolov @volorf.bsky.social · 16/07/2026
Ported the Pomodoro timer I shared last time to a smaller device: M5Atom. Looks cute! I also like that the display is treated as a button. I didn’t have a battery, so I had to power it via USB and change how IMU data is processed a bit for this demo.
020
Oleg Frolov @volorf.bsky.social · 14/07/2026
Design details: in BREAK mode, the sand pixels rise, with a semantic similarity to lightness, elevation, and restoration.
010
Oleg Frolov @volorf.bsky.social · 13/07/2026
Made a lil pomodoro timer for M5StickS3. It uses IMU data to switch between different UI modes and a single button to change settings. I like the implicit modes. It follows the affordance of the physical device. #arduino #lvgl #m5sticks3 #prototyping #esp32 #microcontroller #pomodoro #uidesign #imu
251
Oleg Frolov @volorf.bsky.social · 06/07/2026
Was playing around with IMU data from the M5Stick (ESP32-based microcontroller) and LVGL to prototype a custom user input system for BoxelXR. Having (almost) direct access to hardware feels really liberating for design ideation. Liked LVGL. Looked like P5 for embedded devices.
061
Oleg Frolov @volorf.bsky.social · 05/05/2026
Extendable slider.
040
Oleg Frolov @volorf.bsky.social · 01/05/2026
Bidirectional Slider. #ui #interactiondesign #swiftui #uiprogramming #uidesign
140
Oleg Frolov @volorf.bsky.social · 29/04/2026
Added PROXIMITY algorithm to modifiers for Generista [Figma Plugin]. I liked the effect in Cinema 4D and often used it with P5.js and Processing. And now you can do this directly in Figma!
010
Oleg Frolov @volorf.bsky.social · 28/04/2026
Updated the XR controllers I use in BoxelXR. Now ALL actions and UI interactions have Sound and Haptic Feedback. Not sure if I overdid it, but it felt fun :) #spatialcomputing #voxeleditor #xr #vr #mixedreality
040
Oleg Frolov @volorf.bsky.social · 26/04/2026
Got a few new books for weekend readings. Started “Why Machines Learn” and “AI Engineering”. So far so good. Was pleasantly surprised that the math behind the ML/AI was so similar to what I use when I work on spatial interactions and shaders.
250
Oleg Frolov @volorf.bsky.social · 20/04/2026
Asked Claude to generate a bunch of Minecraft characters for my little voxel editor, BoxelXR. It looked at the existing handmade models and followed their example. The result is fine. It’s much better than the generation test I made last year.
120
Oleg Frolov @volorf.bsky.social · 19/04/2026
A homeostatic version.
010
Reposted by Oleg Frolov
pip @pipturner.co.uk · 18/04/2026
something i've been playing with over the last couple of weekends: a circle slider. similar to a dial, this allows you to turn circular motion into input, by dragging off of a ui element. #uxsky #designsky
2141
Oleg Frolov @volorf.bsky.social · 16/04/2026
UI experiment with a slider inspired by lever mechanics. Built in SwiftUI.
272
Oleg Frolov @volorf.bsky.social · 09/04/2026
Made a few quality-of-life updates for Generista: 1️⃣ Improved randomization algorithms; 2️⃣ Fixed a few bugs in input validation; 3️⃣ Added cross-session UI state sharing (the plugin remembers your settings); 4️⃣ Added a help icon to explain what each modifier does. Happy Designing!
110
Oleg Frolov @volorf.bsky.social · 03/04/2026
Another experiment with a slider UI leveraging a lever. Like the previous one, pulling down increases value, while pulling up decreases it. It follows physics-based expectations: the slider indicator behaves like a liquid. #uidesign #ui #interactiondesign #slider #progress #microinteractions
131
Oleg Frolov @volorf.bsky.social · 01/04/2026
ui experiment: pull to lever.
181
Oleg Frolov @volorf.bsky.social · 30/03/2026
Over the weekend, I was refactoring some of my old projects with Claude, and accidentally added several new features to Sparkliner: ✅ Vertical Bar Graph; ✅ Donut/Pie Graph; ✅ Preserving users’ UI changes across sessions. #figmaplugin #datavisualisation #productdesign #graphs
120
Oleg Frolov @volorf.bsky.social · 27/03/2026
This is my original design of the sharing screen for Spatial Snake. Looks like a portal. I love their multi-dimensional contrast when a 2D plane reveals hidden 3D space (the absurdity of portals is fascinating).
280
Oleg Frolov @volorf.bsky.social · 26/03/2026
Made a preloading animation for Spatial Snake. It’s one of the cases when an eye-catching animation can mask a few seconds of processing delay, making the experience feel more seamless than it actually is. #spatialcomputing #spatialdesign #mixedreality #xrdevelopment #3d
140
Oleg Frolov @volorf.bsky.social · 24/03/2026
Discovered that you can display a mesh's edge length in the editor. 3D UI Design 🤝 Blender.
080
Oleg Frolov @volorf.bsky.social · 23/03/2026
🕹️ Finished my little game, Spatial Snake. It’s available on the App Store. Feel free to try it! And don’t forget to share your score with Haiku, written by on-device AI (FoundationModels)! #swiftui #realitykit #visionos #visionpro #spatialcomputing #mixedreality #foundationmodels #xr
3131
Oleg Frolov @volorf.bsky.social · 20/03/2026
Spatial Snake logo exploration: 🏀 VS 📦
040
Oleg Frolov @volorf.bsky.social · 19/03/2026
Tried a sphere as a base shape for the Spatial Snake. Looks interesting, but it feels like it decreases spatial awareness a bit. Plus, when you use cubes, you have a directional affordance for in which direction you can poke the shape. Spheres lack this. #swiftui #realitykit #visionos #visionpro
240
Oleg Frolov @volorf.bsky.social · 17/03/2026
The source code, if you were curious :) github.com/Volorf/Reali...
071
Oleg Frolov @volorf.bsky.social · 16/03/2026
Tested `GroundingShadowComponent` and was surprised that the preview scene in XCode is actually 3D. I thought it was a simple cube with a texture, because it was real-time and fast. That's Apple for you.
040
Oleg Frolov @volorf.bsky.social · 16/03/2026
Put my recent Homeostatic UI experiments into an app. Feel free to try it via TestFlight -- testflight.apple.com/join/MHJd1kT3 ⚒️ Tools: XCode + SwiftUI #interactiondesign #swiftui #uidesign #uiprogramming
021
Oleg Frolov @volorf.bsky.social · 04/03/2026
Made a share score screen for the ARSnake game I posted last time. The cubes’ composition is a 2D projection of your snake's final state. There is a haiku to celebrate the challenge you have taken. The haiku is generated by Apple’s FoundationModels (on-device!). #swiftui #realitykit #visionos
050
Oleg Frolov @volorf.bsky.social · 02/03/2026
Added a menu and sounds to my lil AR game. It’s really great that audio spatialization is coming by default in VisionOS. It helps significantly improve spatial awareness of the experience. #swiftui #realitykit #visionos #visionpro #spatialcomputing
2131
Oleg Frolov @volorf.bsky.social · 25/02/2026
Made a lil attraction physics experiment using RealityKit. Runs on Apple Vision Pro. #spatialcomputing #realitykit #visionos
1103
Oleg Frolov @volorf.bsky.social · 18/02/2026
Played with the 3 Newton's motion laws in RealityKit. ECS is fun! #spatialcomputing #xr #realitykit #visionos #ecs
080
Oleg Frolov @volorf.bsky.social · 16/02/2026
Tried 1m^3 voxels. The size is not particularly useful in AR/VR for close-range interactions. It seriously decreases spatial awareness, and it's quite tiring to move around. Mentally, the appropriate size was the one where the offset is reachable in a single step. Which is 0.5m for me.
150
Oleg Frolov @volorf.bsky.social · 16/02/2026
Tried to use Minecraft-sized voxels in my previous RealityKit experiment. It won’t be practical for indoor use, but I can see some use cases for this size if you're designing in the field. #spatialcomputing #visionos #realitykit #spatialdesign
1120
Oleg Frolov @volorf.bsky.social · 13/02/2026
Tried small voxels. 👍 Felt comfortable, compact. You don't need to move your head too much. 👎 Tap accuracy decreased with the target size, obviously. 🔊 Added a touch sound. Love how audio is spatialized by default in VisionOS, no need for plugins or extra setup.
041
Oleg Frolov @volorf.bsky.social · 11/02/2026
Prototyped a little VisionOS game based on the previous RealityKit experiment. I plan to juice it (or lose it) and release it on the App Store. Stay tuned! #swiftui #realitykit #visionpro #spatialcomputing
1194
Oleg Frolov @volorf.bsky.social · 06/02/2026
Added an emission shader to my last prototype. Looks nice too. And useful, if you're hacking around late at night! Love how gracefully VisionOS handles body and object occlusion. #spatialcomputing #visionos #swiftui #realitykit #spatialdesign
0110
Oleg Frolov @volorf.bsky.social · 02/02/2026
Made another prototype to explore how you can create a voxel with hand-tracking. When you push the main voxel, it generates “wireframe” voxels along its path. Tools: XCode + RealityKit + SwiftUI Device: Apple Vision Pro #spatialcomputing #visionos #realitykit #swiftui #prototyping
5444
Oleg Frolov @volorf.bsky.social · 31/01/2026
Thought to try the Glass UI in AR/VR. During a quick test, it became obvious that it wouldn't work well. Which is ironic, since it might be seen as something inspired by spatial UI.
190